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)"
20 If you want to use an ATA hard disk, ATA tape drive, ATA CD-ROM or
21 any other ATA device under Linux, say Y and make sure that you know
22 the name of your ATA host adapter (the card inside your computer
23 that "speaks" the ATA protocol, also called ATA controller),
24 because you will be asked for it.
26 NOTE: ATA enables basic SCSI support; *however*,
27 'SCSI disk support', 'SCSI tape support', or
28 'SCSI CDROM support' may also be needed,
29 depending on your hardware configuration.
33 config ATA_NONSTANDARD
37 config ATA_VERBOSE_ERROR
38 bool "Verbose ATA error reporting"
41 This option adds parsing of ATA command descriptions and error bits
42 in libata kernel output, making it easier to interpret.
43 This option will enlarge the kernel by approx. 6KB. Disable it only
44 if kernel size is more important than ease of debugging.
49 bool "ATA ACPI Support"
53 This option adds support for ATA-related ACPI objects.
54 These ACPI objects add the ability to retrieve taskfiles
55 from the ACPI BIOS and write them to the disk controller.
56 These objects may be related to performance, security,
57 power management, or other areas.
58 You can disable this at kernel boot time by using the
59 option libata.noacpi=1
62 bool "SATA Zero Power Optical Disc Drive (ZPODD) support"
63 depends on ATA_ACPI && PM
66 This option adds support for SATA Zero Power Optical Disc
67 Drive (ZPODD). It requires both the ODD and the platform
68 support, and if enabled, will automatically power on/off the
69 ODD when certain condition is satisfied. This does not impact
70 end user's experience of the ODD, only power is saved when
71 the ODD is not in use (i.e. no disc inside).
76 bool "SATA Port Multiplier support"
79 This option adds support for SATA Port Multipliers
80 (the SATA version of an ethernet hub, or SAS expander).
84 comment "Controllers with non-SFF native interface"
87 tristate "AHCI SATA support"
90 This option enables support for AHCI Serial ATA.
94 config SATA_AHCI_PLATFORM
95 tristate "Platform AHCI SATA support"
97 This option enables support for Platform AHCI Serial ATA
103 tristate "Broadcom AHCI SATA support"
104 depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_NSP
106 This option enables support for the AHCI SATA3 controller found on
112 tristate "DaVinci DA850 AHCI SATA support"
113 depends on ARCH_DAVINCI_DA850
115 This option enables support for the DaVinci DA850 SoC's
121 tristate "DaVinci DM816 AHCI SATA support"
122 depends on ARCH_OMAP2PLUS
124 This option enables support for the DaVinci DM816 SoC's
125 onboard AHCI SATA controller.
130 tristate "ST AHCI SATA support"
133 This option enables support for ST AHCI SATA controller.
138 tristate "Freescale i.MX AHCI SATA support"
139 depends on MFD_SYSCON && (ARCH_MXC || COMPILE_TEST)
140 depends on (HWMON && (THERMAL || !THERMAL_OF)) || !HWMON
142 This option enables support for the Freescale i.MX SoC's
148 tristate "CEVA AHCI SATA support"
151 This option enables support for the CEVA AHCI SATA.
152 It can be found on the Xilinx Zynq UltraScale+ MPSoC.
157 tristate "MediaTek AHCI SATA support"
158 depends on ARCH_MEDIATEK
161 This option enables support for the MediaTek SoC's
162 onboard AHCI SATA controller.
167 tristate "Marvell EBU AHCI SATA support"
168 depends on ARCH_MVEBU
170 This option enables support for the Marvebu EBU SoC's
176 tristate "Cavium Octeon Soc Serial ATA"
177 depends on SATA_AHCI_PLATFORM && CAVIUM_OCTEON_SOC
180 This option enables support for Cavium Octeon SoC Serial ATA.
185 tristate "Allwinner sunxi AHCI SATA support"
186 depends on ARCH_SUNXI
188 This option enables support for the Allwinner sunxi SoC's
194 tristate "NVIDIA Tegra124 AHCI SATA support"
195 depends on ARCH_TEGRA
197 This option enables support for the NVIDIA Tegra124 SoC's
203 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
206 This option enables support for APM X-Gene SoC SATA host controller.
209 tristate "Freescale QorIQ AHCI SATA support"
212 This option enables support for the Freescale QorIQ AHCI SoC's
218 tristate "Freescale 3.0Gbps SATA support"
221 This option enables support for Freescale 3.0Gbps SATA controller.
222 It can be found on MPC837x and MPC8315.
227 tristate "Gemini SATA bridge support"
228 depends on ARCH_GEMINI || COMPILE_TEST
231 This enabled support for the FTIDE010 to SATA bridge
232 found in Cortina Systems Gemini platform.
236 config SATA_AHCI_SEATTLE
237 tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support"
238 depends on ARCH_SEATTLE
240 This option enables support for AMD Seattle SATA host controller.
245 tristate "Initio 162x SATA support (Very Experimental)"
248 This option enables support for Initio 162x Serial ATA.
250 config SATA_ACARD_AHCI
251 tristate "ACard AHCI variant (ATP 8620)"
254 This option enables support for Acard.
259 tristate "Silicon Image 3124/3132 SATA support"
262 This option enables support for Silicon Image 3124/3132 Serial ATA.
269 bool "ATA SFF support (for legacy IDE and PATA)"
272 This option adds support for ATA controllers with SFF
273 compliant or similar programming interface.
275 SFF is the legacy IDE interface that has been around since
276 the dawn of time. Almost all PATA controllers have an
277 SFF interface. Many SATA controllers have an SFF interface
278 when configured into a legacy compatibility mode.
280 For users with exclusively modern controllers like AHCI,
281 Silicon Image 3124, or Marvell 6440, you may choose to
282 disable this unneeded SFF support.
288 comment "SFF controllers with custom DMA interface"
291 tristate "Pacific Digital ADMA support"
294 This option enables support for Pacific Digital ADMA controllers
298 config PATA_OCTEON_CF
299 tristate "OCTEON Boot Bus Compact Flash support"
300 depends on CAVIUM_OCTEON_SOC
302 This option enables a polled compact flash driver for use with
303 compact flash cards attached to the OCTEON boot bus.
308 tristate "Pacific Digital SATA QStor support"
311 This option enables support for Pacific Digital Serial ATA QStor.
316 tristate "Promise SATA SX4 support (Experimental)"
319 This option enables support for Promise Serial ATA SX4.
324 bool "ATA BMDMA support"
328 This option adds support for SFF ATA controllers with BMDMA
329 capability. BMDMA stands for bus-master DMA and is the
330 de facto DMA interface for SFF controllers.
336 comment "SATA SFF controllers with BMDMA"
339 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
342 This option enables support for ICH5/6/7/8 Serial ATA
343 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
349 tristate "DesignWare Cores SATA support"
350 depends on DMADEVICES
353 This option enables support for the on-chip SATA controller of the
354 AppliedMicro processor 460EX.
358 config SATA_DWC_OLD_DMA
359 bool "Support old device trees"
364 This option enables support for old device trees without the
367 config SATA_DWC_DEBUG
368 bool "Debugging driver version"
371 This option enables debugging output in the driver.
373 config SATA_DWC_VDEBUG
374 bool "Verbose debug output"
375 depends on SATA_DWC_DEBUG
377 This option enables the taskfile dumping and NCQ debugging.
380 tristate "Calxeda Highbank SATA support"
382 depends on ARCH_HIGHBANK || COMPILE_TEST
384 This option enables support for the Calxeda Highbank SoC's
390 tristate "Marvell SATA support"
392 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
393 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
396 This option enables support for the Marvell Serial ATA family.
397 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
398 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
403 tristate "NVIDIA SATA support"
406 This option enables support for NVIDIA Serial ATA.
411 tristate "Promise SATA TX2/TX4 support"
414 This option enables support for Promise Serial ATA TX2/TX4.
419 tristate "Renesas R-Car SATA support"
420 depends on ARCH_RENESAS || COMPILE_TEST
422 This option enables support for Renesas R-Car Serial ATA.
427 tristate "Silicon Image SATA support"
430 This option enables support for Silicon Image Serial ATA.
435 tristate "SiS 964/965/966/180 SATA support"
439 This option enables support for SiS Serial ATA on
440 SiS 964/965/966/180 and Parallel ATA on SiS 180.
441 The PATA support for SiS 180 requires additionally to
442 enable the PATA_SIS driver in the config.
446 tristate "ServerWorks Frodo / Apple K2 SATA support"
449 This option enables support for Broadcom/Serverworks/Apple K2
455 tristate "ULi Electronics SATA support"
458 This option enables support for ULi Electronics SATA.
463 tristate "VIA SATA support"
466 This option enables support for VIA Serial ATA.
471 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
474 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
478 comment "PATA SFF controllers with BMDMA"
481 tristate "ALi PATA support"
484 This option enables support for the ALi ATA interfaces
485 found on the many ALi chipsets.
490 tristate "AMD/NVidia PATA support"
493 This option enables support for the AMD and NVidia PATA
494 interfaces found on the chipsets for Athlon/Athlon64.
498 config PATA_ARASAN_CF
499 tristate "ARASAN CompactFlash PATA Controller Support"
500 depends on ARCH_SPEAR13XX || COMPILE_TEST
501 depends on DMADEVICES
504 Say Y here to support the ARASAN CompactFlash PATA controller
507 tristate "ARTOP 6210/6260 PATA support"
510 This option enables support for ARTOP PATA controllers.
515 tristate "ATI PATA support"
518 This option enables support for the ATI ATA interfaces
519 found on the many ATI chipsets.
524 tristate "ARTOP/Acard ATP867X PATA support"
527 This option enables support for ARTOP/Acard ATP867X PATA
533 tristate "Blackfin 54x ATAPI support"
534 depends on BF542 || BF548 || BF549
536 This option enables support for the built-in ATAPI controller on
537 Blackfin 54x family chips.
542 tristate "Palmchip BK3710 PATA support"
543 depends on ARCH_DAVINCI
545 This option enables support for the integrated IDE controller on
551 tristate "CMD64x PATA support"
554 This option enables support for the CMD64x series chips
555 except for the CMD640.
560 tristate "CS5510/5520 PATA support"
561 depends on PCI && (X86_32 || COMPILE_TEST)
563 This option enables support for the Cyrix 5510/5520
564 companion chip used with the MediaGX/Geode processor family.
569 tristate "CS5530 PATA support"
570 depends on PCI && (X86_32 || COMPILE_TEST)
572 This option enables support for the Cyrix/NatSemi/AMD CS5530
573 companion chip used with the MediaGX/Geode processor family.
578 tristate "CS5535 PATA support (Experimental)"
579 depends on PCI && X86_32
581 This option enables support for the NatSemi/AMD CS5535
582 companion chip used with the Geode processor family.
587 tristate "CS5536 PATA support"
588 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
590 This option enables support for the AMD CS5536
591 companion chip used with the Geode LX processor family.
596 tristate "Cypress CY82C693 PATA support (Very Experimental)"
599 This option enables support for the Cypress/Contaq CY82C693
600 chipset found in some Alpha systems
605 tristate "EFAR SLC90E66 support"
608 This option enables support for the EFAR SLC90E66
609 IDE controller found on some older machines.
614 tristate "Cirrus Logic EP93xx PATA support"
615 depends on ARCH_EP93XX
617 This option enables support for the PATA controller in
618 the Cirrus Logic EP9312 and EP9315 ARM CPU.
623 tristate "Faraday Technology FTIDE010 PATA support"
626 depends on SATA_GEMINI
628 This option enables support for the Faraday FTIDE010
629 PATA controller found in the Cortina Gemini SoCs.
634 tristate "HPT 366/368 PATA support"
637 This option enables support for the HPT 366 and 368
638 PATA controllers via the new ATA layer.
643 tristate "HPT 370/370A/371/372/374/302 PATA support"
646 This option enables support for the majority of the later HPT
647 PATA controllers via the new ATA layer.
652 tristate "HPT 371N/372N/302N PATA support"
655 This option enables support for the N variant HPT PATA
656 controllers via the new ATA layer.
661 tristate "HPT 343/363 PATA support"
664 This option enables support for the HPT 343/363
665 PATA controllers via the new ATA layer
669 config PATA_HPT3X3_DMA
670 bool "HPT 343/363 DMA support"
671 depends on PATA_HPT3X3
673 This option enables DMA support for the HPT343/363
674 controllers. Enable with care as there are still some
675 problems with DMA on this chipset.
678 tristate "Acorn ICS PATA support"
679 depends on ARM && ARCH_ACORN
681 On Acorn systems, say Y here if you wish to use the ICS PATA
682 interface card. This is not required for ICS partition support.
683 If you are unsure, say N to this.
686 tristate "PATA support for Freescale iMX"
689 This option enables support for the PATA host available on Freescale
695 tristate "IT8213 PATA support (Experimental)"
698 This option enables support for the ITE 821 PATA
699 controllers via the new ATA layer.
704 tristate "IT8211/2 PATA support"
707 This option enables support for the ITE 8211 and 8212
708 PATA controllers via the new ATA layer, including RAID
714 tristate "JMicron PATA support"
717 Enable support for the JMicron IDE controller, via the new
723 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
726 Most IDE capable PowerMacs have IDE busses driven by a variant
727 of this controller which is part of the Apple chipset used on
728 most PowerMac models. Some models have multiple busses using
729 different chipsets, though generally, MacIO is one of them.
732 tristate "Marvell PATA support via legacy mode"
735 This option enables limited support for the Marvell 88SE61xx ATA
736 controllers. If you wish to use only the SATA ports then select
737 the AHCI driver alone. If you wish to the use the PATA port or
738 both SATA and PATA include this driver.
743 tristate "Freescale MPC52xx SoC internal IDE"
744 depends on PPC_MPC52xx && PPC_BESTCOMM
745 select PPC_BESTCOMM_ATA
747 This option enables support for integrated IDE controller
748 of the Freescale MPC52xx SoC.
753 tristate "NETCELL Revolution RAID support"
756 This option enables support for the Netcell Revolution RAID
762 tristate "Ninja32/Delkin Cardbus ATA support"
765 This option enables support for the Ninja32, Delkin and
766 possibly other brands of Cardbus ATA adapter
771 tristate "Nat Semi NS87415 PATA support"
774 This option enables support for the National Semiconductor
775 NS87415 PCI-IDE controller.
780 tristate "Intel PATA old PIIX support"
783 This option enables support for early PIIX PATA support.
788 tristate "OPTI FireStar PATA support (Very Experimental)"
791 This option enables DMA/PIO support for the later OPTi
792 controllers found on some old motherboards and in some
798 tristate "Promise PATA 2027x support"
801 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
806 tristate "Older Promise PATA controller support"
809 This option enables support for the Promise 20246, 20262, 20263,
810 20265 and 20267 adapters.
815 tristate "RADISYS 82600 PATA support (Experimental)"
818 This option enables support for the RADISYS 82600
819 PATA controllers via the new ATA layer
824 tristate "RDC PATA support"
827 This option enables basic support for the later RDC PATA controllers
828 controllers via the new ATA layer. For the RDC 1010, you need to
829 enable the IT821X driver instead.
834 tristate "SC1200 PATA support"
835 depends on PCI && (X86_32 || COMPILE_TEST)
837 This option enables support for the NatSemi/AMD SC1200 SoC
838 companion chip used with the Geode processor family.
843 tristate "Intel SCH PATA support"
846 This option enables support for Intel SCH PATA on the Intel
847 SCH (US15W, US15L, UL11L) series host controllers.
851 config PATA_SERVERWORKS
852 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
855 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
856 HT1000 PATA controllers, via the new ATA layer.
861 tristate "CMD / Silicon Image 680 PATA support"
864 This option enables support for CMD / Silicon Image 680 PATA.
869 tristate "SiS PATA support"
872 This option enables support for SiS PATA controllers
877 tristate "Toshiba Piccolo support (Experimental)"
880 Support for the Toshiba Piccolo controllers. Currently only the
881 primary channel is supported by this driver.
886 tristate "Compaq Triflex PATA support"
889 Enable support for the Compaq 'Triflex' IDE controller as found
890 on many Compaq Pentium-Pro systems, via the new ATA layer.
895 tristate "VIA PATA support"
898 This option enables support for the VIA PATA interfaces
899 found on the many VIA chipsets.
904 tristate "PXA DMA-capable PATA support"
907 This option enables support for harddrive attached to PXA CPU's bus.
909 NOTE: This driver utilizes PXA DMA controller, in case your hardware
910 is not capable of doing MWDMA, use pata_platform instead.
915 tristate "Winbond SL82C105 PATA support"
918 This option enables support for SL82C105 PATA devices found in the
919 Netwinder and some other systems
925 comment "PIO-only SFF controllers"
928 tristate "Atmel AVR32 PATA support (Experimental)"
929 depends on AVR32 && PLATFORM_AT32AP
931 This option enables support for the IDE devices on the
932 Atmel AT32AP platform.
936 config PATA_CMD640_PCI
937 tristate "CMD640 PCI PATA support (Experimental)"
940 This option enables support for the CMD640 PCI IDE
941 interface chip. Only the primary channel is currently
947 tristate "Atari Falcon PATA support"
948 depends on M68K && ATARI
950 This option enables support for the on-board IDE
951 interface on the Atari Falcon.
956 tristate "ISA Plug and Play PATA support"
959 This option enables support for ISA plug & play ATA
960 controllers such as those found on old soundcards.
964 config PATA_IXP4XX_CF
965 tristate "IXP4XX Compact Flash support"
966 depends on ARCH_IXP4XX
968 This option enables support for a Compact Flash connected on
969 the ixp4xx expansion bus. This driver had been written for
970 Loft/Avila boards in mind but can work with others.
975 tristate "Intel PATA MPIIX support"
978 This option enables support for MPIIX PATA support.
983 tristate "Nat Semi NS87410 PATA support"
986 This option enables support for the National Semiconductor
987 NS87410 PCI-IDE controller.
992 tristate "OPTI621/6215 PATA support (Very Experimental)"
995 This option enables full PIO support for the early Opti ATA
996 controllers found on some old motherboards.
1001 tristate "Palm LifeDrive PATA support"
1002 depends on MACH_PALMLD
1004 This option enables support for Palm LifeDrive's internal ATA
1005 port via the new ATA layer.
1010 tristate "PCMCIA PATA support"
1013 This option enables support for PCMCIA ATA interfaces, including
1014 compact flash card adapters via the new ATA layer.
1018 config PATA_PLATFORM
1019 tristate "Generic platform device PATA support"
1020 depends on EXPERT || PPC || HAVE_PATA_PLATFORM
1022 This option enables support for generic directly connected ATA
1023 devices commonly found on embedded systems.
1027 config PATA_OF_PLATFORM
1028 tristate "OpenFirmware platform device PATA support"
1029 depends on PATA_PLATFORM && OF
1031 This option enables support for generic directly connected ATA
1032 devices commonly found on embedded systems with OpenFirmware
1038 tristate "QDI VLB PATA support"
1042 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
1045 tristate "RouterBoard 532 PATA CompactFlash support"
1046 depends on MIKROTIK_RB532
1048 This option enables support for the RouterBoard 532
1049 PATA CompactFlash controller.
1054 tristate "PC Tech RZ1000 PATA support"
1057 This option enables basic support for the PC Tech RZ1000/1
1058 PATA controllers via the new ATA layer
1062 config PATA_SAMSUNG_CF
1063 tristate "Samsung SoC PATA support"
1064 depends on SAMSUNG_DEV_IDE
1066 This option enables basic support for Samsung's S3C/S5P board
1067 PATA controllers via the new ATA layer
1071 config PATA_WINBOND_VLB
1072 tristate "Winbond W83759A VLB PATA support (Experimental)"
1076 Support for the Winbond W83759A controller on Vesa Local Bus
1079 comment "Generic fallback / legacy drivers"
1082 tristate "ACPI firmware driver for PATA"
1083 depends on ATA_ACPI && ATA_BMDMA
1085 This option enables an ACPI method driver which drives
1086 motherboard PATA controller interfaces through the ACPI
1087 firmware in the BIOS. This driver can sometimes handle
1088 otherwise unsupported hardware.
1091 tristate "Generic ATA support"
1092 depends on PCI && ATA_BMDMA
1094 This option enables support for generic BIOS configured
1095 ATA controllers via the new ATA layer
1100 tristate "Legacy ISA PATA support (Experimental)"
1101 depends on (ISA || PCI)
1103 This option enables support for ISA/VLB/PCI bus legacy PATA
1104 ports and allows them to be accessed via the new ATA layer.