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"
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 "Broadcom STB AHCI SATA support"
103 depends on ARCH_BRCMSTB
105 This option enables support for the AHCI SATA3 controller found on
111 tristate "DaVinci DA850 AHCI SATA support"
112 depends on ARCH_DAVINCI_DA850
114 This option enables support for the DaVinci DA850 SoC's
120 tristate "ST AHCI SATA support"
123 This option enables support for ST AHCI SATA controller.
128 tristate "Freescale i.MX AHCI SATA support"
129 depends on MFD_SYSCON && (ARCH_MXC || COMPILE_TEST)
131 This option enables support for the Freescale i.MX SoC's
137 tristate "CEVA AHCI SATA support"
140 This option enables support for the CEVA AHCI SATA.
141 It can be found on the Xilinx Zynq UltraScale+ MPSoC.
146 tristate "Marvell EBU AHCI SATA support"
147 depends on ARCH_MVEBU
149 This option enables support for the Marvebu EBU SoC's
155 tristate "Allwinner sunxi AHCI SATA support"
156 depends on ARCH_SUNXI
158 This option enables support for the Allwinner sunxi SoC's
164 tristate "NVIDIA Tegra124 AHCI SATA support"
165 depends on ARCH_TEGRA
167 This option enables support for the NVIDIA Tegra124 SoC's
173 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
176 This option enables support for APM X-Gene SoC SATA host controller.
179 tristate "Freescale 3.0Gbps SATA support"
182 This option enables support for Freescale 3.0Gbps SATA controller.
183 It can be found on MPC837x and MPC8315.
188 tristate "Initio 162x SATA support (Very Experimental)"
191 This option enables support for Initio 162x Serial ATA.
193 config SATA_ACARD_AHCI
194 tristate "ACard AHCI variant (ATP 8620)"
197 This option enables support for Acard.
202 tristate "Silicon Image 3124/3132 SATA support"
205 This option enables support for Silicon Image 3124/3132 Serial ATA.
210 bool "ATA SFF support (for legacy IDE and PATA)"
213 This option adds support for ATA controllers with SFF
214 compliant or similar programming interface.
216 SFF is the legacy IDE interface that has been around since
217 the dawn of time. Almost all PATA controllers have an
218 SFF interface. Many SATA controllers have an SFF interface
219 when configured into a legacy compatibility mode.
221 For users with exclusively modern controllers like AHCI,
222 Silicon Image 3124, or Marvell 6440, you may choose to
223 disable this unneeded SFF support.
229 comment "SFF controllers with custom DMA interface"
232 tristate "Pacific Digital ADMA support"
235 This option enables support for Pacific Digital ADMA controllers
239 config PATA_OCTEON_CF
240 tristate "OCTEON Boot Bus Compact Flash support"
241 depends on CAVIUM_OCTEON_SOC
243 This option enables a polled compact flash driver for use with
244 compact flash cards attached to the OCTEON boot bus.
249 tristate "Pacific Digital SATA QStor support"
252 This option enables support for Pacific Digital Serial ATA QStor.
257 tristate "Promise SATA SX4 support (Experimental)"
260 This option enables support for Promise Serial ATA SX4.
265 bool "ATA BMDMA support"
268 This option adds support for SFF ATA controllers with BMDMA
269 capability. BMDMA stands for bus-master DMA and is the
270 de facto DMA interface for SFF controllers.
276 comment "SATA SFF controllers with BMDMA"
279 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
282 This option enables support for ICH5/6/7/8 Serial ATA
283 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
289 tristate "DesignWare Cores SATA support"
293 This option enables support for the on-chip SATA controller of the
294 AppliedMicro processor 460EX.
298 config SATA_DWC_DEBUG
299 bool "Debugging driver version"
302 This option enables debugging output in the driver.
304 config SATA_DWC_VDEBUG
305 bool "Verbose debug output"
306 depends on SATA_DWC_DEBUG
308 This option enables the taskfile dumping and NCQ debugging.
311 tristate "Calxeda Highbank SATA support"
312 depends on ARCH_HIGHBANK || COMPILE_TEST
314 This option enables support for the Calxeda Highbank SoC's
320 tristate "Marvell SATA support"
321 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
322 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
325 This option enables support for the Marvell Serial ATA family.
326 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
327 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
332 tristate "NVIDIA SATA support"
335 This option enables support for NVIDIA Serial ATA.
340 tristate "Promise SATA TX2/TX4 support"
343 This option enables support for Promise Serial ATA TX2/TX4.
348 tristate "Renesas R-Car SATA support"
349 depends on ARCH_SHMOBILE || COMPILE_TEST
351 This option enables support for Renesas R-Car Serial ATA.
356 tristate "Silicon Image SATA support"
359 This option enables support for Silicon Image Serial ATA.
364 tristate "SiS 964/965/966/180 SATA support"
368 This option enables support for SiS Serial ATA on
369 SiS 964/965/966/180 and Parallel ATA on SiS 180.
370 The PATA support for SiS 180 requires additionally to
371 enable the PATA_SIS driver in the config.
375 tristate "ServerWorks Frodo / Apple K2 SATA support"
378 This option enables support for Broadcom/Serverworks/Apple K2
384 tristate "ULi Electronics SATA support"
387 This option enables support for ULi Electronics SATA.
392 tristate "VIA SATA support"
395 This option enables support for VIA Serial ATA.
400 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
403 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
407 comment "PATA SFF controllers with BMDMA"
410 tristate "ALi PATA support"
413 This option enables support for the ALi ATA interfaces
414 found on the many ALi chipsets.
419 tristate "AMD/NVidia PATA support"
422 This option enables support for the AMD and NVidia PATA
423 interfaces found on the chipsets for Athlon/Athlon64.
427 config PATA_ARASAN_CF
428 tristate "ARASAN CompactFlash PATA Controller Support"
429 depends on ARCH_SPEAR13XX || COMPILE_TEST
430 depends on DMADEVICES
433 Say Y here to support the ARASAN CompactFlash PATA controller
436 tristate "ARTOP 6210/6260 PATA support"
439 This option enables support for ARTOP PATA controllers.
444 tristate "ATI PATA support"
447 This option enables support for the ATI ATA interfaces
448 found on the many ATI chipsets.
453 tristate "ARTOP/Acard ATP867X PATA support"
456 This option enables support for ARTOP/Acard ATP867X PATA
462 tristate "Blackfin 54x ATAPI support"
463 depends on BF542 || BF548 || BF549
465 This option enables support for the built-in ATAPI controller on
466 Blackfin 54x family chips.
471 tristate "CMD64x PATA support"
474 This option enables support for the CMD64x series chips
475 except for the CMD640.
480 tristate "CS5510/5520 PATA support"
481 depends on PCI && (X86_32 || COMPILE_TEST)
483 This option enables support for the Cyrix 5510/5520
484 companion chip used with the MediaGX/Geode processor family.
489 tristate "CS5530 PATA support"
490 depends on PCI && (X86_32 || COMPILE_TEST)
492 This option enables support for the Cyrix/NatSemi/AMD CS5530
493 companion chip used with the MediaGX/Geode processor family.
498 tristate "CS5535 PATA support (Experimental)"
499 depends on PCI && X86_32
501 This option enables support for the NatSemi/AMD CS5535
502 companion chip used with the Geode processor family.
507 tristate "CS5536 PATA support"
508 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
510 This option enables support for the AMD CS5536
511 companion chip used with the Geode LX processor family.
516 tristate "Cypress CY82C693 PATA support (Very Experimental)"
519 This option enables support for the Cypress/Contaq CY82C693
520 chipset found in some Alpha systems
525 tristate "EFAR SLC90E66 support"
528 This option enables support for the EFAR SLC90E66
529 IDE controller found on some older machines.
534 tristate "Cirrus Logic EP93xx PATA support"
535 depends on ARCH_EP93XX
537 This option enables support for the PATA controller in
538 the Cirrus Logic EP9312 and EP9315 ARM CPU.
543 tristate "HPT 366/368 PATA support"
546 This option enables support for the HPT 366 and 368
547 PATA controllers via the new ATA layer.
552 tristate "HPT 370/370A/371/372/374/302 PATA support"
555 This option enables support for the majority of the later HPT
556 PATA controllers via the new ATA layer.
561 tristate "HPT 371N/372N/302N PATA support"
564 This option enables support for the N variant HPT PATA
565 controllers via the new ATA layer.
570 tristate "HPT 343/363 PATA support"
573 This option enables support for the HPT 343/363
574 PATA controllers via the new ATA layer
578 config PATA_HPT3X3_DMA
579 bool "HPT 343/363 DMA support"
580 depends on PATA_HPT3X3
582 This option enables DMA support for the HPT343/363
583 controllers. Enable with care as there are still some
584 problems with DMA on this chipset.
587 tristate "Acorn ICS PATA support"
588 depends on ARM && ARCH_ACORN
590 On Acorn systems, say Y here if you wish to use the ICS PATA
591 interface card. This is not required for ICS partition support.
592 If you are unsure, say N to this.
595 tristate "PATA support for Freescale iMX"
598 This option enables support for the PATA host available on Freescale
604 tristate "IT8213 PATA support (Experimental)"
607 This option enables support for the ITE 821 PATA
608 controllers via the new ATA layer.
613 tristate "IT8211/2 PATA support"
616 This option enables support for the ITE 8211 and 8212
617 PATA controllers via the new ATA layer, including RAID
623 tristate "JMicron PATA support"
626 Enable support for the JMicron IDE controller, via the new
632 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
635 Most IDE capable PowerMacs have IDE busses driven by a variant
636 of this controller which is part of the Apple chipset used on
637 most PowerMac models. Some models have multiple busses using
638 different chipsets, though generally, MacIO is one of them.
641 tristate "Marvell PATA support via legacy mode"
644 This option enables limited support for the Marvell 88SE61xx ATA
645 controllers. If you wish to use only the SATA ports then select
646 the AHCI driver alone. If you wish to the use the PATA port or
647 both SATA and PATA include this driver.
652 tristate "Freescale MPC52xx SoC internal IDE"
653 depends on PPC_MPC52xx && PPC_BESTCOMM
654 select PPC_BESTCOMM_ATA
656 This option enables support for integrated IDE controller
657 of the Freescale MPC52xx SoC.
662 tristate "NETCELL Revolution RAID support"
665 This option enables support for the Netcell Revolution RAID
671 tristate "Ninja32/Delkin Cardbus ATA support"
674 This option enables support for the Ninja32, Delkin and
675 possibly other brands of Cardbus ATA adapter
680 tristate "Nat Semi NS87415 PATA support"
683 This option enables support for the National Semiconductor
684 NS87415 PCI-IDE controller.
689 tristate "Intel PATA old PIIX support"
692 This option enables support for early PIIX PATA support.
697 tristate "OPTI FireStar PATA support (Very Experimental)"
700 This option enables DMA/PIO support for the later OPTi
701 controllers found on some old motherboards and in some
707 tristate "Promise PATA 2027x support"
710 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
715 tristate "Older Promise PATA controller support"
718 This option enables support for the Promise 20246, 20262, 20263,
719 20265 and 20267 adapters.
724 tristate "RADISYS 82600 PATA support (Experimental)"
727 This option enables support for the RADISYS 82600
728 PATA controllers via the new ATA layer
733 tristate "RDC PATA support"
736 This option enables basic support for the later RDC PATA controllers
737 controllers via the new ATA layer. For the RDC 1010, you need to
738 enable the IT821X driver instead.
743 tristate "SC1200 PATA support"
744 depends on PCI && (X86_32 || COMPILE_TEST)
746 This option enables support for the NatSemi/AMD SC1200 SoC
747 companion chip used with the Geode processor family.
752 tristate "Intel SCH PATA support"
755 This option enables support for Intel SCH PATA on the Intel
756 SCH (US15W, US15L, UL11L) series host controllers.
760 config PATA_SERVERWORKS
761 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
764 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
765 HT1000 PATA controllers, via the new ATA layer.
770 tristate "CMD / Silicon Image 680 PATA support"
773 This option enables support for CMD / Silicon Image 680 PATA.
778 tristate "SiS PATA support"
781 This option enables support for SiS PATA controllers
786 tristate "Toshiba Piccolo support (Experimental)"
789 Support for the Toshiba Piccolo controllers. Currently only the
790 primary channel is supported by this driver.
795 tristate "Compaq Triflex PATA support"
798 Enable support for the Compaq 'Triflex' IDE controller as found
799 on many Compaq Pentium-Pro systems, via the new ATA layer.
804 tristate "VIA PATA support"
807 This option enables support for the VIA PATA interfaces
808 found on the many VIA chipsets.
813 tristate "PXA DMA-capable PATA support"
816 This option enables support for harddrive attached to PXA CPU's bus.
818 NOTE: This driver utilizes PXA DMA controller, in case your hardware
819 is not capable of doing MWDMA, use pata_platform instead.
824 tristate "Winbond SL82C105 PATA support"
827 This option enables support for SL82C105 PATA devices found in the
828 Netwinder and some other systems
834 comment "PIO-only SFF controllers"
837 tristate "Atmel AVR32 PATA support (Experimental)"
838 depends on AVR32 && PLATFORM_AT32AP
840 This option enables support for the IDE devices on the
841 Atmel AT32AP platform.
846 tristate "PATA support for AT91SAM9260"
847 depends on ARM && SOC_AT91SAM9
849 This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.
853 config PATA_CMD640_PCI
854 tristate "CMD640 PCI PATA support (Experimental)"
857 This option enables support for the CMD640 PCI IDE
858 interface chip. Only the primary channel is currently
864 tristate "ISA Plug and Play PATA support"
867 This option enables support for ISA plug & play ATA
868 controllers such as those found on old soundcards.
872 config PATA_IXP4XX_CF
873 tristate "IXP4XX Compact Flash support"
874 depends on ARCH_IXP4XX
876 This option enables support for a Compact Flash connected on
877 the ixp4xx expansion bus. This driver had been written for
878 Loft/Avila boards in mind but can work with others.
883 tristate "Intel PATA MPIIX support"
886 This option enables support for MPIIX PATA support.
891 tristate "Nat Semi NS87410 PATA support"
894 This option enables support for the National Semiconductor
895 NS87410 PCI-IDE controller.
900 tristate "OPTI621/6215 PATA support (Very Experimental)"
903 This option enables full PIO support for the early Opti ATA
904 controllers found on some old motherboards.
909 tristate "Palm LifeDrive PATA support"
910 depends on MACH_PALMLD
912 This option enables support for Palm LifeDrive's internal ATA
913 port via the new ATA layer.
918 tristate "PCMCIA PATA support"
921 This option enables support for PCMCIA ATA interfaces, including
922 compact flash card adapters via the new ATA layer.
927 tristate "Generic platform device PATA support"
928 depends on EXPERT || PPC || HAVE_PATA_PLATFORM
930 This option enables support for generic directly connected ATA
931 devices commonly found on embedded systems.
935 config PATA_OF_PLATFORM
936 tristate "OpenFirmware platform device PATA support"
937 depends on PATA_PLATFORM && OF
939 This option enables support for generic directly connected ATA
940 devices commonly found on embedded systems with OpenFirmware
946 tristate "QDI VLB PATA support"
950 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
953 tristate "RouterBoard 532 PATA CompactFlash support"
954 depends on MIKROTIK_RB532
956 This option enables support for the RouterBoard 532
957 PATA CompactFlash controller.
962 tristate "PC Tech RZ1000 PATA support"
965 This option enables basic support for the PC Tech RZ1000/1
966 PATA controllers via the new ATA layer
970 config PATA_SAMSUNG_CF
971 tristate "Samsung SoC PATA support"
972 depends on SAMSUNG_DEV_IDE
974 This option enables basic support for Samsung's S3C/S5P board
975 PATA controllers via the new ATA layer
979 config PATA_WINBOND_VLB
980 tristate "Winbond W83759A VLB PATA support (Experimental)"
984 Support for the Winbond W83759A controller on Vesa Local Bus
987 comment "Generic fallback / legacy drivers"
990 tristate "ACPI firmware driver for PATA"
991 depends on ATA_ACPI && ATA_BMDMA
993 This option enables an ACPI method driver which drives
994 motherboard PATA controller interfaces through the ACPI
995 firmware in the BIOS. This driver can sometimes handle
996 otherwise unsupported hardware.
999 tristate "Generic ATA support"
1000 depends on PCI && ATA_BMDMA
1002 This option enables support for generic BIOS configured
1003 ATA controllers via the new ATA layer
1008 tristate "Legacy ISA PATA support (Experimental)"
1009 depends on (ISA || PCI)
1011 This option enables support for ISA/VLB/PCI bus legacy PATA
1012 ports and allows them to be accessed via the new ATA layer.