2 # SATA/PATA driver configuration
5 config HAVE_PATA_PLATFORM
8 This is an internal configuration node for any machine that
9 uses pata-platform driver to enable the relevant driver in the
10 configuration structure without having to submit endless patches
11 to update the PATA_PLATFORM entry.
14 tristate "Serial ATA and Parallel ATA drivers (libata)"
17 depends on !(M32R || M68K || S390) || BROKEN
21 If you want to use an ATA hard disk, ATA tape drive, ATA CD-ROM or
22 any other ATA device under Linux, say Y and make sure that you know
23 the name of your ATA host adapter (the card inside your computer
24 that "speaks" the ATA protocol, also called ATA controller),
25 because you will be asked for it.
27 NOTE: ATA enables basic SCSI support; *however*,
28 'SCSI disk support', 'SCSI tape support', or
29 'SCSI CDROM support' may also be needed,
30 depending on your hardware configuration.
34 config ATA_NONSTANDARD
38 config ATA_VERBOSE_ERROR
39 bool "Verbose ATA error reporting"
42 This option adds parsing of ATA command descriptions and error bits
43 in libata kernel output, making it easier to interpret.
44 This option will enlarge the kernel by approx. 6KB. Disable it only
45 if kernel size is more important than ease of debugging.
50 bool "ATA ACPI Support"
51 depends on ACPI && PCI
54 This option adds support for ATA-related ACPI objects.
55 These ACPI objects add the ability to retrieve taskfiles
56 from the ACPI BIOS and write them to the disk controller.
57 These objects may be related to performance, security,
58 power management, or other areas.
59 You can disable this at kernel boot time by using the
60 option libata.noacpi=1
63 bool "SATA Zero Power Optical Disc Drive (ZPODD) support"
64 depends on ATA_ACPI && PM
67 This option adds support for SATA Zero Power Optical Disc
68 Drive (ZPODD). It requires both the ODD and the platform
69 support, and if enabled, will automatically power on/off the
70 ODD when certain condition is satisfied. This does not impact
71 end user's experience of the ODD, only power is saved when
72 the ODD is not in use (i.e. no disc inside).
77 bool "SATA Port Multiplier support"
80 This option adds support for SATA Port Multipliers
81 (the SATA version of an ethernet hub, or SAS expander).
83 comment "Controllers with non-SFF native interface"
86 tristate "AHCI SATA support"
89 This option enables support for AHCI Serial ATA.
93 config SATA_AHCI_PLATFORM
94 tristate "Platform AHCI SATA support"
96 This option enables support for Platform AHCI Serial ATA
102 tristate "DaVinci DA850 AHCI SATA support"
103 depends on ARCH_DAVINCI_DA850
105 This option enables support for the DaVinci DA850 SoC's
111 tristate "ST AHCI SATA support"
114 This option enables support for ST AHCI SATA controller.
119 tristate "Freescale i.MX AHCI SATA support"
120 depends on MFD_SYSCON && (ARCH_MXC || COMPILE_TEST)
122 This option enables support for the Freescale i.MX SoC's
128 tristate "Marvell EBU AHCI SATA support"
129 depends on ARCH_MVEBU
131 This option enables support for the Marvebu EBU SoC's
137 tristate "Allwinner sunxi AHCI SATA support"
138 depends on ARCH_SUNXI
140 This option enables support for the Allwinner sunxi SoC's
146 tristate "NVIDIA Tegra124 AHCI SATA support"
147 depends on ARCH_TEGRA
149 This option enables support for the NVIDIA Tegra124 SoC's
155 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
158 This option enables support for APM X-Gene SoC SATA host controller.
161 tristate "Freescale 3.0Gbps SATA support"
164 This option enables support for Freescale 3.0Gbps SATA controller.
165 It can be found on MPC837x and MPC8315.
170 tristate "Initio 162x SATA support (Very Experimental)"
173 This option enables support for Initio 162x Serial ATA.
175 config SATA_ACARD_AHCI
176 tristate "ACard AHCI variant (ATP 8620)"
179 This option enables support for Acard.
184 tristate "Silicon Image 3124/3132 SATA support"
187 This option enables support for Silicon Image 3124/3132 Serial ATA.
192 bool "ATA SFF support (for legacy IDE and PATA)"
195 This option adds support for ATA controllers with SFF
196 compliant or similar programming interface.
198 SFF is the legacy IDE interface that has been around since
199 the dawn of time. Almost all PATA controllers have an
200 SFF interface. Many SATA controllers have an SFF interface
201 when configured into a legacy compatibility mode.
203 For users with exclusively modern controllers like AHCI,
204 Silicon Image 3124, or Marvell 6440, you may choose to
205 disable this unneeded SFF support.
211 comment "SFF controllers with custom DMA interface"
214 tristate "Pacific Digital ADMA support"
217 This option enables support for Pacific Digital ADMA controllers
221 config PATA_OCTEON_CF
222 tristate "OCTEON Boot Bus Compact Flash support"
223 depends on CAVIUM_OCTEON_SOC
225 This option enables a polled compact flash driver for use with
226 compact flash cards attached to the OCTEON boot bus.
231 tristate "Pacific Digital SATA QStor support"
234 This option enables support for Pacific Digital Serial ATA QStor.
239 tristate "Promise SATA SX4 support (Experimental)"
242 This option enables support for Promise Serial ATA SX4.
247 bool "ATA BMDMA support"
250 This option adds support for SFF ATA controllers with BMDMA
251 capability. BMDMA stands for bus-master DMA and is the
252 de facto DMA interface for SFF controllers.
258 comment "SATA SFF controllers with BMDMA"
261 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
264 This option enables support for ICH5/6/7/8 Serial ATA
265 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
271 tristate "DesignWare Cores SATA support"
274 This option enables support for the on-chip SATA controller of the
275 AppliedMicro processor 460EX.
279 config SATA_DWC_DEBUG
280 bool "Debugging driver version"
283 This option enables debugging output in the driver.
285 config SATA_DWC_VDEBUG
286 bool "Verbose debug output"
287 depends on SATA_DWC_DEBUG
289 This option enables the taskfile dumping and NCQ debugging.
292 tristate "Calxeda Highbank SATA support"
293 depends on ARCH_HIGHBANK || COMPILE_TEST
295 This option enables support for the Calxeda Highbank SoC's
301 tristate "Marvell SATA support"
302 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
303 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
306 This option enables support for the Marvell Serial ATA family.
307 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
308 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
313 tristate "NVIDIA SATA support"
316 This option enables support for NVIDIA Serial ATA.
321 tristate "Promise SATA TX2/TX4 support"
324 This option enables support for Promise Serial ATA TX2/TX4.
329 tristate "Renesas R-Car SATA support"
330 depends on ARCH_SHMOBILE || COMPILE_TEST
332 This option enables support for Renesas R-Car Serial ATA.
337 tristate "Silicon Image SATA support"
340 This option enables support for Silicon Image Serial ATA.
345 tristate "SiS 964/965/966/180 SATA support"
349 This option enables support for SiS Serial ATA on
350 SiS 964/965/966/180 and Parallel ATA on SiS 180.
351 The PATA support for SiS 180 requires additionally to
352 enable the PATA_SIS driver in the config.
356 tristate "ServerWorks Frodo / Apple K2 SATA support"
359 This option enables support for Broadcom/Serverworks/Apple K2
365 tristate "ULi Electronics SATA support"
368 This option enables support for ULi Electronics SATA.
373 tristate "VIA SATA support"
376 This option enables support for VIA Serial ATA.
381 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
384 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
388 comment "PATA SFF controllers with BMDMA"
391 tristate "ALi PATA support"
394 This option enables support for the ALi ATA interfaces
395 found on the many ALi chipsets.
400 tristate "AMD/NVidia PATA support"
403 This option enables support for the AMD and NVidia PATA
404 interfaces found on the chipsets for Athlon/Athlon64.
408 config PATA_ARASAN_CF
409 tristate "ARASAN CompactFlash PATA Controller Support"
410 depends on ARCH_SPEAR13XX || COMPILE_TEST
411 depends on DMADEVICES
414 Say Y here to support the ARASAN CompactFlash PATA controller
417 tristate "ARTOP 6210/6260 PATA support"
420 This option enables support for ARTOP PATA controllers.
425 tristate "ATI PATA support"
428 This option enables support for the ATI ATA interfaces
429 found on the many ATI chipsets.
434 tristate "ARTOP/Acard ATP867X PATA support"
437 This option enables support for ARTOP/Acard ATP867X PATA
443 tristate "Blackfin 54x ATAPI support"
444 depends on BF542 || BF548 || BF549
446 This option enables support for the built-in ATAPI controller on
447 Blackfin 54x family chips.
452 tristate "CMD64x PATA support"
455 This option enables support for the CMD64x series chips
456 except for the CMD640.
461 tristate "CS5510/5520 PATA support"
462 depends on PCI && (X86_32 || COMPILE_TEST)
464 This option enables support for the Cyrix 5510/5520
465 companion chip used with the MediaGX/Geode processor family.
470 tristate "CS5530 PATA support"
471 depends on PCI && (X86_32 || COMPILE_TEST)
473 This option enables support for the Cyrix/NatSemi/AMD CS5530
474 companion chip used with the MediaGX/Geode processor family.
479 tristate "CS5535 PATA support (Experimental)"
480 depends on PCI && X86_32
482 This option enables support for the NatSemi/AMD CS5535
483 companion chip used with the Geode processor family.
488 tristate "CS5536 PATA support"
489 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
491 This option enables support for the AMD CS5536
492 companion chip used with the Geode LX processor family.
497 tristate "Cypress CY82C693 PATA support (Very Experimental)"
500 This option enables support for the Cypress/Contaq CY82C693
501 chipset found in some Alpha systems
506 tristate "EFAR SLC90E66 support"
509 This option enables support for the EFAR SLC90E66
510 IDE controller found on some older machines.
515 tristate "Cirrus Logic EP93xx PATA support"
516 depends on ARCH_EP93XX
518 This option enables support for the PATA controller in
519 the Cirrus Logic EP9312 and EP9315 ARM CPU.
524 tristate "HPT 366/368 PATA support"
527 This option enables support for the HPT 366 and 368
528 PATA controllers via the new ATA layer.
533 tristate "HPT 370/370A/371/372/374/302 PATA support"
536 This option enables support for the majority of the later HPT
537 PATA controllers via the new ATA layer.
542 tristate "HPT 371N/372N/302N PATA support"
545 This option enables support for the N variant HPT PATA
546 controllers via the new ATA layer.
551 tristate "HPT 343/363 PATA support"
554 This option enables support for the HPT 343/363
555 PATA controllers via the new ATA layer
559 config PATA_HPT3X3_DMA
560 bool "HPT 343/363 DMA support"
561 depends on PATA_HPT3X3
563 This option enables DMA support for the HPT343/363
564 controllers. Enable with care as there are still some
565 problems with DMA on this chipset.
568 tristate "Acorn ICS PATA support"
569 depends on ARM && ARCH_ACORN
571 On Acorn systems, say Y here if you wish to use the ICS PATA
572 interface card. This is not required for ICS partition support.
573 If you are unsure, say N to this.
576 tristate "PATA support for Freescale iMX"
579 This option enables support for the PATA host available on Freescale
585 tristate "IT8213 PATA support (Experimental)"
588 This option enables support for the ITE 821 PATA
589 controllers via the new ATA layer.
594 tristate "IT8211/2 PATA support"
597 This option enables support for the ITE 8211 and 8212
598 PATA controllers via the new ATA layer, including RAID
604 tristate "JMicron PATA support"
607 Enable support for the JMicron IDE controller, via the new
613 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
616 Most IDE capable PowerMacs have IDE busses driven by a variant
617 of this controller which is part of the Apple chipset used on
618 most PowerMac models. Some models have multiple busses using
619 different chipsets, though generally, MacIO is one of them.
622 tristate "Marvell PATA support via legacy mode"
625 This option enables limited support for the Marvell 88SE61xx ATA
626 controllers. If you wish to use only the SATA ports then select
627 the AHCI driver alone. If you wish to the use the PATA port or
628 both SATA and PATA include this driver.
633 tristate "Freescale MPC52xx SoC internal IDE"
634 depends on PPC_MPC52xx && PPC_BESTCOMM
635 select PPC_BESTCOMM_ATA
637 This option enables support for integrated IDE controller
638 of the Freescale MPC52xx SoC.
643 tristate "NETCELL Revolution RAID support"
646 This option enables support for the Netcell Revolution RAID
652 tristate "Ninja32/Delkin Cardbus ATA support"
655 This option enables support for the Ninja32, Delkin and
656 possibly other brands of Cardbus ATA adapter
661 tristate "Nat Semi NS87415 PATA support"
664 This option enables support for the National Semiconductor
665 NS87415 PCI-IDE controller.
670 tristate "Intel PATA old PIIX support"
673 This option enables support for early PIIX PATA support.
678 tristate "OPTI FireStar PATA support (Very Experimental)"
681 This option enables DMA/PIO support for the later OPTi
682 controllers found on some old motherboards and in some
688 tristate "Promise PATA 2027x support"
691 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
696 tristate "Older Promise PATA controller support"
699 This option enables support for the Promise 20246, 20262, 20263,
700 20265 and 20267 adapters.
705 tristate "RADISYS 82600 PATA support (Experimental)"
708 This option enables support for the RADISYS 82600
709 PATA controllers via the new ATA layer
714 tristate "RDC PATA support"
717 This option enables basic support for the later RDC PATA controllers
718 controllers via the new ATA layer. For the RDC 1010, you need to
719 enable the IT821X driver instead.
724 tristate "SC1200 PATA support"
725 depends on PCI && (X86_32 || COMPILE_TEST)
727 This option enables support for the NatSemi/AMD SC1200 SoC
728 companion chip used with the Geode processor family.
733 tristate "Toshiba's Cell Reference Set IDE support"
734 depends on PCI && PPC_CELLEB
736 This option enables support for the built-in IDE controller on
737 Toshiba Cell Reference Board.
742 tristate "Intel SCH PATA support"
745 This option enables support for Intel SCH PATA on the Intel
746 SCH (US15W, US15L, UL11L) series host controllers.
750 config PATA_SERVERWORKS
751 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
754 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
755 HT1000 PATA controllers, via the new ATA layer.
760 tristate "CMD / Silicon Image 680 PATA support"
763 This option enables support for CMD / Silicon Image 680 PATA.
768 tristate "SiS PATA support"
771 This option enables support for SiS PATA controllers
776 tristate "Toshiba Piccolo support (Experimental)"
779 Support for the Toshiba Piccolo controllers. Currently only the
780 primary channel is supported by this driver.
785 tristate "Compaq Triflex PATA support"
788 Enable support for the Compaq 'Triflex' IDE controller as found
789 on many Compaq Pentium-Pro systems, via the new ATA layer.
794 tristate "VIA PATA support"
797 This option enables support for the VIA PATA interfaces
798 found on the many VIA chipsets.
803 tristate "PXA DMA-capable PATA support"
806 This option enables support for harddrive attached to PXA CPU's bus.
808 NOTE: This driver utilizes PXA DMA controller, in case your hardware
809 is not capable of doing MWDMA, use pata_platform instead.
814 tristate "Winbond SL82C105 PATA support"
817 This option enables support for SL82C105 PATA devices found in the
818 Netwinder and some other systems
824 comment "PIO-only SFF controllers"
827 tristate "Atmel AVR32 PATA support (Experimental)"
828 depends on AVR32 && PLATFORM_AT32AP
830 This option enables support for the IDE devices on the
831 Atmel AT32AP platform.
836 tristate "PATA support for AT91SAM9260"
837 depends on ARM && SOC_AT91SAM9
838 depends on !ARCH_MULTIPLATFORM
840 This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.
844 config PATA_CMD640_PCI
845 tristate "CMD640 PCI PATA support (Experimental)"
848 This option enables support for the CMD640 PCI IDE
849 interface chip. Only the primary channel is currently
855 tristate "ISA Plug and Play PATA support"
858 This option enables support for ISA plug & play ATA
859 controllers such as those found on old soundcards.
863 config PATA_IXP4XX_CF
864 tristate "IXP4XX Compact Flash support"
865 depends on ARCH_IXP4XX
867 This option enables support for a Compact Flash connected on
868 the ixp4xx expansion bus. This driver had been written for
869 Loft/Avila boards in mind but can work with others.
874 tristate "Intel PATA MPIIX support"
877 This option enables support for MPIIX PATA support.
882 tristate "Nat Semi NS87410 PATA support"
885 This option enables support for the National Semiconductor
886 NS87410 PCI-IDE controller.
891 tristate "OPTI621/6215 PATA support (Very Experimental)"
894 This option enables full PIO support for the early Opti ATA
895 controllers found on some old motherboards.
900 tristate "Palm LifeDrive PATA support"
901 depends on MACH_PALMLD
903 This option enables support for Palm LifeDrive's internal ATA
904 port via the new ATA layer.
909 tristate "PCMCIA PATA support"
912 This option enables support for PCMCIA ATA interfaces, including
913 compact flash card adapters via the new ATA layer.
918 tristate "Generic platform device PATA support"
919 depends on EXPERT || PPC || HAVE_PATA_PLATFORM
921 This option enables support for generic directly connected ATA
922 devices commonly found on embedded systems.
926 config PATA_OF_PLATFORM
927 tristate "OpenFirmware platform device PATA support"
928 depends on PATA_PLATFORM && OF
930 This option enables support for generic directly connected ATA
931 devices commonly found on embedded systems with OpenFirmware
937 tristate "QDI VLB PATA support"
941 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
944 tristate "RouterBoard 532 PATA CompactFlash support"
945 depends on MIKROTIK_RB532
947 This option enables support for the RouterBoard 532
948 PATA CompactFlash controller.
953 tristate "PC Tech RZ1000 PATA support"
956 This option enables basic support for the PC Tech RZ1000/1
957 PATA controllers via the new ATA layer
961 config PATA_SAMSUNG_CF
962 tristate "Samsung SoC PATA support"
963 depends on SAMSUNG_DEV_IDE
965 This option enables basic support for Samsung's S3C/S5P board
966 PATA controllers via the new ATA layer
970 config PATA_WINBOND_VLB
971 tristate "Winbond W83759A VLB PATA support (Experimental)"
975 Support for the Winbond W83759A controller on Vesa Local Bus
978 comment "Generic fallback / legacy drivers"
981 tristate "ACPI firmware driver for PATA"
982 depends on ATA_ACPI && ATA_BMDMA
984 This option enables an ACPI method driver which drives
985 motherboard PATA controller interfaces through the ACPI
986 firmware in the BIOS. This driver can sometimes handle
987 otherwise unsupported hardware.
990 tristate "Generic ATA support"
991 depends on PCI && ATA_BMDMA
993 This option enables support for generic BIOS configured
994 ATA controllers via the new ATA layer
999 tristate "Legacy ISA PATA support (Experimental)"
1000 depends on (ISA || PCI)
1002 This option enables support for ISA/VLB/PCI bus legacy PATA
1003 ports and allows them to be accessed via the new ATA layer.