Merge commit 'gcl/next' into next
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / ata / Kconfig
1 #
2 # SATA/PATA driver configuration
3 #
4
5 menuconfig ATA
6 tristate "Serial ATA (prod) and Parallel ATA (experimental) drivers"
7 depends on HAS_IOMEM
8 depends on BLOCK
9 depends on !(M32R || M68K) || BROKEN
10 select SCSI
11 ---help---
12 If you want to use a ATA hard disk, ATA tape drive, ATA CD-ROM or
13 any other ATA device under Linux, say Y and make sure that you know
14 the name of your ATA host adapter (the card inside your computer
15 that "speaks" the ATA protocol, also called ATA controller),
16 because you will be asked for it.
17
18 NOTE: ATA enables basic SCSI support; *however*,
19 'SCSI disk support', 'SCSI tape support', or
20 'SCSI CDROM support' may also be needed,
21 depending on your hardware configuration.
22
23 if ATA
24
25 config ATA_NONSTANDARD
26 bool
27 default n
28
29 config ATA_VERBOSE_ERROR
30 bool "Verbose ATA error reporting"
31 default y
32 help
33 This option adds parsing of ATA command descriptions and error bits
34 in libata kernel output, making it easier to interpret.
35 This option will enlarge the kernel by approx. 6KB. Disable it only
36 if kernel size is more important than ease of debugging.
37
38 If unsure, say Y.
39
40 config ATA_ACPI
41 bool "ATA ACPI Support"
42 depends on ACPI && PCI
43 select ACPI_DOCK
44 default y
45 help
46 This option adds support for ATA-related ACPI objects.
47 These ACPI objects add the ability to retrieve taskfiles
48 from the ACPI BIOS and write them to the disk controller.
49 These objects may be related to performance, security,
50 power management, or other areas.
51 You can disable this at kernel boot time by using the
52 option libata.noacpi=1
53
54 config SATA_PMP
55 bool "SATA Port Multiplier support"
56 default y
57 help
58 This option adds support for SATA Port Multipliers
59 (the SATA version of an ethernet hub, or SAS expander).
60
61 config SATA_AHCI
62 tristate "AHCI SATA support"
63 depends on PCI
64 help
65 This option enables support for AHCI Serial ATA.
66
67 If unsure, say N.
68
69 config SATA_SIL24
70 tristate "Silicon Image 3124/3132 SATA support"
71 depends on PCI
72 help
73 This option enables support for Silicon Image 3124/3132 Serial ATA.
74
75 If unsure, say N.
76
77 config SATA_FSL
78 tristate "Freescale 3.0Gbps SATA support"
79 depends on FSL_SOC
80 help
81 This option enables support for Freescale 3.0Gbps SATA controller.
82 It can be found on MPC837x and MPC8315.
83
84 If unsure, say N.
85
86 config ATA_SFF
87 bool "ATA SFF support"
88 default y
89 help
90 This option adds support for ATA controllers with SFF
91 compliant or similar programming interface.
92
93 SFF is the legacy IDE interface that has been around since
94 the dawn of time. Almost all PATA controllers have an
95 SFF interface. Many SATA controllers have an SFF interface
96 when configured into a legacy compatibility mode.
97
98 For users with exclusively modern controllers like AHCI,
99 Silicon Image 3124, or Marvell 6440, you may choose to
100 disable this unneeded SFF support.
101
102 If unsure, say Y.
103
104 if ATA_SFF
105
106 config SATA_SVW
107 tristate "ServerWorks Frodo / Apple K2 SATA support"
108 depends on PCI
109 help
110 This option enables support for Broadcom/Serverworks/Apple K2
111 SATA support.
112
113 If unsure, say N.
114
115 config ATA_PIIX
116 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
117 depends on PCI
118 help
119 This option enables support for ICH5/6/7/8 Serial ATA
120 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
121 host controllers.
122
123 If unsure, say N.
124
125 config SATA_MV
126 tristate "Marvell SATA support"
127 help
128 This option enables support for the Marvell Serial ATA family.
129 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
130 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
131
132 If unsure, say N.
133
134 config SATA_NV
135 tristate "NVIDIA SATA support"
136 depends on PCI
137 help
138 This option enables support for NVIDIA Serial ATA.
139
140 If unsure, say N.
141
142 config PDC_ADMA
143 tristate "Pacific Digital ADMA support"
144 depends on PCI
145 help
146 This option enables support for Pacific Digital ADMA controllers
147
148 If unsure, say N.
149
150 config SATA_QSTOR
151 tristate "Pacific Digital SATA QStor support"
152 depends on PCI
153 help
154 This option enables support for Pacific Digital Serial ATA QStor.
155
156 If unsure, say N.
157
158 config SATA_PROMISE
159 tristate "Promise SATA TX2/TX4 support"
160 depends on PCI
161 help
162 This option enables support for Promise Serial ATA TX2/TX4.
163
164 If unsure, say N.
165
166 config SATA_SX4
167 tristate "Promise SATA SX4 support (Experimental)"
168 depends on PCI && EXPERIMENTAL
169 help
170 This option enables support for Promise Serial ATA SX4.
171
172 If unsure, say N.
173
174 config SATA_SIL
175 tristate "Silicon Image SATA support"
176 depends on PCI
177 help
178 This option enables support for Silicon Image Serial ATA.
179
180 If unsure, say N.
181
182 config SATA_SIS
183 tristate "SiS 964/965/966/180 SATA support"
184 depends on PCI
185 select PATA_SIS
186 help
187 This option enables support for SiS Serial ATA on
188 SiS 964/965/966/180 and Parallel ATA on SiS 180.
189 The PATA support for SiS 180 requires additionally to
190 enable the PATA_SIS driver in the config.
191 If unsure, say N.
192
193 config SATA_ULI
194 tristate "ULi Electronics SATA support"
195 depends on PCI
196 help
197 This option enables support for ULi Electronics SATA.
198
199 If unsure, say N.
200
201 config SATA_VIA
202 tristate "VIA SATA support"
203 depends on PCI
204 help
205 This option enables support for VIA Serial ATA.
206
207 If unsure, say N.
208
209 config SATA_VITESSE
210 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
211 depends on PCI
212 help
213 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
214
215 If unsure, say N.
216
217 config SATA_INIC162X
218 tristate "Initio 162x SATA support"
219 depends on PCI
220 help
221 This option enables support for Initio 162x Serial ATA.
222
223 config PATA_ACPI
224 tristate "ACPI firmware driver for PATA"
225 depends on ATA_ACPI
226 help
227 This option enables an ACPI method driver which drives
228 motherboard PATA controller interfaces through the ACPI
229 firmware in the BIOS. This driver can sometimes handle
230 otherwise unsupported hardware.
231
232 config PATA_ALI
233 tristate "ALi PATA support"
234 depends on PCI
235 help
236 This option enables support for the ALi ATA interfaces
237 found on the many ALi chipsets.
238
239 If unsure, say N.
240
241 config PATA_AMD
242 tristate "AMD/NVidia PATA support"
243 depends on PCI
244 help
245 This option enables support for the AMD and NVidia PATA
246 interfaces found on the chipsets for Athlon/Athlon64.
247
248 If unsure, say N.
249
250 config PATA_ARTOP
251 tristate "ARTOP 6210/6260 PATA support"
252 depends on PCI
253 help
254 This option enables support for ARTOP PATA controllers.
255
256 If unsure, say N.
257
258 config PATA_ATP867X
259 tristate "ARTOP/Acard ATP867X PATA support"
260 depends on PCI
261 help
262 This option enables support for ARTOP/Acard ATP867X PATA
263 controllers.
264
265 If unsure, say N.
266
267 config PATA_AT32
268 tristate "Atmel AVR32 PATA support (Experimental)"
269 depends on AVR32 && PLATFORM_AT32AP && EXPERIMENTAL
270 help
271 This option enables support for the IDE devices on the
272 Atmel AT32AP platform.
273
274 If unsure, say N.
275
276 config PATA_ATIIXP
277 tristate "ATI PATA support"
278 depends on PCI
279 help
280 This option enables support for the ATI ATA interfaces
281 found on the many ATI chipsets.
282
283 If unsure, say N.
284
285 config PATA_CMD640_PCI
286 tristate "CMD640 PCI PATA support (Experimental)"
287 depends on PCI && EXPERIMENTAL
288 help
289 This option enables support for the CMD640 PCI IDE
290 interface chip. Only the primary channel is currently
291 supported.
292
293 If unsure, say N.
294
295 config PATA_CMD64X
296 tristate "CMD64x PATA support"
297 depends on PCI
298 help
299 This option enables support for the CMD64x series chips
300 except for the CMD640.
301
302 If unsure, say N.
303
304 config PATA_CS5520
305 tristate "CS5510/5520 PATA support"
306 depends on PCI
307 help
308 This option enables support for the Cyrix 5510/5520
309 companion chip used with the MediaGX/Geode processor family.
310
311 If unsure, say N.
312
313 config PATA_CS5530
314 tristate "CS5530 PATA support"
315 depends on PCI
316 help
317 This option enables support for the Cyrix/NatSemi/AMD CS5530
318 companion chip used with the MediaGX/Geode processor family.
319
320 If unsure, say N.
321
322 config PATA_CS5535
323 tristate "CS5535 PATA support (Experimental)"
324 depends on PCI && X86 && !X86_64 && EXPERIMENTAL
325 help
326 This option enables support for the NatSemi/AMD CS5535
327 companion chip used with the Geode processor family.
328
329 If unsure, say N.
330
331 config PATA_CS5536
332 tristate "CS5536 PATA support"
333 depends on PCI && X86 && !X86_64
334 help
335 This option enables support for the AMD CS5536
336 companion chip used with the Geode LX processor family.
337
338 If unsure, say N.
339
340 config PATA_CYPRESS
341 tristate "Cypress CY82C693 PATA support (Very Experimental)"
342 depends on PCI && EXPERIMENTAL
343 help
344 This option enables support for the Cypress/Contaq CY82C693
345 chipset found in some Alpha systems
346
347 If unsure, say N.
348
349 config PATA_EFAR
350 tristate "EFAR SLC90E66 support"
351 depends on PCI
352 help
353 This option enables support for the EFAR SLC90E66
354 IDE controller found on some older machines.
355
356 If unsure, say N.
357
358 config ATA_GENERIC
359 tristate "Generic ATA support"
360 depends on PCI
361 help
362 This option enables support for generic BIOS configured
363 ATA controllers via the new ATA layer
364
365 If unsure, say N.
366
367 config PATA_HPT366
368 tristate "HPT 366/368 PATA support"
369 depends on PCI
370 help
371 This option enables support for the HPT 366 and 368
372 PATA controllers via the new ATA layer.
373
374 If unsure, say N.
375
376 config PATA_HPT37X
377 tristate "HPT 370/370A/371/372/374/302 PATA support (Experimental)"
378 depends on PCI && EXPERIMENTAL
379 help
380 This option enables support for the majority of the later HPT
381 PATA controllers via the new ATA layer.
382
383 If unsure, say N.
384
385 config PATA_HPT3X2N
386 tristate "HPT 372N/302N PATA support (Experimental)"
387 depends on PCI && EXPERIMENTAL
388 help
389 This option enables support for the N variant HPT PATA
390 controllers via the new ATA layer
391
392 If unsure, say N.
393
394 config PATA_HPT3X3
395 tristate "HPT 343/363 PATA support"
396 depends on PCI
397 help
398 This option enables support for the HPT 343/363
399 PATA controllers via the new ATA layer
400
401 If unsure, say N.
402
403 config PATA_HPT3X3_DMA
404 bool "HPT 343/363 DMA support (Experimental)"
405 depends on PATA_HPT3X3
406 help
407 This option enables DMA support for the HPT343/363
408 controllers. Enable with care as there are still some
409 problems with DMA on this chipset.
410
411 config PATA_ISAPNP
412 tristate "ISA Plug and Play PATA support"
413 depends on ISAPNP
414 help
415 This option enables support for ISA plug & play ATA
416 controllers such as those found on old soundcards.
417
418 If unsure, say N.
419
420 config PATA_IT821X
421 tristate "IT8211/2 PATA support"
422 depends on PCI
423 help
424 This option enables support for the ITE 8211 and 8212
425 PATA controllers via the new ATA layer, including RAID
426 mode.
427
428 If unsure, say N.
429
430 config PATA_IT8213
431 tristate "IT8213 PATA support (Experimental)"
432 depends on PCI && EXPERIMENTAL
433 help
434 This option enables support for the ITE 821 PATA
435 controllers via the new ATA layer.
436
437 If unsure, say N.
438
439 config PATA_JMICRON
440 tristate "JMicron PATA support"
441 depends on PCI
442 help
443 Enable support for the JMicron IDE controller, via the new
444 ATA layer.
445
446 If unsure, say N.
447
448 config PATA_LEGACY
449 tristate "Legacy ISA PATA support (Experimental)"
450 depends on ISA && EXPERIMENTAL
451 help
452 This option enables support for ISA/VLB bus legacy PATA
453 ports and allows them to be accessed via the new ATA layer.
454
455 If unsure, say N.
456
457 config PATA_TRIFLEX
458 tristate "Compaq Triflex PATA support"
459 depends on PCI
460 help
461 Enable support for the Compaq 'Triflex' IDE controller as found
462 on many Compaq Pentium-Pro systems, via the new ATA layer.
463
464 If unsure, say N.
465
466 config PATA_MARVELL
467 tristate "Marvell PATA support via legacy mode"
468 depends on PCI
469 help
470 This option enables limited support for the Marvell 88SE61xx ATA
471 controllers. If you wish to use only the SATA ports then select
472 the AHCI driver alone. If you wish to the use the PATA port or
473 both SATA and PATA include this driver.
474
475 If unsure, say N.
476
477 config PATA_MPC52xx
478 tristate "Freescale MPC52xx SoC internal IDE"
479 depends on PPC_MPC52xx && PPC_BESTCOMM
480 select PPC_BESTCOMM_ATA
481 help
482 This option enables support for integrated IDE controller
483 of the Freescale MPC52xx SoC.
484
485 If unsure, say N.
486
487 config PATA_MPIIX
488 tristate "Intel PATA MPIIX support"
489 depends on PCI
490 help
491 This option enables support for MPIIX PATA support.
492
493 If unsure, say N.
494
495 config PATA_OLDPIIX
496 tristate "Intel PATA old PIIX support"
497 depends on PCI
498 help
499 This option enables support for early PIIX PATA support.
500
501 If unsure, say N.
502
503 config PATA_NETCELL
504 tristate "NETCELL Revolution RAID support"
505 depends on PCI
506 help
507 This option enables support for the Netcell Revolution RAID
508 PATA controller.
509
510 If unsure, say N.
511
512 config PATA_NINJA32
513 tristate "Ninja32/Delkin Cardbus ATA support (Experimental)"
514 depends on PCI && EXPERIMENTAL
515 help
516 This option enables support for the Ninja32, Delkin and
517 possibly other brands of Cardbus ATA adapter
518
519 If unsure, say N.
520
521 config PATA_NS87410
522 tristate "Nat Semi NS87410 PATA support"
523 depends on PCI
524 help
525 This option enables support for the National Semiconductor
526 NS87410 PCI-IDE controller.
527
528 If unsure, say N.
529
530 config PATA_NS87415
531 tristate "Nat Semi NS87415 PATA support"
532 depends on PCI
533 help
534 This option enables support for the National Semiconductor
535 NS87415 PCI-IDE controller.
536
537 If unsure, say N.
538
539 config PATA_OPTI
540 tristate "OPTI621/6215 PATA support (Very Experimental)"
541 depends on PCI && EXPERIMENTAL
542 help
543 This option enables full PIO support for the early Opti ATA
544 controllers found on some old motherboards.
545
546 If unsure, say N.
547
548 config PATA_OPTIDMA
549 tristate "OPTI FireStar PATA support (Very Experimental)"
550 depends on PCI && EXPERIMENTAL
551 help
552 This option enables DMA/PIO support for the later OPTi
553 controllers found on some old motherboards and in some
554 laptops.
555
556 If unsure, say N.
557
558 config PATA_PALMLD
559 tristate "Palm LifeDrive PATA support"
560 depends on MACH_PALMLD
561 help
562 This option enables support for Palm LifeDrive's internal ATA
563 port via the new ATA layer.
564
565 If unsure, say N.
566
567 config PATA_PCMCIA
568 tristate "PCMCIA PATA support"
569 depends on PCMCIA
570 help
571 This option enables support for PCMCIA ATA interfaces, including
572 compact flash card adapters via the new ATA layer.
573
574 If unsure, say N.
575
576 config PATA_PDC_OLD
577 tristate "Older Promise PATA controller support"
578 depends on PCI
579 help
580 This option enables support for the Promise 20246, 20262, 20263,
581 20265 and 20267 adapters.
582
583 If unsure, say N.
584
585 config PATA_QDI
586 tristate "QDI VLB PATA support"
587 depends on ISA
588 help
589 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
590
591 config PATA_RADISYS
592 tristate "RADISYS 82600 PATA support (Experimental)"
593 depends on PCI && EXPERIMENTAL
594 help
595 This option enables support for the RADISYS 82600
596 PATA controllers via the new ATA layer
597
598 If unsure, say N.
599
600 config PATA_RB532
601 tristate "RouterBoard 532 PATA CompactFlash support"
602 depends on MIKROTIK_RB532
603 help
604 This option enables support for the RouterBoard 532
605 PATA CompactFlash controller.
606
607 If unsure, say N.
608
609 config PATA_RDC
610 tristate "RDC PATA support"
611 depends on PCI
612 help
613 This option enables basic support for the later RDC PATA controllers
614 controllers via the new ATA layer. For the RDC 1010, you need to
615 enable the IT821X driver instead.
616
617 If unsure, say N.
618
619 config PATA_RZ1000
620 tristate "PC Tech RZ1000 PATA support"
621 depends on PCI
622 help
623 This option enables basic support for the PC Tech RZ1000/1
624 PATA controllers via the new ATA layer
625
626 If unsure, say N.
627
628 config PATA_SC1200
629 tristate "SC1200 PATA support"
630 depends on PCI
631 help
632 This option enables support for the NatSemi/AMD SC1200 SoC
633 companion chip used with the Geode processor family.
634
635 If unsure, say N.
636
637 config PATA_SERVERWORKS
638 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
639 depends on PCI
640 help
641 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
642 HT1000 PATA controllers, via the new ATA layer.
643
644 If unsure, say N.
645
646 config PATA_PDC2027X
647 tristate "Promise PATA 2027x support"
648 depends on PCI
649 help
650 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
651
652 If unsure, say N.
653
654 config PATA_SIL680
655 tristate "CMD / Silicon Image 680 PATA support"
656 depends on PCI
657 help
658 This option enables support for CMD / Silicon Image 680 PATA.
659
660 If unsure, say N.
661
662 config PATA_SIS
663 tristate "SiS PATA support"
664 depends on PCI
665 help
666 This option enables support for SiS PATA controllers
667
668 If unsure, say N.
669
670 config PATA_VIA
671 tristate "VIA PATA support"
672 depends on PCI
673 help
674 This option enables support for the VIA PATA interfaces
675 found on the many VIA chipsets.
676
677 If unsure, say N.
678
679 config PATA_WINBOND
680 tristate "Winbond SL82C105 PATA support"
681 depends on PCI
682 help
683 This option enables support for SL82C105 PATA devices found in the
684 Netwinder and some other systems
685
686 If unsure, say N.
687
688 config PATA_WINBOND_VLB
689 tristate "Winbond W83759A VLB PATA support (Experimental)"
690 depends on ISA && EXPERIMENTAL
691 help
692 Support for the Winbond W83759A controller on Vesa Local Bus
693 systems.
694
695 config HAVE_PATA_PLATFORM
696 bool
697 help
698 This is an internal configuration node for any machine that
699 uses pata-platform driver to enable the relevant driver in the
700 configuration structure without having to submit endless patches
701 to update the PATA_PLATFORM entry.
702
703 config PATA_PLATFORM
704 tristate "Generic platform device PATA support"
705 depends on EMBEDDED || PPC || HAVE_PATA_PLATFORM
706 help
707 This option enables support for generic directly connected ATA
708 devices commonly found on embedded systems.
709
710 If unsure, say N.
711
712 config PATA_AT91
713 tristate "PATA support for AT91SAM9260"
714 depends on ARM && ARCH_AT91
715 help
716 This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.
717
718 If unsure, say N.
719
720 config PATA_OF_PLATFORM
721 tristate "OpenFirmware platform device PATA support"
722 depends on PATA_PLATFORM && PPC_OF
723 help
724 This option enables support for generic directly connected ATA
725 devices commonly found on embedded systems with OpenFirmware
726 bindings.
727
728 If unsure, say N.
729
730 config PATA_ICSIDE
731 tristate "Acorn ICS PATA support"
732 depends on ARM && ARCH_ACORN
733 help
734 On Acorn systems, say Y here if you wish to use the ICS PATA
735 interface card. This is not required for ICS partition support.
736 If you are unsure, say N to this.
737
738 config PATA_IXP4XX_CF
739 tristate "IXP4XX Compact Flash support"
740 depends on ARCH_IXP4XX
741 help
742 This option enables support for a Compact Flash connected on
743 the ixp4xx expansion bus. This driver had been written for
744 Loft/Avila boards in mind but can work with others.
745
746 If unsure, say N.
747
748 config PATA_OCTEON_CF
749 tristate "OCTEON Boot Bus Compact Flash support"
750 depends on CPU_CAVIUM_OCTEON
751 help
752 This option enables a polled compact flash driver for use with
753 compact flash cards attached to the OCTEON boot bus.
754
755 If unsure, say N.
756
757 config PATA_SCC
758 tristate "Toshiba's Cell Reference Set IDE support"
759 depends on PCI && PPC_CELLEB
760 help
761 This option enables support for the built-in IDE controller on
762 Toshiba Cell Reference Board.
763
764 If unsure, say N.
765
766 config PATA_SCH
767 tristate "Intel SCH PATA support"
768 depends on PCI
769 help
770 This option enables support for Intel SCH PATA on the Intel
771 SCH (US15W, US15L, UL11L) series host controllers.
772
773 If unsure, say N.
774
775 config PATA_BF54X
776 tristate "Blackfin 54x ATAPI support"
777 depends on BF542 || BF548 || BF549
778 help
779 This option enables support for the built-in ATAPI controller on
780 Blackfin 54x family chips.
781
782 If unsure, say N.
783
784 config PATA_MACIO
785 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
786 depends on PPC_PMAC
787 help
788 Most IDE capable PowerMacs have IDE busses driven by a variant
789 of this controller which is part of the Apple chipset used on
790 most PowerMac models. Some models have multiple busses using
791 different chipsets, though generally, MacIO is one of them.
792
793
794 endif # ATA_SFF
795 endif # ATA