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
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"
50 depends on ACPI && PCI
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_RUNTIME
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).
82 comment "Controllers with non-SFF native interface"
85 tristate "AHCI SATA support"
88 This option enables support for AHCI Serial ATA.
92 config SATA_AHCI_PLATFORM
93 tristate "Platform AHCI SATA support"
95 This option enables support for Platform AHCI Serial ATA
101 tristate "DaVinci DA850 AHCI SATA support"
102 depends on ARCH_DAVINCI_DA850
104 This option enables support for the DaVinci DA850 SoC's
110 tristate "ST AHCI SATA support"
113 This option enables support for ST AHCI SATA controller.
118 tristate "Freescale i.MX AHCI SATA support"
119 depends on MFD_SYSCON
121 This option enables support for the Freescale i.MX SoC's
127 tristate "Allwinner sunxi AHCI SATA support"
128 depends on ARCH_SUNXI
130 This option enables support for the Allwinner sunxi SoC's
136 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
137 depends on ARM64 || COMPILE_TEST
140 This option enables support for APM X-Gene SoC SATA host controller.
143 tristate "Freescale 3.0Gbps SATA support"
146 This option enables support for Freescale 3.0Gbps SATA controller.
147 It can be found on MPC837x and MPC8315.
152 tristate "Initio 162x SATA support (Very Experimental)"
155 This option enables support for Initio 162x Serial ATA.
157 config SATA_ACARD_AHCI
158 tristate "ACard AHCI variant (ATP 8620)"
161 This option enables support for Acard.
166 tristate "Silicon Image 3124/3132 SATA support"
169 This option enables support for Silicon Image 3124/3132 Serial ATA.
174 bool "ATA SFF support (for legacy IDE and PATA)"
177 This option adds support for ATA controllers with SFF
178 compliant or similar programming interface.
180 SFF is the legacy IDE interface that has been around since
181 the dawn of time. Almost all PATA controllers have an
182 SFF interface. Many SATA controllers have an SFF interface
183 when configured into a legacy compatibility mode.
185 For users with exclusively modern controllers like AHCI,
186 Silicon Image 3124, or Marvell 6440, you may choose to
187 disable this unneeded SFF support.
193 comment "SFF controllers with custom DMA interface"
196 tristate "Pacific Digital ADMA support"
199 This option enables support for Pacific Digital ADMA controllers
203 config PATA_OCTEON_CF
204 tristate "OCTEON Boot Bus Compact Flash support"
205 depends on CAVIUM_OCTEON_SOC
207 This option enables a polled compact flash driver for use with
208 compact flash cards attached to the OCTEON boot bus.
213 tristate "Pacific Digital SATA QStor support"
216 This option enables support for Pacific Digital Serial ATA QStor.
221 tristate "Promise SATA SX4 support (Experimental)"
224 This option enables support for Promise Serial ATA SX4.
229 bool "ATA BMDMA support"
232 This option adds support for SFF ATA controllers with BMDMA
233 capability. BMDMA stands for bus-master DMA and is the
234 de facto DMA interface for SFF controllers.
240 comment "SATA SFF controllers with BMDMA"
243 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
246 This option enables support for ICH5/6/7/8 Serial ATA
247 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
253 tristate "DesignWare Cores SATA support"
256 This option enables support for the on-chip SATA controller of the
257 AppliedMicro processor 460EX.
261 config SATA_DWC_DEBUG
262 bool "Debugging driver version"
265 This option enables debugging output in the driver.
267 config SATA_DWC_VDEBUG
268 bool "Verbose debug output"
269 depends on SATA_DWC_DEBUG
271 This option enables the taskfile dumping and NCQ debugging.
274 tristate "Calxeda Highbank SATA support"
275 depends on ARCH_HIGHBANK || COMPILE_TEST
277 This option enables support for the Calxeda Highbank SoC's
283 tristate "Marvell SATA support"
285 This option enables support for the Marvell Serial ATA family.
286 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
287 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
292 tristate "NVIDIA SATA support"
295 This option enables support for NVIDIA Serial ATA.
300 tristate "Promise SATA TX2/TX4 support"
303 This option enables support for Promise Serial ATA TX2/TX4.
308 tristate "Renesas R-Car SATA support"
309 depends on ARCH_SHMOBILE || COMPILE_TEST
311 This option enables support for Renesas R-Car Serial ATA.
316 tristate "Silicon Image SATA support"
319 This option enables support for Silicon Image Serial ATA.
324 tristate "SiS 964/965/966/180 SATA support"
328 This option enables support for SiS Serial ATA on
329 SiS 964/965/966/180 and Parallel ATA on SiS 180.
330 The PATA support for SiS 180 requires additionally to
331 enable the PATA_SIS driver in the config.
335 tristate "ServerWorks Frodo / Apple K2 SATA support"
338 This option enables support for Broadcom/Serverworks/Apple K2
344 tristate "ULi Electronics SATA support"
347 This option enables support for ULi Electronics SATA.
352 tristate "VIA SATA support"
355 This option enables support for VIA Serial ATA.
360 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
363 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
367 comment "PATA SFF controllers with BMDMA"
370 tristate "ALi PATA support"
373 This option enables support for the ALi ATA interfaces
374 found on the many ALi chipsets.
379 tristate "AMD/NVidia PATA support"
382 This option enables support for the AMD and NVidia PATA
383 interfaces found on the chipsets for Athlon/Athlon64.
387 config PATA_ARASAN_CF
388 tristate "ARASAN CompactFlash PATA Controller Support"
389 depends on DMADEVICES
392 Say Y here to support the ARASAN CompactFlash PATA controller
395 tristate "ARTOP 6210/6260 PATA support"
398 This option enables support for ARTOP PATA controllers.
403 tristate "ATI PATA support"
406 This option enables support for the ATI ATA interfaces
407 found on the many ATI chipsets.
412 tristate "ARTOP/Acard ATP867X PATA support"
415 This option enables support for ARTOP/Acard ATP867X PATA
421 tristate "Blackfin 54x ATAPI support"
422 depends on BF542 || BF548 || BF549
424 This option enables support for the built-in ATAPI controller on
425 Blackfin 54x family chips.
430 tristate "CMD64x PATA support"
433 This option enables support for the CMD64x series chips
434 except for the CMD640.
439 tristate "CS5510/5520 PATA support"
440 depends on PCI && (X86_32 || COMPILE_TEST)
442 This option enables support for the Cyrix 5510/5520
443 companion chip used with the MediaGX/Geode processor family.
448 tristate "CS5530 PATA support"
449 depends on PCI && (X86_32 || COMPILE_TEST)
451 This option enables support for the Cyrix/NatSemi/AMD CS5530
452 companion chip used with the MediaGX/Geode processor family.
457 tristate "CS5535 PATA support (Experimental)"
458 depends on PCI && X86_32
460 This option enables support for the NatSemi/AMD CS5535
461 companion chip used with the Geode processor family.
466 tristate "CS5536 PATA support"
467 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
469 This option enables support for the AMD CS5536
470 companion chip used with the Geode LX processor family.
475 tristate "Cypress CY82C693 PATA support (Very Experimental)"
478 This option enables support for the Cypress/Contaq CY82C693
479 chipset found in some Alpha systems
484 tristate "EFAR SLC90E66 support"
487 This option enables support for the EFAR SLC90E66
488 IDE controller found on some older machines.
493 tristate "Cirrus Logic EP93xx PATA support"
494 depends on ARCH_EP93XX
496 This option enables support for the PATA controller in
497 the Cirrus Logic EP9312 and EP9315 ARM CPU.
502 tristate "HPT 366/368 PATA support"
505 This option enables support for the HPT 366 and 368
506 PATA controllers via the new ATA layer.
511 tristate "HPT 370/370A/371/372/374/302 PATA support"
514 This option enables support for the majority of the later HPT
515 PATA controllers via the new ATA layer.
520 tristate "HPT 371N/372N/302N PATA support"
523 This option enables support for the N variant HPT PATA
524 controllers via the new ATA layer.
529 tristate "HPT 343/363 PATA support"
532 This option enables support for the HPT 343/363
533 PATA controllers via the new ATA layer
537 config PATA_HPT3X3_DMA
538 bool "HPT 343/363 DMA support"
539 depends on PATA_HPT3X3
541 This option enables DMA support for the HPT343/363
542 controllers. Enable with care as there are still some
543 problems with DMA on this chipset.
546 tristate "Acorn ICS PATA support"
547 depends on ARM && ARCH_ACORN
549 On Acorn systems, say Y here if you wish to use the ICS PATA
550 interface card. This is not required for ICS partition support.
551 If you are unsure, say N to this.
554 tristate "PATA support for Freescale iMX"
557 This option enables support for the PATA host available on Freescale
563 tristate "IT8213 PATA support (Experimental)"
566 This option enables support for the ITE 821 PATA
567 controllers via the new ATA layer.
572 tristate "IT8211/2 PATA support"
575 This option enables support for the ITE 8211 and 8212
576 PATA controllers via the new ATA layer, including RAID
582 tristate "JMicron PATA support"
585 Enable support for the JMicron IDE controller, via the new
591 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
594 Most IDE capable PowerMacs have IDE busses driven by a variant
595 of this controller which is part of the Apple chipset used on
596 most PowerMac models. Some models have multiple busses using
597 different chipsets, though generally, MacIO is one of them.
600 tristate "Marvell PATA support via legacy mode"
603 This option enables limited support for the Marvell 88SE61xx ATA
604 controllers. If you wish to use only the SATA ports then select
605 the AHCI driver alone. If you wish to the use the PATA port or
606 both SATA and PATA include this driver.
611 tristate "Freescale MPC52xx SoC internal IDE"
612 depends on PPC_MPC52xx && PPC_BESTCOMM
613 select PPC_BESTCOMM_ATA
615 This option enables support for integrated IDE controller
616 of the Freescale MPC52xx SoC.
621 tristate "NETCELL Revolution RAID support"
624 This option enables support for the Netcell Revolution RAID
630 tristate "Ninja32/Delkin Cardbus ATA support"
633 This option enables support for the Ninja32, Delkin and
634 possibly other brands of Cardbus ATA adapter
639 tristate "Nat Semi NS87415 PATA support"
642 This option enables support for the National Semiconductor
643 NS87415 PCI-IDE controller.
648 tristate "Intel PATA old PIIX support"
651 This option enables support for early PIIX PATA support.
656 tristate "OPTI FireStar PATA support (Very Experimental)"
659 This option enables DMA/PIO support for the later OPTi
660 controllers found on some old motherboards and in some
666 tristate "Promise PATA 2027x support"
669 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
674 tristate "Older Promise PATA controller support"
677 This option enables support for the Promise 20246, 20262, 20263,
678 20265 and 20267 adapters.
683 tristate "RADISYS 82600 PATA support (Experimental)"
686 This option enables support for the RADISYS 82600
687 PATA controllers via the new ATA layer
692 tristate "RDC PATA support"
695 This option enables basic support for the later RDC PATA controllers
696 controllers via the new ATA layer. For the RDC 1010, you need to
697 enable the IT821X driver instead.
702 tristate "SC1200 PATA support"
703 depends on PCI && (X86_32 || COMPILE_TEST)
705 This option enables support for the NatSemi/AMD SC1200 SoC
706 companion chip used with the Geode processor family.
711 tristate "Toshiba's Cell Reference Set IDE support"
712 depends on PCI && PPC_CELLEB
714 This option enables support for the built-in IDE controller on
715 Toshiba Cell Reference Board.
720 tristate "Intel SCH PATA support"
723 This option enables support for Intel SCH PATA on the Intel
724 SCH (US15W, US15L, UL11L) series host controllers.
728 config PATA_SERVERWORKS
729 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
732 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
733 HT1000 PATA controllers, via the new ATA layer.
738 tristate "CMD / Silicon Image 680 PATA support"
741 This option enables support for CMD / Silicon Image 680 PATA.
746 tristate "SiS PATA support"
749 This option enables support for SiS PATA controllers
754 tristate "Toshiba Piccolo support (Experimental)"
757 Support for the Toshiba Piccolo controllers. Currently only the
758 primary channel is supported by this driver.
763 tristate "Compaq Triflex PATA support"
766 Enable support for the Compaq 'Triflex' IDE controller as found
767 on many Compaq Pentium-Pro systems, via the new ATA layer.
772 tristate "VIA PATA support"
775 This option enables support for the VIA PATA interfaces
776 found on the many VIA chipsets.
781 tristate "PXA DMA-capable PATA support"
784 This option enables support for harddrive attached to PXA CPU's bus.
786 NOTE: This driver utilizes PXA DMA controller, in case your hardware
787 is not capable of doing MWDMA, use pata_platform instead.
792 tristate "Winbond SL82C105 PATA support"
795 This option enables support for SL82C105 PATA devices found in the
796 Netwinder and some other systems
802 comment "PIO-only SFF controllers"
805 tristate "Atmel AVR32 PATA support (Experimental)"
806 depends on AVR32 && PLATFORM_AT32AP
808 This option enables support for the IDE devices on the
809 Atmel AT32AP platform.
814 tristate "PATA support for AT91SAM9260"
815 depends on ARM && ARCH_AT91
817 This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.
821 config PATA_CMD640_PCI
822 tristate "CMD640 PCI PATA support (Experimental)"
825 This option enables support for the CMD640 PCI IDE
826 interface chip. Only the primary channel is currently
832 tristate "ISA Plug and Play PATA support"
835 This option enables support for ISA plug & play ATA
836 controllers such as those found on old soundcards.
840 config PATA_IXP4XX_CF
841 tristate "IXP4XX Compact Flash support"
842 depends on ARCH_IXP4XX
844 This option enables support for a Compact Flash connected on
845 the ixp4xx expansion bus. This driver had been written for
846 Loft/Avila boards in mind but can work with others.
851 tristate "Intel PATA MPIIX support"
854 This option enables support for MPIIX PATA support.
859 tristate "Nat Semi NS87410 PATA support"
862 This option enables support for the National Semiconductor
863 NS87410 PCI-IDE controller.
868 tristate "OPTI621/6215 PATA support (Very Experimental)"
871 This option enables full PIO support for the early Opti ATA
872 controllers found on some old motherboards.
877 tristate "Palm LifeDrive PATA support"
878 depends on MACH_PALMLD
880 This option enables support for Palm LifeDrive's internal ATA
881 port via the new ATA layer.
886 tristate "PCMCIA PATA support"
889 This option enables support for PCMCIA ATA interfaces, including
890 compact flash card adapters via the new ATA layer.
895 tristate "Generic platform device PATA support"
896 depends on EXPERT || PPC || HAVE_PATA_PLATFORM
898 This option enables support for generic directly connected ATA
899 devices commonly found on embedded systems.
903 config PATA_OF_PLATFORM
904 tristate "OpenFirmware platform device PATA support"
905 depends on PATA_PLATFORM && OF
907 This option enables support for generic directly connected ATA
908 devices commonly found on embedded systems with OpenFirmware
914 tristate "QDI VLB PATA support"
918 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
921 tristate "RouterBoard 532 PATA CompactFlash support"
922 depends on MIKROTIK_RB532
924 This option enables support for the RouterBoard 532
925 PATA CompactFlash controller.
930 tristate "PC Tech RZ1000 PATA support"
933 This option enables basic support for the PC Tech RZ1000/1
934 PATA controllers via the new ATA layer
938 config PATA_SAMSUNG_CF
939 tristate "Samsung SoC PATA support"
940 depends on SAMSUNG_DEV_IDE
942 This option enables basic support for Samsung's S3C/S5P board
943 PATA controllers via the new ATA layer
947 config PATA_WINBOND_VLB
948 tristate "Winbond W83759A VLB PATA support (Experimental)"
952 Support for the Winbond W83759A controller on Vesa Local Bus
955 comment "Generic fallback / legacy drivers"
958 tristate "ACPI firmware driver for PATA"
959 depends on ATA_ACPI && ATA_BMDMA
961 This option enables an ACPI method driver which drives
962 motherboard PATA controller interfaces through the ACPI
963 firmware in the BIOS. This driver can sometimes handle
964 otherwise unsupported hardware.
967 tristate "Generic ATA support"
968 depends on PCI && ATA_BMDMA
970 This option enables support for generic BIOS configured
971 ATA controllers via the new ATA layer
976 tristate "Legacy ISA PATA support (Experimental)"
977 depends on (ISA || PCI)
979 This option enables support for ISA/VLB/PCI bus legacy PATA
980 ports and allows them to be accessed via the new ATA layer.