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 || 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).
85 comment "Controllers with non-SFF native interface"
88 tristate "AHCI SATA support"
91 This option enables support for AHCI Serial ATA.
95 config SATA_AHCI_PLATFORM
96 tristate "Platform AHCI SATA support"
98 This option enables support for Platform AHCI Serial ATA
104 tristate "Broadcom AHCI SATA support"
105 depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_NSP
107 This option enables support for the AHCI SATA3 controller found on
113 tristate "DaVinci DA850 AHCI SATA support"
114 depends on ARCH_DAVINCI_DA850
116 This option enables support for the DaVinci DA850 SoC's
122 tristate "ST AHCI SATA support"
125 This option enables support for ST AHCI SATA controller.
130 tristate "Freescale i.MX AHCI SATA support"
131 depends on MFD_SYSCON && (ARCH_MXC || COMPILE_TEST)
132 depends on (HWMON && (THERMAL || !THERMAL_OF)) || !HWMON
134 This option enables support for the Freescale i.MX SoC's
140 tristate "CEVA AHCI SATA support"
143 This option enables support for the CEVA AHCI SATA.
144 It can be found on the Xilinx Zynq UltraScale+ MPSoC.
149 tristate "Marvell EBU AHCI SATA support"
150 depends on ARCH_MVEBU
152 This option enables support for the Marvebu EBU SoC's
158 tristate "Cavium Octeon Soc Serial ATA"
159 depends on SATA_AHCI_PLATFORM && CAVIUM_OCTEON_SOC
162 This option enables support for Cavium Octeon SoC Serial ATA.
167 tristate "Allwinner sunxi AHCI SATA support"
168 depends on ARCH_SUNXI
170 This option enables support for the Allwinner sunxi SoC's
176 tristate "NVIDIA Tegra124 AHCI SATA support"
177 depends on ARCH_TEGRA
179 This option enables support for the NVIDIA Tegra124 SoC's
185 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
188 This option enables support for APM X-Gene SoC SATA host controller.
191 tristate "Freescale QorIQ AHCI SATA support"
194 This option enables support for the Freescale QorIQ AHCI SoC's
200 tristate "Freescale 3.0Gbps SATA support"
203 This option enables support for Freescale 3.0Gbps SATA controller.
204 It can be found on MPC837x and MPC8315.
208 config SATA_AHCI_SEATTLE
209 tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support"
210 depends on ARCH_SEATTLE
212 This option enables support for AMD Seattle SATA host controller.
217 tristate "Initio 162x SATA support (Very Experimental)"
220 This option enables support for Initio 162x Serial ATA.
222 config SATA_ACARD_AHCI
223 tristate "ACard AHCI variant (ATP 8620)"
226 This option enables support for Acard.
231 tristate "Silicon Image 3124/3132 SATA support"
234 This option enables support for Silicon Image 3124/3132 Serial ATA.
241 bool "ATA SFF support (for legacy IDE and PATA)"
244 This option adds support for ATA controllers with SFF
245 compliant or similar programming interface.
247 SFF is the legacy IDE interface that has been around since
248 the dawn of time. Almost all PATA controllers have an
249 SFF interface. Many SATA controllers have an SFF interface
250 when configured into a legacy compatibility mode.
252 For users with exclusively modern controllers like AHCI,
253 Silicon Image 3124, or Marvell 6440, you may choose to
254 disable this unneeded SFF support.
260 comment "SFF controllers with custom DMA interface"
263 tristate "Pacific Digital ADMA support"
266 This option enables support for Pacific Digital ADMA controllers
270 config PATA_OCTEON_CF
271 tristate "OCTEON Boot Bus Compact Flash support"
272 depends on CAVIUM_OCTEON_SOC
274 This option enables a polled compact flash driver for use with
275 compact flash cards attached to the OCTEON boot bus.
280 tristate "Pacific Digital SATA QStor support"
283 This option enables support for Pacific Digital Serial ATA QStor.
288 tristate "Promise SATA SX4 support (Experimental)"
291 This option enables support for Promise Serial ATA SX4.
296 bool "ATA BMDMA support"
300 This option adds support for SFF ATA controllers with BMDMA
301 capability. BMDMA stands for bus-master DMA and is the
302 de facto DMA interface for SFF controllers.
308 comment "SATA SFF controllers with BMDMA"
311 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
314 This option enables support for ICH5/6/7/8 Serial ATA
315 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
321 tristate "DesignWare Cores SATA support"
322 depends on DMADEVICES
325 This option enables support for the on-chip SATA controller of the
326 AppliedMicro processor 460EX.
330 config SATA_DWC_OLD_DMA
331 bool "Support old device trees"
336 This option enables support for old device trees without the
339 config SATA_DWC_DEBUG
340 bool "Debugging driver version"
343 This option enables debugging output in the driver.
345 config SATA_DWC_VDEBUG
346 bool "Verbose debug output"
347 depends on SATA_DWC_DEBUG
349 This option enables the taskfile dumping and NCQ debugging.
352 tristate "Calxeda Highbank SATA support"
354 depends on ARCH_HIGHBANK || COMPILE_TEST
356 This option enables support for the Calxeda Highbank SoC's
362 tristate "Marvell SATA support"
364 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
365 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
368 This option enables support for the Marvell Serial ATA family.
369 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
370 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
375 tristate "NVIDIA SATA support"
378 This option enables support for NVIDIA Serial ATA.
383 tristate "Promise SATA TX2/TX4 support"
386 This option enables support for Promise Serial ATA TX2/TX4.
391 tristate "Renesas R-Car SATA support"
392 depends on ARCH_RENESAS || COMPILE_TEST
394 This option enables support for Renesas R-Car Serial ATA.
399 tristate "Silicon Image SATA support"
402 This option enables support for Silicon Image Serial ATA.
407 tristate "SiS 964/965/966/180 SATA support"
411 This option enables support for SiS Serial ATA on
412 SiS 964/965/966/180 and Parallel ATA on SiS 180.
413 The PATA support for SiS 180 requires additionally to
414 enable the PATA_SIS driver in the config.
418 tristate "ServerWorks Frodo / Apple K2 SATA support"
421 This option enables support for Broadcom/Serverworks/Apple K2
427 tristate "ULi Electronics SATA support"
430 This option enables support for ULi Electronics SATA.
435 tristate "VIA SATA support"
438 This option enables support for VIA Serial ATA.
443 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
446 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
450 comment "PATA SFF controllers with BMDMA"
453 tristate "ALi PATA support"
456 This option enables support for the ALi ATA interfaces
457 found on the many ALi chipsets.
462 tristate "AMD/NVidia PATA support"
465 This option enables support for the AMD and NVidia PATA
466 interfaces found on the chipsets for Athlon/Athlon64.
470 config PATA_ARASAN_CF
471 tristate "ARASAN CompactFlash PATA Controller Support"
472 depends on ARCH_SPEAR13XX || COMPILE_TEST
473 depends on DMADEVICES
476 Say Y here to support the ARASAN CompactFlash PATA controller
479 tristate "ARTOP 6210/6260 PATA support"
482 This option enables support for ARTOP PATA controllers.
487 tristate "ATI PATA support"
490 This option enables support for the ATI ATA interfaces
491 found on the many ATI chipsets.
496 tristate "ARTOP/Acard ATP867X PATA support"
499 This option enables support for ARTOP/Acard ATP867X PATA
505 tristate "Blackfin 54x ATAPI support"
506 depends on BF542 || BF548 || BF549
508 This option enables support for the built-in ATAPI controller on
509 Blackfin 54x family chips.
514 tristate "CMD64x PATA support"
517 This option enables support for the CMD64x series chips
518 except for the CMD640.
523 tristate "CS5510/5520 PATA support"
524 depends on PCI && (X86_32 || COMPILE_TEST)
526 This option enables support for the Cyrix 5510/5520
527 companion chip used with the MediaGX/Geode processor family.
532 tristate "CS5530 PATA support"
533 depends on PCI && (X86_32 || COMPILE_TEST)
535 This option enables support for the Cyrix/NatSemi/AMD CS5530
536 companion chip used with the MediaGX/Geode processor family.
541 tristate "CS5535 PATA support (Experimental)"
542 depends on PCI && X86_32
544 This option enables support for the NatSemi/AMD CS5535
545 companion chip used with the Geode processor family.
550 tristate "CS5536 PATA support"
551 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
553 This option enables support for the AMD CS5536
554 companion chip used with the Geode LX processor family.
559 tristate "Cypress CY82C693 PATA support (Very Experimental)"
562 This option enables support for the Cypress/Contaq CY82C693
563 chipset found in some Alpha systems
568 tristate "EFAR SLC90E66 support"
571 This option enables support for the EFAR SLC90E66
572 IDE controller found on some older machines.
577 tristate "Cirrus Logic EP93xx PATA support"
578 depends on ARCH_EP93XX
580 This option enables support for the PATA controller in
581 the Cirrus Logic EP9312 and EP9315 ARM CPU.
586 tristate "HPT 366/368 PATA support"
589 This option enables support for the HPT 366 and 368
590 PATA controllers via the new ATA layer.
595 tristate "HPT 370/370A/371/372/374/302 PATA support"
598 This option enables support for the majority of the later HPT
599 PATA controllers via the new ATA layer.
604 tristate "HPT 371N/372N/302N PATA support"
607 This option enables support for the N variant HPT PATA
608 controllers via the new ATA layer.
613 tristate "HPT 343/363 PATA support"
616 This option enables support for the HPT 343/363
617 PATA controllers via the new ATA layer
621 config PATA_HPT3X3_DMA
622 bool "HPT 343/363 DMA support"
623 depends on PATA_HPT3X3
625 This option enables DMA support for the HPT343/363
626 controllers. Enable with care as there are still some
627 problems with DMA on this chipset.
630 tristate "Acorn ICS PATA support"
631 depends on ARM && ARCH_ACORN
633 On Acorn systems, say Y here if you wish to use the ICS PATA
634 interface card. This is not required for ICS partition support.
635 If you are unsure, say N to this.
638 tristate "PATA support for Freescale iMX"
641 This option enables support for the PATA host available on Freescale
647 tristate "IT8213 PATA support (Experimental)"
650 This option enables support for the ITE 821 PATA
651 controllers via the new ATA layer.
656 tristate "IT8211/2 PATA support"
659 This option enables support for the ITE 8211 and 8212
660 PATA controllers via the new ATA layer, including RAID
666 tristate "JMicron PATA support"
669 Enable support for the JMicron IDE controller, via the new
675 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
678 Most IDE capable PowerMacs have IDE busses driven by a variant
679 of this controller which is part of the Apple chipset used on
680 most PowerMac models. Some models have multiple busses using
681 different chipsets, though generally, MacIO is one of them.
684 tristate "Marvell PATA support via legacy mode"
687 This option enables limited support for the Marvell 88SE61xx ATA
688 controllers. If you wish to use only the SATA ports then select
689 the AHCI driver alone. If you wish to the use the PATA port or
690 both SATA and PATA include this driver.
695 tristate "Freescale MPC52xx SoC internal IDE"
696 depends on PPC_MPC52xx && PPC_BESTCOMM
697 select PPC_BESTCOMM_ATA
699 This option enables support for integrated IDE controller
700 of the Freescale MPC52xx SoC.
705 tristate "NETCELL Revolution RAID support"
708 This option enables support for the Netcell Revolution RAID
714 tristate "Ninja32/Delkin Cardbus ATA support"
717 This option enables support for the Ninja32, Delkin and
718 possibly other brands of Cardbus ATA adapter
723 tristate "Nat Semi NS87415 PATA support"
726 This option enables support for the National Semiconductor
727 NS87415 PCI-IDE controller.
732 tristate "Intel PATA old PIIX support"
735 This option enables support for early PIIX PATA support.
740 tristate "OPTI FireStar PATA support (Very Experimental)"
743 This option enables DMA/PIO support for the later OPTi
744 controllers found on some old motherboards and in some
750 tristate "Promise PATA 2027x support"
753 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
758 tristate "Older Promise PATA controller support"
761 This option enables support for the Promise 20246, 20262, 20263,
762 20265 and 20267 adapters.
767 tristate "RADISYS 82600 PATA support (Experimental)"
770 This option enables support for the RADISYS 82600
771 PATA controllers via the new ATA layer
776 tristate "RDC PATA support"
779 This option enables basic support for the later RDC PATA controllers
780 controllers via the new ATA layer. For the RDC 1010, you need to
781 enable the IT821X driver instead.
786 tristate "SC1200 PATA support"
787 depends on PCI && (X86_32 || COMPILE_TEST)
789 This option enables support for the NatSemi/AMD SC1200 SoC
790 companion chip used with the Geode processor family.
795 tristate "Intel SCH PATA support"
798 This option enables support for Intel SCH PATA on the Intel
799 SCH (US15W, US15L, UL11L) series host controllers.
803 config PATA_SERVERWORKS
804 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
807 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
808 HT1000 PATA controllers, via the new ATA layer.
813 tristate "CMD / Silicon Image 680 PATA support"
816 This option enables support for CMD / Silicon Image 680 PATA.
821 tristate "SiS PATA support"
824 This option enables support for SiS PATA controllers
829 tristate "Toshiba Piccolo support (Experimental)"
832 Support for the Toshiba Piccolo controllers. Currently only the
833 primary channel is supported by this driver.
838 tristate "Compaq Triflex PATA support"
841 Enable support for the Compaq 'Triflex' IDE controller as found
842 on many Compaq Pentium-Pro systems, via the new ATA layer.
847 tristate "VIA PATA support"
850 This option enables support for the VIA PATA interfaces
851 found on the many VIA chipsets.
856 tristate "PXA DMA-capable PATA support"
859 This option enables support for harddrive attached to PXA CPU's bus.
861 NOTE: This driver utilizes PXA DMA controller, in case your hardware
862 is not capable of doing MWDMA, use pata_platform instead.
867 tristate "Winbond SL82C105 PATA support"
870 This option enables support for SL82C105 PATA devices found in the
871 Netwinder and some other systems
877 comment "PIO-only SFF controllers"
880 tristate "Atmel AVR32 PATA support (Experimental)"
881 depends on AVR32 && PLATFORM_AT32AP
883 This option enables support for the IDE devices on the
884 Atmel AT32AP platform.
889 tristate "PATA support for AT91SAM9260"
890 depends on ARM && SOC_AT91SAM9
892 This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.
896 config PATA_CMD640_PCI
897 tristate "CMD640 PCI PATA support (Experimental)"
900 This option enables support for the CMD640 PCI IDE
901 interface chip. Only the primary channel is currently
907 tristate "Atari Falcon PATA support"
908 depends on M68K && ATARI
910 This option enables support for the on-board IDE
911 interface on the Atari Falcon.
916 tristate "ISA Plug and Play PATA support"
919 This option enables support for ISA plug & play ATA
920 controllers such as those found on old soundcards.
924 config PATA_IXP4XX_CF
925 tristate "IXP4XX Compact Flash support"
926 depends on ARCH_IXP4XX
928 This option enables support for a Compact Flash connected on
929 the ixp4xx expansion bus. This driver had been written for
930 Loft/Avila boards in mind but can work with others.
935 tristate "Intel PATA MPIIX support"
938 This option enables support for MPIIX PATA support.
943 tristate "Nat Semi NS87410 PATA support"
946 This option enables support for the National Semiconductor
947 NS87410 PCI-IDE controller.
952 tristate "OPTI621/6215 PATA support (Very Experimental)"
955 This option enables full PIO support for the early Opti ATA
956 controllers found on some old motherboards.
961 tristate "Palm LifeDrive PATA support"
962 depends on MACH_PALMLD
964 This option enables support for Palm LifeDrive's internal ATA
965 port via the new ATA layer.
970 tristate "PCMCIA PATA support"
973 This option enables support for PCMCIA ATA interfaces, including
974 compact flash card adapters via the new ATA layer.
979 tristate "Generic platform device PATA support"
980 depends on EXPERT || PPC || HAVE_PATA_PLATFORM
982 This option enables support for generic directly connected ATA
983 devices commonly found on embedded systems.
987 config PATA_OF_PLATFORM
988 tristate "OpenFirmware platform device PATA support"
989 depends on PATA_PLATFORM && OF
991 This option enables support for generic directly connected ATA
992 devices commonly found on embedded systems with OpenFirmware
998 tristate "QDI VLB PATA support"
1002 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
1005 tristate "RouterBoard 532 PATA CompactFlash support"
1006 depends on MIKROTIK_RB532
1008 This option enables support for the RouterBoard 532
1009 PATA CompactFlash controller.
1014 tristate "PC Tech RZ1000 PATA support"
1017 This option enables basic support for the PC Tech RZ1000/1
1018 PATA controllers via the new ATA layer
1022 config PATA_SAMSUNG_CF
1023 tristate "Samsung SoC PATA support"
1024 depends on SAMSUNG_DEV_IDE
1026 This option enables basic support for Samsung's S3C/S5P board
1027 PATA controllers via the new ATA layer
1031 config PATA_WINBOND_VLB
1032 tristate "Winbond W83759A VLB PATA support (Experimental)"
1036 Support for the Winbond W83759A controller on Vesa Local Bus
1039 comment "Generic fallback / legacy drivers"
1042 tristate "ACPI firmware driver for PATA"
1043 depends on ATA_ACPI && ATA_BMDMA
1045 This option enables an ACPI method driver which drives
1046 motherboard PATA controller interfaces through the ACPI
1047 firmware in the BIOS. This driver can sometimes handle
1048 otherwise unsupported hardware.
1051 tristate "Generic ATA support"
1052 depends on PCI && ATA_BMDMA
1054 This option enables support for generic BIOS configured
1055 ATA controllers via the new ATA layer
1060 tristate "Legacy ISA PATA support (Experimental)"
1061 depends on (ISA || PCI)
1063 This option enables support for ISA/VLB/PCI bus legacy PATA
1064 ports and allows them to be accessed via the new ATA layer.