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 "Marvell EBU AHCI SATA support"
158 depends on ARCH_MVEBU
160 This option enables support for the Marvebu EBU SoC's
166 tristate "Cavium Octeon Soc Serial ATA"
167 depends on SATA_AHCI_PLATFORM && CAVIUM_OCTEON_SOC
170 This option enables support for Cavium Octeon SoC Serial ATA.
175 tristate "Allwinner sunxi AHCI SATA support"
176 depends on ARCH_SUNXI
178 This option enables support for the Allwinner sunxi SoC's
184 tristate "NVIDIA Tegra124 AHCI SATA support"
185 depends on ARCH_TEGRA
187 This option enables support for the NVIDIA Tegra124 SoC's
193 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
196 This option enables support for APM X-Gene SoC SATA host controller.
199 tristate "Freescale QorIQ AHCI SATA support"
202 This option enables support for the Freescale QorIQ AHCI SoC's
208 tristate "Freescale 3.0Gbps SATA support"
211 This option enables support for Freescale 3.0Gbps SATA controller.
212 It can be found on MPC837x and MPC8315.
216 config SATA_AHCI_SEATTLE
217 tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support"
218 depends on ARCH_SEATTLE
220 This option enables support for AMD Seattle SATA host controller.
225 tristate "Initio 162x SATA support (Very Experimental)"
228 This option enables support for Initio 162x Serial ATA.
230 config SATA_ACARD_AHCI
231 tristate "ACard AHCI variant (ATP 8620)"
234 This option enables support for Acard.
239 tristate "Silicon Image 3124/3132 SATA support"
242 This option enables support for Silicon Image 3124/3132 Serial ATA.
249 bool "ATA SFF support (for legacy IDE and PATA)"
252 This option adds support for ATA controllers with SFF
253 compliant or similar programming interface.
255 SFF is the legacy IDE interface that has been around since
256 the dawn of time. Almost all PATA controllers have an
257 SFF interface. Many SATA controllers have an SFF interface
258 when configured into a legacy compatibility mode.
260 For users with exclusively modern controllers like AHCI,
261 Silicon Image 3124, or Marvell 6440, you may choose to
262 disable this unneeded SFF support.
268 comment "SFF controllers with custom DMA interface"
271 tristate "Pacific Digital ADMA support"
274 This option enables support for Pacific Digital ADMA controllers
278 config PATA_OCTEON_CF
279 tristate "OCTEON Boot Bus Compact Flash support"
280 depends on CAVIUM_OCTEON_SOC
282 This option enables a polled compact flash driver for use with
283 compact flash cards attached to the OCTEON boot bus.
288 tristate "Pacific Digital SATA QStor support"
291 This option enables support for Pacific Digital Serial ATA QStor.
296 tristate "Promise SATA SX4 support (Experimental)"
299 This option enables support for Promise Serial ATA SX4.
304 bool "ATA BMDMA support"
308 This option adds support for SFF ATA controllers with BMDMA
309 capability. BMDMA stands for bus-master DMA and is the
310 de facto DMA interface for SFF controllers.
316 comment "SATA SFF controllers with BMDMA"
319 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
322 This option enables support for ICH5/6/7/8 Serial ATA
323 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
329 tristate "DesignWare Cores SATA support"
330 depends on DMADEVICES
333 This option enables support for the on-chip SATA controller of the
334 AppliedMicro processor 460EX.
338 config SATA_DWC_OLD_DMA
339 bool "Support old device trees"
344 This option enables support for old device trees without the
347 config SATA_DWC_DEBUG
348 bool "Debugging driver version"
351 This option enables debugging output in the driver.
353 config SATA_DWC_VDEBUG
354 bool "Verbose debug output"
355 depends on SATA_DWC_DEBUG
357 This option enables the taskfile dumping and NCQ debugging.
360 tristate "Calxeda Highbank SATA support"
362 depends on ARCH_HIGHBANK || COMPILE_TEST
364 This option enables support for the Calxeda Highbank SoC's
370 tristate "Marvell SATA support"
372 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
373 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
376 This option enables support for the Marvell Serial ATA family.
377 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
378 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
383 tristate "NVIDIA SATA support"
386 This option enables support for NVIDIA Serial ATA.
391 tristate "Promise SATA TX2/TX4 support"
394 This option enables support for Promise Serial ATA TX2/TX4.
399 tristate "Renesas R-Car SATA support"
400 depends on ARCH_RENESAS || COMPILE_TEST
402 This option enables support for Renesas R-Car Serial ATA.
407 tristate "Silicon Image SATA support"
410 This option enables support for Silicon Image Serial ATA.
415 tristate "SiS 964/965/966/180 SATA support"
419 This option enables support for SiS Serial ATA on
420 SiS 964/965/966/180 and Parallel ATA on SiS 180.
421 The PATA support for SiS 180 requires additionally to
422 enable the PATA_SIS driver in the config.
426 tristate "ServerWorks Frodo / Apple K2 SATA support"
429 This option enables support for Broadcom/Serverworks/Apple K2
435 tristate "ULi Electronics SATA support"
438 This option enables support for ULi Electronics SATA.
443 tristate "VIA SATA support"
446 This option enables support for VIA Serial ATA.
451 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
454 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
458 comment "PATA SFF controllers with BMDMA"
461 tristate "ALi PATA support"
464 This option enables support for the ALi ATA interfaces
465 found on the many ALi chipsets.
470 tristate "AMD/NVidia PATA support"
473 This option enables support for the AMD and NVidia PATA
474 interfaces found on the chipsets for Athlon/Athlon64.
478 config PATA_ARASAN_CF
479 tristate "ARASAN CompactFlash PATA Controller Support"
480 depends on ARCH_SPEAR13XX || COMPILE_TEST
481 depends on DMADEVICES
484 Say Y here to support the ARASAN CompactFlash PATA controller
487 tristate "ARTOP 6210/6260 PATA support"
490 This option enables support for ARTOP PATA controllers.
495 tristate "ATI PATA support"
498 This option enables support for the ATI ATA interfaces
499 found on the many ATI chipsets.
504 tristate "ARTOP/Acard ATP867X PATA support"
507 This option enables support for ARTOP/Acard ATP867X PATA
513 tristate "Blackfin 54x ATAPI support"
514 depends on BF542 || BF548 || BF549
516 This option enables support for the built-in ATAPI controller on
517 Blackfin 54x family chips.
522 tristate "Palmchip BK3710 PATA support"
523 depends on ARCH_DAVINCI
525 This option enables support for the integrated IDE controller on
531 tristate "CMD64x PATA support"
534 This option enables support for the CMD64x series chips
535 except for the CMD640.
540 tristate "CS5510/5520 PATA support"
541 depends on PCI && (X86_32 || COMPILE_TEST)
543 This option enables support for the Cyrix 5510/5520
544 companion chip used with the MediaGX/Geode processor family.
549 tristate "CS5530 PATA support"
550 depends on PCI && (X86_32 || COMPILE_TEST)
552 This option enables support for the Cyrix/NatSemi/AMD CS5530
553 companion chip used with the MediaGX/Geode processor family.
558 tristate "CS5535 PATA support (Experimental)"
559 depends on PCI && X86_32
561 This option enables support for the NatSemi/AMD CS5535
562 companion chip used with the Geode processor family.
567 tristate "CS5536 PATA support"
568 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
570 This option enables support for the AMD CS5536
571 companion chip used with the Geode LX processor family.
576 tristate "Cypress CY82C693 PATA support (Very Experimental)"
579 This option enables support for the Cypress/Contaq CY82C693
580 chipset found in some Alpha systems
585 tristate "EFAR SLC90E66 support"
588 This option enables support for the EFAR SLC90E66
589 IDE controller found on some older machines.
594 tristate "Cirrus Logic EP93xx PATA support"
595 depends on ARCH_EP93XX
597 This option enables support for the PATA controller in
598 the Cirrus Logic EP9312 and EP9315 ARM CPU.
603 tristate "HPT 366/368 PATA support"
606 This option enables support for the HPT 366 and 368
607 PATA controllers via the new ATA layer.
612 tristate "HPT 370/370A/371/372/374/302 PATA support"
615 This option enables support for the majority of the later HPT
616 PATA controllers via the new ATA layer.
621 tristate "HPT 371N/372N/302N PATA support"
624 This option enables support for the N variant HPT PATA
625 controllers via the new ATA layer.
630 tristate "HPT 343/363 PATA support"
633 This option enables support for the HPT 343/363
634 PATA controllers via the new ATA layer
638 config PATA_HPT3X3_DMA
639 bool "HPT 343/363 DMA support"
640 depends on PATA_HPT3X3
642 This option enables DMA support for the HPT343/363
643 controllers. Enable with care as there are still some
644 problems with DMA on this chipset.
647 tristate "Acorn ICS PATA support"
648 depends on ARM && ARCH_ACORN
650 On Acorn systems, say Y here if you wish to use the ICS PATA
651 interface card. This is not required for ICS partition support.
652 If you are unsure, say N to this.
655 tristate "PATA support for Freescale iMX"
658 This option enables support for the PATA host available on Freescale
664 tristate "IT8213 PATA support (Experimental)"
667 This option enables support for the ITE 821 PATA
668 controllers via the new ATA layer.
673 tristate "IT8211/2 PATA support"
676 This option enables support for the ITE 8211 and 8212
677 PATA controllers via the new ATA layer, including RAID
683 tristate "JMicron PATA support"
686 Enable support for the JMicron IDE controller, via the new
692 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
695 Most IDE capable PowerMacs have IDE busses driven by a variant
696 of this controller which is part of the Apple chipset used on
697 most PowerMac models. Some models have multiple busses using
698 different chipsets, though generally, MacIO is one of them.
701 tristate "Marvell PATA support via legacy mode"
704 This option enables limited support for the Marvell 88SE61xx ATA
705 controllers. If you wish to use only the SATA ports then select
706 the AHCI driver alone. If you wish to the use the PATA port or
707 both SATA and PATA include this driver.
712 tristate "Freescale MPC52xx SoC internal IDE"
713 depends on PPC_MPC52xx && PPC_BESTCOMM
714 select PPC_BESTCOMM_ATA
716 This option enables support for integrated IDE controller
717 of the Freescale MPC52xx SoC.
722 tristate "NETCELL Revolution RAID support"
725 This option enables support for the Netcell Revolution RAID
731 tristate "Ninja32/Delkin Cardbus ATA support"
734 This option enables support for the Ninja32, Delkin and
735 possibly other brands of Cardbus ATA adapter
740 tristate "Nat Semi NS87415 PATA support"
743 This option enables support for the National Semiconductor
744 NS87415 PCI-IDE controller.
749 tristate "Intel PATA old PIIX support"
752 This option enables support for early PIIX PATA support.
757 tristate "OPTI FireStar PATA support (Very Experimental)"
760 This option enables DMA/PIO support for the later OPTi
761 controllers found on some old motherboards and in some
767 tristate "Promise PATA 2027x support"
770 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
775 tristate "Older Promise PATA controller support"
778 This option enables support for the Promise 20246, 20262, 20263,
779 20265 and 20267 adapters.
784 tristate "RADISYS 82600 PATA support (Experimental)"
787 This option enables support for the RADISYS 82600
788 PATA controllers via the new ATA layer
793 tristate "RDC PATA support"
796 This option enables basic support for the later RDC PATA controllers
797 controllers via the new ATA layer. For the RDC 1010, you need to
798 enable the IT821X driver instead.
803 tristate "SC1200 PATA support"
804 depends on PCI && (X86_32 || COMPILE_TEST)
806 This option enables support for the NatSemi/AMD SC1200 SoC
807 companion chip used with the Geode processor family.
812 tristate "Intel SCH PATA support"
815 This option enables support for Intel SCH PATA on the Intel
816 SCH (US15W, US15L, UL11L) series host controllers.
820 config PATA_SERVERWORKS
821 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
824 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
825 HT1000 PATA controllers, via the new ATA layer.
830 tristate "CMD / Silicon Image 680 PATA support"
833 This option enables support for CMD / Silicon Image 680 PATA.
838 tristate "SiS PATA support"
841 This option enables support for SiS PATA controllers
846 tristate "Toshiba Piccolo support (Experimental)"
849 Support for the Toshiba Piccolo controllers. Currently only the
850 primary channel is supported by this driver.
855 tristate "Compaq Triflex PATA support"
858 Enable support for the Compaq 'Triflex' IDE controller as found
859 on many Compaq Pentium-Pro systems, via the new ATA layer.
864 tristate "VIA PATA support"
867 This option enables support for the VIA PATA interfaces
868 found on the many VIA chipsets.
873 tristate "PXA DMA-capable PATA support"
876 This option enables support for harddrive attached to PXA CPU's bus.
878 NOTE: This driver utilizes PXA DMA controller, in case your hardware
879 is not capable of doing MWDMA, use pata_platform instead.
884 tristate "Winbond SL82C105 PATA support"
887 This option enables support for SL82C105 PATA devices found in the
888 Netwinder and some other systems
894 comment "PIO-only SFF controllers"
897 tristate "Atmel AVR32 PATA support (Experimental)"
898 depends on AVR32 && PLATFORM_AT32AP
900 This option enables support for the IDE devices on the
901 Atmel AT32AP platform.
905 config PATA_CMD640_PCI
906 tristate "CMD640 PCI PATA support (Experimental)"
909 This option enables support for the CMD640 PCI IDE
910 interface chip. Only the primary channel is currently
916 tristate "Atari Falcon PATA support"
917 depends on M68K && ATARI
919 This option enables support for the on-board IDE
920 interface on the Atari Falcon.
925 tristate "ISA Plug and Play PATA support"
928 This option enables support for ISA plug & play ATA
929 controllers such as those found on old soundcards.
933 config PATA_IXP4XX_CF
934 tristate "IXP4XX Compact Flash support"
935 depends on ARCH_IXP4XX
937 This option enables support for a Compact Flash connected on
938 the ixp4xx expansion bus. This driver had been written for
939 Loft/Avila boards in mind but can work with others.
944 tristate "Intel PATA MPIIX support"
947 This option enables support for MPIIX PATA support.
952 tristate "Nat Semi NS87410 PATA support"
955 This option enables support for the National Semiconductor
956 NS87410 PCI-IDE controller.
961 tristate "OPTI621/6215 PATA support (Very Experimental)"
964 This option enables full PIO support for the early Opti ATA
965 controllers found on some old motherboards.
970 tristate "Palm LifeDrive PATA support"
971 depends on MACH_PALMLD
973 This option enables support for Palm LifeDrive's internal ATA
974 port via the new ATA layer.
979 tristate "PCMCIA PATA support"
982 This option enables support for PCMCIA ATA interfaces, including
983 compact flash card adapters via the new ATA layer.
988 tristate "Generic platform device PATA support"
989 depends on EXPERT || PPC || HAVE_PATA_PLATFORM
991 This option enables support for generic directly connected ATA
992 devices commonly found on embedded systems.
996 config PATA_OF_PLATFORM
997 tristate "OpenFirmware platform device PATA support"
998 depends on PATA_PLATFORM && OF
1000 This option enables support for generic directly connected ATA
1001 devices commonly found on embedded systems with OpenFirmware
1007 tristate "QDI VLB PATA support"
1011 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
1014 tristate "RouterBoard 532 PATA CompactFlash support"
1015 depends on MIKROTIK_RB532
1017 This option enables support for the RouterBoard 532
1018 PATA CompactFlash controller.
1023 tristate "PC Tech RZ1000 PATA support"
1026 This option enables basic support for the PC Tech RZ1000/1
1027 PATA controllers via the new ATA layer
1031 config PATA_SAMSUNG_CF
1032 tristate "Samsung SoC PATA support"
1033 depends on SAMSUNG_DEV_IDE
1035 This option enables basic support for Samsung's S3C/S5P board
1036 PATA controllers via the new ATA layer
1040 config PATA_WINBOND_VLB
1041 tristate "Winbond W83759A VLB PATA support (Experimental)"
1045 Support for the Winbond W83759A controller on Vesa Local Bus
1048 comment "Generic fallback / legacy drivers"
1051 tristate "ACPI firmware driver for PATA"
1052 depends on ATA_ACPI && ATA_BMDMA
1054 This option enables an ACPI method driver which drives
1055 motherboard PATA controller interfaces through the ACPI
1056 firmware in the BIOS. This driver can sometimes handle
1057 otherwise unsupported hardware.
1060 tristate "Generic ATA support"
1061 depends on PCI && ATA_BMDMA
1063 This option enables support for generic BIOS configured
1064 ATA controllers via the new ATA layer
1069 tristate "Legacy ISA PATA support (Experimental)"
1070 depends on (ISA || PCI)
1072 This option enables support for ISA/VLB/PCI bus legacy PATA
1073 ports and allows them to be accessed via the new ATA layer.