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 AHCI SATA support"
103 depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_NSP
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 "Cavium Octeon Soc Serial ATA"
156 depends on SATA_AHCI_PLATFORM && CAVIUM_OCTEON_SOC
159 This option enables support for Cavium Octeon SoC Serial ATA.
164 tristate "Allwinner sunxi AHCI SATA support"
165 depends on ARCH_SUNXI
167 This option enables support for the Allwinner sunxi SoC's
173 tristate "NVIDIA Tegra124 AHCI SATA support"
174 depends on ARCH_TEGRA
176 This option enables support for the NVIDIA Tegra124 SoC's
182 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
185 This option enables support for APM X-Gene SoC SATA host controller.
188 tristate "Freescale QorIQ AHCI SATA support"
191 This option enables support for the Freescale QorIQ AHCI SoC's
197 tristate "Freescale 3.0Gbps SATA support"
200 This option enables support for Freescale 3.0Gbps SATA controller.
201 It can be found on MPC837x and MPC8315.
205 config SATA_AHCI_SEATTLE
206 tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support"
207 depends on ARCH_SEATTLE
209 This option enables support for AMD Seattle SATA host controller.
214 tristate "Initio 162x SATA support (Very Experimental)"
217 This option enables support for Initio 162x Serial ATA.
219 config SATA_ACARD_AHCI
220 tristate "ACard AHCI variant (ATP 8620)"
223 This option enables support for Acard.
228 tristate "Silicon Image 3124/3132 SATA support"
231 This option enables support for Silicon Image 3124/3132 Serial ATA.
236 bool "ATA SFF support (for legacy IDE and PATA)"
239 This option adds support for ATA controllers with SFF
240 compliant or similar programming interface.
242 SFF is the legacy IDE interface that has been around since
243 the dawn of time. Almost all PATA controllers have an
244 SFF interface. Many SATA controllers have an SFF interface
245 when configured into a legacy compatibility mode.
247 For users with exclusively modern controllers like AHCI,
248 Silicon Image 3124, or Marvell 6440, you may choose to
249 disable this unneeded SFF support.
255 comment "SFF controllers with custom DMA interface"
258 tristate "Pacific Digital ADMA support"
261 This option enables support for Pacific Digital ADMA controllers
265 config PATA_OCTEON_CF
266 tristate "OCTEON Boot Bus Compact Flash support"
267 depends on CAVIUM_OCTEON_SOC
269 This option enables a polled compact flash driver for use with
270 compact flash cards attached to the OCTEON boot bus.
275 tristate "Pacific Digital SATA QStor support"
278 This option enables support for Pacific Digital Serial ATA QStor.
283 tristate "Promise SATA SX4 support (Experimental)"
286 This option enables support for Promise Serial ATA SX4.
291 bool "ATA BMDMA support"
295 This option adds support for SFF ATA controllers with BMDMA
296 capability. BMDMA stands for bus-master DMA and is the
297 de facto DMA interface for SFF controllers.
303 comment "SATA SFF controllers with BMDMA"
306 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
309 This option enables support for ICH5/6/7/8 Serial ATA
310 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
316 tristate "DesignWare Cores SATA support"
317 depends on DMADEVICES
320 This option enables support for the on-chip SATA controller of the
321 AppliedMicro processor 460EX.
325 config SATA_DWC_OLD_DMA
326 bool "Support old device trees"
331 This option enables support for old device trees without the
334 config SATA_DWC_DEBUG
335 bool "Debugging driver version"
338 This option enables debugging output in the driver.
340 config SATA_DWC_VDEBUG
341 bool "Verbose debug output"
342 depends on SATA_DWC_DEBUG
344 This option enables the taskfile dumping and NCQ debugging.
347 tristate "Calxeda Highbank SATA support"
349 depends on ARCH_HIGHBANK || COMPILE_TEST
351 This option enables support for the Calxeda Highbank SoC's
357 tristate "Marvell SATA support"
359 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
360 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
363 This option enables support for the Marvell Serial ATA family.
364 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
365 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
370 tristate "NVIDIA SATA support"
373 This option enables support for NVIDIA Serial ATA.
378 tristate "Promise SATA TX2/TX4 support"
381 This option enables support for Promise Serial ATA TX2/TX4.
386 tristate "Renesas R-Car SATA support"
387 depends on ARCH_RENESAS || COMPILE_TEST
389 This option enables support for Renesas R-Car Serial ATA.
394 tristate "Silicon Image SATA support"
397 This option enables support for Silicon Image Serial ATA.
402 tristate "SiS 964/965/966/180 SATA support"
406 This option enables support for SiS Serial ATA on
407 SiS 964/965/966/180 and Parallel ATA on SiS 180.
408 The PATA support for SiS 180 requires additionally to
409 enable the PATA_SIS driver in the config.
413 tristate "ServerWorks Frodo / Apple K2 SATA support"
416 This option enables support for Broadcom/Serverworks/Apple K2
422 tristate "ULi Electronics SATA support"
425 This option enables support for ULi Electronics SATA.
430 tristate "VIA SATA support"
433 This option enables support for VIA Serial ATA.
438 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
441 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
445 comment "PATA SFF controllers with BMDMA"
448 tristate "ALi PATA support"
451 This option enables support for the ALi ATA interfaces
452 found on the many ALi chipsets.
457 tristate "AMD/NVidia PATA support"
460 This option enables support for the AMD and NVidia PATA
461 interfaces found on the chipsets for Athlon/Athlon64.
465 config PATA_ARASAN_CF
466 tristate "ARASAN CompactFlash PATA Controller Support"
467 depends on ARCH_SPEAR13XX || COMPILE_TEST
468 depends on DMADEVICES
471 Say Y here to support the ARASAN CompactFlash PATA controller
474 tristate "ARTOP 6210/6260 PATA support"
477 This option enables support for ARTOP PATA controllers.
482 tristate "ATI PATA support"
485 This option enables support for the ATI ATA interfaces
486 found on the many ATI chipsets.
491 tristate "ARTOP/Acard ATP867X PATA support"
494 This option enables support for ARTOP/Acard ATP867X PATA
500 tristate "Blackfin 54x ATAPI support"
501 depends on BF542 || BF548 || BF549
503 This option enables support for the built-in ATAPI controller on
504 Blackfin 54x family chips.
509 tristate "CMD64x PATA support"
512 This option enables support for the CMD64x series chips
513 except for the CMD640.
518 tristate "CS5510/5520 PATA support"
519 depends on PCI && (X86_32 || COMPILE_TEST)
521 This option enables support for the Cyrix 5510/5520
522 companion chip used with the MediaGX/Geode processor family.
527 tristate "CS5530 PATA support"
528 depends on PCI && (X86_32 || COMPILE_TEST)
530 This option enables support for the Cyrix/NatSemi/AMD CS5530
531 companion chip used with the MediaGX/Geode processor family.
536 tristate "CS5535 PATA support (Experimental)"
537 depends on PCI && X86_32
539 This option enables support for the NatSemi/AMD CS5535
540 companion chip used with the Geode processor family.
545 tristate "CS5536 PATA support"
546 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
548 This option enables support for the AMD CS5536
549 companion chip used with the Geode LX processor family.
554 tristate "Cypress CY82C693 PATA support (Very Experimental)"
557 This option enables support for the Cypress/Contaq CY82C693
558 chipset found in some Alpha systems
563 tristate "EFAR SLC90E66 support"
566 This option enables support for the EFAR SLC90E66
567 IDE controller found on some older machines.
572 tristate "Cirrus Logic EP93xx PATA support"
573 depends on ARCH_EP93XX
575 This option enables support for the PATA controller in
576 the Cirrus Logic EP9312 and EP9315 ARM CPU.
581 tristate "HPT 366/368 PATA support"
584 This option enables support for the HPT 366 and 368
585 PATA controllers via the new ATA layer.
590 tristate "HPT 370/370A/371/372/374/302 PATA support"
593 This option enables support for the majority of the later HPT
594 PATA controllers via the new ATA layer.
599 tristate "HPT 371N/372N/302N PATA support"
602 This option enables support for the N variant HPT PATA
603 controllers via the new ATA layer.
608 tristate "HPT 343/363 PATA support"
611 This option enables support for the HPT 343/363
612 PATA controllers via the new ATA layer
616 config PATA_HPT3X3_DMA
617 bool "HPT 343/363 DMA support"
618 depends on PATA_HPT3X3
620 This option enables DMA support for the HPT343/363
621 controllers. Enable with care as there are still some
622 problems with DMA on this chipset.
625 tristate "Acorn ICS PATA support"
626 depends on ARM && ARCH_ACORN
628 On Acorn systems, say Y here if you wish to use the ICS PATA
629 interface card. This is not required for ICS partition support.
630 If you are unsure, say N to this.
633 tristate "PATA support for Freescale iMX"
636 This option enables support for the PATA host available on Freescale
642 tristate "IT8213 PATA support (Experimental)"
645 This option enables support for the ITE 821 PATA
646 controllers via the new ATA layer.
651 tristate "IT8211/2 PATA support"
654 This option enables support for the ITE 8211 and 8212
655 PATA controllers via the new ATA layer, including RAID
661 tristate "JMicron PATA support"
664 Enable support for the JMicron IDE controller, via the new
670 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
673 Most IDE capable PowerMacs have IDE busses driven by a variant
674 of this controller which is part of the Apple chipset used on
675 most PowerMac models. Some models have multiple busses using
676 different chipsets, though generally, MacIO is one of them.
679 tristate "Marvell PATA support via legacy mode"
682 This option enables limited support for the Marvell 88SE61xx ATA
683 controllers. If you wish to use only the SATA ports then select
684 the AHCI driver alone. If you wish to the use the PATA port or
685 both SATA and PATA include this driver.
690 tristate "Freescale MPC52xx SoC internal IDE"
691 depends on PPC_MPC52xx && PPC_BESTCOMM
692 select PPC_BESTCOMM_ATA
694 This option enables support for integrated IDE controller
695 of the Freescale MPC52xx SoC.
700 tristate "NETCELL Revolution RAID support"
703 This option enables support for the Netcell Revolution RAID
709 tristate "Ninja32/Delkin Cardbus ATA support"
712 This option enables support for the Ninja32, Delkin and
713 possibly other brands of Cardbus ATA adapter
718 tristate "Nat Semi NS87415 PATA support"
721 This option enables support for the National Semiconductor
722 NS87415 PCI-IDE controller.
727 tristate "Intel PATA old PIIX support"
730 This option enables support for early PIIX PATA support.
735 tristate "OPTI FireStar PATA support (Very Experimental)"
738 This option enables DMA/PIO support for the later OPTi
739 controllers found on some old motherboards and in some
745 tristate "Promise PATA 2027x support"
748 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
753 tristate "Older Promise PATA controller support"
756 This option enables support for the Promise 20246, 20262, 20263,
757 20265 and 20267 adapters.
762 tristate "RADISYS 82600 PATA support (Experimental)"
765 This option enables support for the RADISYS 82600
766 PATA controllers via the new ATA layer
771 tristate "RDC PATA support"
774 This option enables basic support for the later RDC PATA controllers
775 controllers via the new ATA layer. For the RDC 1010, you need to
776 enable the IT821X driver instead.
781 tristate "SC1200 PATA support"
782 depends on PCI && (X86_32 || COMPILE_TEST)
784 This option enables support for the NatSemi/AMD SC1200 SoC
785 companion chip used with the Geode processor family.
790 tristate "Intel SCH PATA support"
793 This option enables support for Intel SCH PATA on the Intel
794 SCH (US15W, US15L, UL11L) series host controllers.
798 config PATA_SERVERWORKS
799 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
802 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
803 HT1000 PATA controllers, via the new ATA layer.
808 tristate "CMD / Silicon Image 680 PATA support"
811 This option enables support for CMD / Silicon Image 680 PATA.
816 tristate "SiS PATA support"
819 This option enables support for SiS PATA controllers
824 tristate "Toshiba Piccolo support (Experimental)"
827 Support for the Toshiba Piccolo controllers. Currently only the
828 primary channel is supported by this driver.
833 tristate "Compaq Triflex PATA support"
836 Enable support for the Compaq 'Triflex' IDE controller as found
837 on many Compaq Pentium-Pro systems, via the new ATA layer.
842 tristate "VIA PATA support"
845 This option enables support for the VIA PATA interfaces
846 found on the many VIA chipsets.
851 tristate "PXA DMA-capable PATA support"
854 This option enables support for harddrive attached to PXA CPU's bus.
856 NOTE: This driver utilizes PXA DMA controller, in case your hardware
857 is not capable of doing MWDMA, use pata_platform instead.
862 tristate "Winbond SL82C105 PATA support"
865 This option enables support for SL82C105 PATA devices found in the
866 Netwinder and some other systems
872 comment "PIO-only SFF controllers"
875 tristate "Atmel AVR32 PATA support (Experimental)"
876 depends on AVR32 && PLATFORM_AT32AP
878 This option enables support for the IDE devices on the
879 Atmel AT32AP platform.
884 tristate "PATA support for AT91SAM9260"
885 depends on ARM && SOC_AT91SAM9
887 This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.
891 config PATA_CMD640_PCI
892 tristate "CMD640 PCI PATA support (Experimental)"
895 This option enables support for the CMD640 PCI IDE
896 interface chip. Only the primary channel is currently
902 tristate "ISA Plug and Play PATA support"
905 This option enables support for ISA plug & play ATA
906 controllers such as those found on old soundcards.
910 config PATA_IXP4XX_CF
911 tristate "IXP4XX Compact Flash support"
912 depends on ARCH_IXP4XX
914 This option enables support for a Compact Flash connected on
915 the ixp4xx expansion bus. This driver had been written for
916 Loft/Avila boards in mind but can work with others.
921 tristate "Intel PATA MPIIX support"
924 This option enables support for MPIIX PATA support.
929 tristate "Nat Semi NS87410 PATA support"
932 This option enables support for the National Semiconductor
933 NS87410 PCI-IDE controller.
938 tristate "OPTI621/6215 PATA support (Very Experimental)"
941 This option enables full PIO support for the early Opti ATA
942 controllers found on some old motherboards.
947 tristate "Palm LifeDrive PATA support"
948 depends on MACH_PALMLD
950 This option enables support for Palm LifeDrive's internal ATA
951 port via the new ATA layer.
956 tristate "PCMCIA PATA support"
959 This option enables support for PCMCIA ATA interfaces, including
960 compact flash card adapters via the new ATA layer.
965 tristate "Generic platform device PATA support"
966 depends on EXPERT || PPC || HAVE_PATA_PLATFORM
968 This option enables support for generic directly connected ATA
969 devices commonly found on embedded systems.
973 config PATA_OF_PLATFORM
974 tristate "OpenFirmware platform device PATA support"
975 depends on PATA_PLATFORM && OF
977 This option enables support for generic directly connected ATA
978 devices commonly found on embedded systems with OpenFirmware
984 tristate "QDI VLB PATA support"
988 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
991 tristate "RouterBoard 532 PATA CompactFlash support"
992 depends on MIKROTIK_RB532
994 This option enables support for the RouterBoard 532
995 PATA CompactFlash controller.
1000 tristate "PC Tech RZ1000 PATA support"
1003 This option enables basic support for the PC Tech RZ1000/1
1004 PATA controllers via the new ATA layer
1008 config PATA_SAMSUNG_CF
1009 tristate "Samsung SoC PATA support"
1010 depends on SAMSUNG_DEV_IDE
1012 This option enables basic support for Samsung's S3C/S5P board
1013 PATA controllers via the new ATA layer
1017 config PATA_WINBOND_VLB
1018 tristate "Winbond W83759A VLB PATA support (Experimental)"
1022 Support for the Winbond W83759A controller on Vesa Local Bus
1025 comment "Generic fallback / legacy drivers"
1028 tristate "ACPI firmware driver for PATA"
1029 depends on ATA_ACPI && ATA_BMDMA
1031 This option enables an ACPI method driver which drives
1032 motherboard PATA controller interfaces through the ACPI
1033 firmware in the BIOS. This driver can sometimes handle
1034 otherwise unsupported hardware.
1037 tristate "Generic ATA support"
1038 depends on PCI && ATA_BMDMA
1040 This option enables support for generic BIOS configured
1041 ATA controllers via the new ATA layer
1046 tristate "Legacy ISA PATA support (Experimental)"
1047 depends on (ISA || PCI)
1049 This option enables support for ISA/VLB/PCI bus legacy PATA
1050 ports and allows them to be accessed via the new ATA layer.