libata: make EH fail gracefully if no reset method is available
[GitHub/LineageOS/android_kernel_samsung_universal7580.git] / drivers / ata / Kconfig
CommitLineData
421b20b9
JG
1#
2# SATA/PATA driver configuration
3#
4
b196fc69
JE
5menuconfig ATA
6 tristate "Serial ATA (prod) and Parallel ATA (experimental) drivers"
e25df120 7 depends on HAS_IOMEM
bf2d401b 8 depends on BLOCK
9317fd4c 9 depends on !(M32R || M68K) || BROKEN
8abf1064 10 depends on !SUN4 || BROKEN
81ce3c4b 11 select SCSI
c6fd2807
JG
12 ---help---
13 If you want to use a ATA hard disk, ATA tape drive, ATA CD-ROM or
14 any other ATA device under Linux, say Y and make sure that you know
15 the name of your ATA host adapter (the card inside your computer
16 that "speaks" the ATA protocol, also called ATA controller),
17 because you will be asked for it.
18
abcdceb9
RD
19 NOTE: ATA enables basic SCSI support; *however*,
20 'SCSI disk support', 'SCSI tape support', or
21 'SCSI CDROM support' may also be needed,
22 depending on your hardware configuration.
23
81ce3c4b
JG
24if ATA
25
8cdf92a9
DW
26config ATA_NONSTANDARD
27 bool
28 default n
29
e92351bb 30config ATA_ACPI
c30484d7 31 bool "ATA ACPI Support"
e92351bb 32 depends on ACPI && PCI
0ac4a3c2 33 select ACPI_DOCK
e92351bb
TH
34 default y
35 help
36 This option adds support for ATA-related ACPI objects.
37 These ACPI objects add the ability to retrieve taskfiles
38 from the ACPI BIOS and write them to the disk controller.
39 These objects may be related to performance, security,
40 power management, or other areas.
41 You can disable this at kernel boot time by using the
42 option libata.noacpi=1
43
88fcd562
TH
44config SATA_PMP
45 bool "SATA Port Multiplier support"
46 default y
47 help
48 This option adds support for SATA Port Multipliers.
49
8ad92ba7 50config SATA_AHCI
c6fd2807 51 tristate "AHCI SATA support"
81ce3c4b 52 depends on PCI
c6fd2807
JG
53 help
54 This option enables support for AHCI Serial ATA.
55
56 If unsure, say N.
57
127102ae
TH
58config SATA_SIL24
59 tristate "Silicon Image 3124/3132 SATA support"
60 depends on PCI
61 help
62 This option enables support for Silicon Image 3124/3132 Serial ATA.
63
64 If unsure, say N.
65
66config SATA_FSL
67 tristate "Freescale 3.0Gbps SATA support"
68 depends on FSL_SOC
69 help
70 This option enables support for Freescale 3.0Gbps SATA controller.
71 It can be found on MPC837x and MPC8315.
72
73 If unsure, say N.
74
75config ATA_SFF
76 bool "ATA SFF support"
77 default y
78 help
79 This option adds support for ATA controllers with SFF
80 compliant or similar programming interface.
81
82if ATA_SFF
83
8ad92ba7 84config SATA_SVW
c6fd2807 85 tristate "ServerWorks Frodo / Apple K2 SATA support"
81ce3c4b 86 depends on PCI
c6fd2807
JG
87 help
88 This option enables support for Broadcom/Serverworks/Apple K2
89 SATA support.
90
91 If unsure, say N.
92
8ad92ba7 93config ATA_PIIX
2c7620d5 94 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
81ce3c4b 95 depends on PCI
c6fd2807 96 help
2bfc3611 97 This option enables support for ICH5/6/7/8 Serial ATA
2c7620d5
AC
98 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
99 host controllers.
c6fd2807
JG
100
101 If unsure, say N.
102
8ad92ba7 103config SATA_MV
c6fd2807 104 tristate "Marvell SATA support (HIGHLY EXPERIMENTAL)"
7bb3c529 105 depends on EXPERIMENTAL
c6fd2807
JG
106 help
107 This option enables support for the Marvell Serial ATA family.
108 Currently supports 88SX[56]0[48][01] chips.
109
110 If unsure, say N.
111
8ad92ba7 112config SATA_NV
c6fd2807 113 tristate "NVIDIA SATA support"
81ce3c4b 114 depends on PCI
c6fd2807
JG
115 help
116 This option enables support for NVIDIA Serial ATA.
117
118 If unsure, say N.
119
8ad92ba7 120config PDC_ADMA
c6fd2807 121 tristate "Pacific Digital ADMA support"
81ce3c4b 122 depends on PCI
c6fd2807
JG
123 help
124 This option enables support for Pacific Digital ADMA controllers
125
126 If unsure, say N.
127
8ad92ba7 128config SATA_QSTOR
c6fd2807 129 tristate "Pacific Digital SATA QStor support"
81ce3c4b 130 depends on PCI
c6fd2807
JG
131 help
132 This option enables support for Pacific Digital Serial ATA QStor.
133
134 If unsure, say N.
135
8ad92ba7 136config SATA_PROMISE
c6fd2807 137 tristate "Promise SATA TX2/TX4 support"
81ce3c4b 138 depends on PCI
c6fd2807
JG
139 help
140 This option enables support for Promise Serial ATA TX2/TX4.
141
142 If unsure, say N.
143
8ad92ba7 144config SATA_SX4
c6fd2807 145 tristate "Promise SATA SX4 support"
81ce3c4b 146 depends on PCI && EXPERIMENTAL
c6fd2807
JG
147 help
148 This option enables support for Promise Serial ATA SX4.
149
150 If unsure, say N.
151
8ad92ba7 152config SATA_SIL
c6fd2807 153 tristate "Silicon Image SATA support"
81ce3c4b 154 depends on PCI
c6fd2807
JG
155 help
156 This option enables support for Silicon Image Serial ATA.
157
158 If unsure, say N.
159
8ad92ba7 160config SATA_SIS
9b14dec5 161 tristate "SiS 964/965/966/180 SATA support"
81ce3c4b 162 depends on PCI
9b14dec5 163 select PATA_SIS
c6fd2807 164 help
a617c09f 165 This option enables support for SiS Serial ATA on
9b14dec5
AC
166 SiS 964/965/966/180 and Parallel ATA on SiS 180.
167 The PATA support for SiS 180 requires additionally to
168 enable the PATA_SIS driver in the config.
c6fd2807
JG
169 If unsure, say N.
170
8ad92ba7 171config SATA_ULI
c6fd2807 172 tristate "ULi Electronics SATA support"
81ce3c4b 173 depends on PCI
c6fd2807
JG
174 help
175 This option enables support for ULi Electronics SATA.
176
177 If unsure, say N.
178
8ad92ba7 179config SATA_VIA
c6fd2807 180 tristate "VIA SATA support"
81ce3c4b 181 depends on PCI
c6fd2807
JG
182 help
183 This option enables support for VIA Serial ATA.
184
185 If unsure, say N.
186
8ad92ba7 187config SATA_VITESSE
c6fd2807 188 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
81ce3c4b 189 depends on PCI
c6fd2807
JG
190 help
191 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
192
193 If unsure, say N.
194
1fd7a697
TH
195config SATA_INIC162X
196 tristate "Initio 162x SATA support (HIGHLY EXPERIMENTAL)"
197 depends on PCI && EXPERIMENTAL
198 help
199 This option enables support for Initio 162x Serial ATA.
200
025621f9
AC
201config PATA_ACPI
202 tristate "ACPI firmware driver for PATA"
203 depends on ATA_ACPI
204 help
205 This option enables an ACPI method driver which drives
206 motherboard PATA controller interfaces through the ACPI
207 firmware in the BIOS. This driver can sometimes handle
208 otherwise unsupported hardware.
209
669a5db4
JG
210config PATA_ALI
211 tristate "ALi PATA support (Experimental)"
212 depends on PCI && EXPERIMENTAL
213 help
214 This option enables support for the ALi ATA interfaces
215 found on the many ALi chipsets.
216
217 If unsure, say N.
218
219config PATA_AMD
942d0947 220 tristate "AMD/NVidia PATA support"
669a5db4
JG
221 depends on PCI
222 help
223 This option enables support for the AMD and NVidia PATA
224 interfaces found on the chipsets for Athlon/Athlon64.
225
226 If unsure, say N.
227
228config PATA_ARTOP
c645fd34
AC
229 tristate "ARTOP 6210/6260 PATA support"
230 depends on PCI
669a5db4
JG
231 help
232 This option enables support for ARTOP PATA controllers.
233
234 If unsure, say N.
235
7c9ef8e4
KNG
236config PATA_AT32
237 tristate "Atmel AVR32 PATA support (Experimental)"
238 depends on AVR32 && PLATFORM_AT32AP && EXPERIMENTAL
239 help
240 This option enables support for the IDE devices on the
241 Atmel AT32AP platform.
242
243 If unsure, say N.
244
669a5db4 245config PATA_ATIIXP
c645fd34
AC
246 tristate "ATI PATA support"
247 depends on PCI
669a5db4
JG
248 help
249 This option enables support for the ATI ATA interfaces
250 found on the many ATI chipsets.
251
252 If unsure, say N.
253
b2248dac
AC
254config PATA_CMD640_PCI
255 tristate "CMD640 PCI PATA support (Very Experimental)"
256 depends on PCI && EXPERIMENTAL
257 help
258 This option enables support for the CMD640 PCI IDE
259 interface chip. Only the primary channel is currently
260 supported.
261
262 If unsure, say N.
263
669a5db4 264config PATA_CMD64X
c645fd34
AC
265 tristate "CMD64x PATA support"
266 depends on PCI
669a5db4
JG
267 help
268 This option enables support for the CMD64x series chips
269 except for the CMD640.
270
271 If unsure, say N.
272
273config PATA_CS5520
274 tristate "CS5510/5520 PATA support"
275 depends on PCI
276 help
277 This option enables support for the Cyrix 5510/5520
278 companion chip used with the MediaGX/Geode processor family.
279
280 If unsure, say N.
281
282config PATA_CS5530
283 tristate "CS5530 PATA support (Experimental)"
284 depends on PCI && EXPERIMENTAL
285 help
286 This option enables support for the Cyrix/NatSemi/AMD CS5530
287 companion chip used with the MediaGX/Geode processor family.
288
289 If unsure, say N.
290
291config PATA_CS5535
292 tristate "CS5535 PATA support (Experimental)"
293 depends on PCI && X86 && !X86_64 && EXPERIMENTAL
294 help
295 This option enables support for the NatSemi/AMD CS5535
296 companion chip used with the Geode processor family.
297
298 If unsure, say N.
299
3957df61
MP
300config PATA_CS5536
301 tristate "CS5536 PATA support (Experimental)"
302 depends on PCI && X86 && !X86_64 && EXPERIMENTAL
303 help
304 This option enables support for the AMD CS5536
305 companion chip used with the Geode LX processor family.
306
307 If unsure, say N.
308
669a5db4
JG
309config PATA_CYPRESS
310 tristate "Cypress CY82C693 PATA support (Very Experimental)"
311 depends on PCI && EXPERIMENTAL
312 help
313 This option enables support for the Cypress/Contaq CY82C693
314 chipset found in some Alpha systems
315
316 If unsure, say N.
317
318config PATA_EFAR
319 tristate "EFAR SLC90E66 support"
320 depends on PCI
321 help
322 This option enables support for the EFAR SLC90E66
323 IDE controller found on some older machines.
324
325 If unsure, say N.
326
327config ATA_GENERIC
328 tristate "Generic ATA support"
329 depends on PCI
330 help
331 This option enables support for generic BIOS configured
332 ATA controllers via the new ATA layer
333
334 If unsure, say N.
335
336config PATA_HPT366
c645fd34
AC
337 tristate "HPT 366/368 PATA support"
338 depends on PCI
669a5db4
JG
339 help
340 This option enables support for the HPT 366 and 368
341 PATA controllers via the new ATA layer.
342
343 If unsure, say N.
344
345config PATA_HPT37X
942d0947 346 tristate "HPT 370/370A/371/372/374/302 PATA support (Experimental)"
669a5db4
JG
347 depends on PCI && EXPERIMENTAL
348 help
349 This option enables support for the majority of the later HPT
350 PATA controllers via the new ATA layer.
351
352 If unsure, say N.
353
354config PATA_HPT3X2N
355 tristate "HPT 372N/302N PATA support (Very Experimental)"
356 depends on PCI && EXPERIMENTAL
357 help
358 This option enables support for the N variant HPT PATA
359 controllers via the new ATA layer
360
361 If unsure, say N.
362
363config PATA_HPT3X3
66e7da4e 364 tristate "HPT 343/363 PATA support"
669a5db4
JG
365 depends on PCI
366 help
367 This option enables support for the HPT 343/363
368 PATA controllers via the new ATA layer
369
370 If unsure, say N.
371
66e7da4e
AC
372config PATA_HPT3X3_DMA
373 bool "HPT 343/363 DMA support (Experimental)"
374 depends on PATA_HPT3X3
375 help
376 This option enables DMA support for the HPT343/363
377 controllers. Enable with care as there are still some
378 problems with DMA on this chipset.
379
669a5db4 380config PATA_ISAPNP
942d0947 381 tristate "ISA Plug and Play PATA support (Experimental)"
669a5db4
JG
382 depends on EXPERIMENTAL && ISAPNP
383 help
384 This option enables support for ISA plug & play ATA
385 controllers such as those found on old soundcards.
386
387 If unsure, say N.
388
669a5db4 389config PATA_IT821X
942d0947
AC
390 tristate "IT8211/2 PATA support"
391 depends on PCI
669a5db4
JG
392 help
393 This option enables support for the ITE 8211 and 8212
394 PATA controllers via the new ATA layer, including RAID
395 mode.
396
397 If unsure, say N.
398
9b13b682
AC
399config PATA_IT8213
400 tristate "IT8213 PATA support (Experimental)"
401 depends on PCI && EXPERIMENTAL
402 help
403 This option enables support for the ITE 821 PATA
404 controllers via the new ATA layer.
405
406 If unsure, say N.
407
406176ee
JG
408config PATA_JMICRON
409 tristate "JMicron PATA support"
410 depends on PCI
411 help
412 Enable support for the JMicron IDE controller, via the new
413 ATA layer.
414
415 If unsure, say N.
416
669a5db4
JG
417config PATA_LEGACY
418 tristate "Legacy ISA PATA support (Experimental)"
4735ebed 419 depends on ISA && EXPERIMENTAL
669a5db4
JG
420 help
421 This option enables support for ISA/VLB bus legacy PATA
422 ports and allows them to be accessed via the new ATA layer.
423
424 If unsure, say N.
425
426config PATA_TRIFLEX
427 tristate "Compaq Triflex PATA support"
428 depends on PCI
429 help
430 Enable support for the Compaq 'Triflex' IDE controller as found
431 on many Compaq Pentium-Pro systems, via the new ATA layer.
432
433 If unsure, say N.
434
75742cb4
AC
435config PATA_MARVELL
436 tristate "Marvell PATA support via legacy mode"
437 depends on PCI
438 help
439 This option enables limited support for the Marvell 88SE6145 ATA
440 controller.
441
442 If unsure, say N.
443
155d2916
SM
444config PATA_MPC52xx
445 tristate "Freescale MPC52xx SoC internal IDE"
446 depends on PPC_MPC52xx
447 help
448 This option enables support for integrated IDE controller
449 of the Freescale MPC52xx SoC.
450
451 If unsure, say N.
452
669a5db4
JG
453config PATA_MPIIX
454 tristate "Intel PATA MPIIX support"
455 depends on PCI
456 help
457 This option enables support for MPIIX PATA support.
458
459 If unsure, say N.
460
461config PATA_OLDPIIX
942d0947
AC
462 tristate "Intel PATA old PIIX support"
463 depends on PCI
669a5db4 464 help
942d0947 465 This option enables support for early PIIX PATA support.
669a5db4
JG
466
467 If unsure, say N.
468
469config PATA_NETCELL
470 tristate "NETCELL Revolution RAID support"
471 depends on PCI
472 help
473 This option enables support for the Netcell Revolution RAID
474 PATA controller.
475
476 If unsure, say N.
477
51dbd490
AC
478config PATA_NINJA32
479 tristate "Ninja32/Delkin Cardbus ATA support (Experimental)"
480 depends on PCI && EXPERIMENTAL
481 help
482 This option enables support for the Ninja32, Delkin and
483 possibly other brands of Cardbus ATA adapter
484
485 If unsure, say N.
486
669a5db4
JG
487config PATA_NS87410
488 tristate "Nat Semi NS87410 PATA support (Experimental)"
489 depends on PCI && EXPERIMENTAL
490 help
491 This option enables support for the National Semiconductor
492 NS87410 PCI-IDE controller.
493
494 If unsure, say N.
495
c4b5b7b6
AC
496config PATA_NS87415
497 tristate "Nat Semi NS87415 PATA support (Experimental)"
498 depends on PCI && EXPERIMENTAL
499 help
500 This option enables support for the National Semiconductor
501 NS87415 PCI-IDE controller.
502
503 If unsure, say N.
504
669a5db4
JG
505config PATA_OPTI
506 tristate "OPTI621/6215 PATA support (Very Experimental)"
507 depends on PCI && EXPERIMENTAL
508 help
509 This option enables full PIO support for the early Opti ATA
510 controllers found on some old motherboards.
511
512 If unsure, say N.
513
514config PATA_OPTIDMA
516e72cb 515 tristate "OPTI FireStar PATA support (Very Experimental)"
669a5db4
JG
516 depends on PCI && EXPERIMENTAL
517 help
518 This option enables DMA/PIO support for the later OPTi
519 controllers found on some old motherboards and in some
3dde6ad8 520 laptops.
669a5db4
JG
521
522 If unsure, say N.
523
524config PATA_PCMCIA
525 tristate "PCMCIA PATA support"
526 depends on PCMCIA
527 help
528 This option enables support for PCMCIA ATA interfaces, including
529 compact flash card adapters via the new ATA layer.
530
531 If unsure, say N.
532
533config PATA_PDC_OLD
942d0947 534 tristate "Older Promise PATA controller support (Experimental)"
669a5db4
JG
535 depends on PCI && EXPERIMENTAL
536 help
537 This option enables support for the Promise 20246, 20262, 20263,
538 20265 and 20267 adapters.
539
540 If unsure, say N.
541
542config PATA_QDI
543 tristate "QDI VLB PATA support"
4735ebed 544 depends on ISA
669a5db4
JG
545 help
546 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
547
548config PATA_RADISYS
942d0947 549 tristate "RADISYS 82600 PATA support (Very Experimental)"
669a5db4
JG
550 depends on PCI && EXPERIMENTAL
551 help
552 This option enables support for the RADISYS 82600
553 PATA controllers via the new ATA layer
554
555 If unsure, say N.
556
3db691da
FF
557config PATA_RB500
558 tristate "RouterBoard 500 PATA CompactFlash support"
559 depends on MIKROTIK_RB500
560 help
561 This option enables support for the RouterBoard 500
562 PATA CompactFlash controller.
563
564 If unsure, say N.
565
669a5db4
JG
566config PATA_RZ1000
567 tristate "PC Tech RZ1000 PATA support"
568 depends on PCI
569 help
570 This option enables basic support for the PC Tech RZ1000/1
571 PATA controllers via the new ATA layer
572
573 If unsure, say N.
574
575config PATA_SC1200
942d0947 576 tristate "SC1200 PATA support (Very Experimental)"
669a5db4
JG
577 depends on PCI && EXPERIMENTAL
578 help
579 This option enables support for the NatSemi/AMD SC1200 SoC
580 companion chip used with the Geode processor family.
581
582 If unsure, say N.
583
584config PATA_SERVERWORKS
942d0947
AC
585 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
586 depends on PCI
669a5db4
JG
587 help
588 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
589 HT1000 PATA controllers, via the new ATA layer.
590
591 If unsure, say N.
592
593config PATA_PDC2027X
594 tristate "Promise PATA 2027x support"
595 depends on PCI
596 help
597 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
598
599 If unsure, say N.
600
601config PATA_SIL680
602 tristate "CMD / Silicon Image 680 PATA support"
603 depends on PCI
604 help
605 This option enables support for CMD / Silicon Image 680 PATA.
606
607 If unsure, say N.
608
609config PATA_SIS
610 tristate "SiS PATA support (Experimental)"
611 depends on PCI && EXPERIMENTAL
612 help
613 This option enables support for SiS PATA controllers
614
615 If unsure, say N.
616
617config PATA_VIA
618 tristate "VIA PATA support"
619 depends on PCI
620 help
621 This option enables support for the VIA PATA interfaces
622 found on the many VIA chipsets.
623
624 If unsure, say N.
625
626config PATA_WINBOND
627 tristate "Winbond SL82C105 PATA support"
628 depends on PCI
629 help
630 This option enables support for SL82C105 PATA devices found in the
631 Netwinder and some other systems
632
633 If unsure, say N.
634
7e45b0e5
AC
635config PATA_WINBOND_VLB
636 tristate "Winbond W83759A VLB PATA support (Experimental)"
637 depends on ISA && EXPERIMENTAL
638 help
639 Support for the Winbond W83759A controller on Vesa Local Bus
640 systems.
641
a20c9e82
PM
642config PATA_PLATFORM
643 tristate "Generic platform device PATA support"
61f71621 644 depends on EMBEDDED || ARCH_RPC || PPC
a20c9e82
PM
645 help
646 This option enables support for generic directly connected ATA
647 devices commonly found on embedded systems.
648
649 If unsure, say N.
61f71621
AV
650
651config PATA_OF_PLATFORM
652 tristate "OpenFirmware platform device PATA support"
653 depends on PATA_PLATFORM && PPC_OF
654 help
655 This option enables support for generic directly connected ATA
656 devices commonly found on embedded systems with OpenFirmware
657 bindings.
658
659 If unsure, say N.
a20c9e82 660
73b6a2be
RK
661config PATA_ICSIDE
662 tristate "Acorn ICS PATA support"
663 depends on ARM && ARCH_ACORN
664 help
665 On Acorn systems, say Y here if you wish to use the ICS PATA
666 interface card. This is not required for ICS partition support.
667 If you are unsure, say N to this.
668
0df0d0a0
AZ
669config PATA_IXP4XX_CF
670 tristate "IXP4XX Compact Flash support"
671 depends on ARCH_IXP4XX
672 help
673 This option enables support for a Compact Flash connected on
674 the ixp4xx expansion bus. This driver had been written for
675 Loft/Avila boards in mind but can work with others.
676
677 If unsure, say N.
678
a619f981
AI
679config PATA_SCC
680 tristate "Toshiba's Cell Reference Set IDE support"
aeb9362a 681 depends on PCI && PPC_CELLEB
a619f981
AI
682 help
683 This option enables support for the built-in IDE controller on
684 Toshiba Cell Reference Board.
685
686 If unsure, say N.
687
d830d173
SZ
688config PATA_BF54X
689 tristate "Blackfin 54x ATAPI support"
690 depends on BF542 || BF548 || BF549
691 help
692 This option enables support for the built-in ATAPI controller on
693 Blackfin 54x family chips.
694
695 If unsure, say N.
696
127102ae 697endif # ATA_SFF
b196fc69 698endif # ATA