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 || \
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 "ST AHCI SATA support"
124 This option enables support for ST AHCI SATA controller.
129 tristate "Freescale i.MX AHCI SATA support"
130 depends on MFD_SYSCON && (ARCH_MXC || COMPILE_TEST)
132 This option enables support for the Freescale i.MX SoC's
138 tristate "CEVA AHCI SATA support"
141 This option enables support for the CEVA AHCI SATA.
142 It can be found on the Xilinx Zynq UltraScale+ MPSoC.
147 tristate "Marvell EBU AHCI SATA support"
148 depends on ARCH_MVEBU
150 This option enables support for the Marvebu EBU SoC's
156 tristate "Cavium Octeon Soc Serial ATA"
157 depends on SATA_AHCI_PLATFORM && CAVIUM_OCTEON_SOC
160 This option enables support for Cavium Octeon SoC Serial ATA.
165 tristate "Allwinner sunxi AHCI SATA support"
166 depends on ARCH_SUNXI
168 This option enables support for the Allwinner sunxi SoC's
174 tristate "NVIDIA Tegra124 AHCI SATA support"
175 depends on ARCH_TEGRA
177 This option enables support for the NVIDIA Tegra124 SoC's
183 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
186 This option enables support for APM X-Gene SoC SATA host controller.
189 tristate "Freescale QorIQ AHCI SATA support"
192 This option enables support for the Freescale QorIQ AHCI SoC's
198 tristate "Freescale 3.0Gbps SATA support"
201 This option enables support for Freescale 3.0Gbps SATA controller.
202 It can be found on MPC837x and MPC8315.
206 config SATA_AHCI_SEATTLE
207 tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support"
208 depends on ARCH_SEATTLE
210 This option enables support for AMD Seattle SATA host controller.
215 tristate "Initio 162x SATA support (Very Experimental)"
218 This option enables support for Initio 162x Serial ATA.
220 config SATA_ACARD_AHCI
221 tristate "ACard AHCI variant (ATP 8620)"
224 This option enables support for Acard.
229 tristate "Silicon Image 3124/3132 SATA support"
232 This option enables support for Silicon Image 3124/3132 Serial ATA.
237 bool "ATA SFF support (for legacy IDE and PATA)"
240 This option adds support for ATA controllers with SFF
241 compliant or similar programming interface.
243 SFF is the legacy IDE interface that has been around since
244 the dawn of time. Almost all PATA controllers have an
245 SFF interface. Many SATA controllers have an SFF interface
246 when configured into a legacy compatibility mode.
248 For users with exclusively modern controllers like AHCI,
249 Silicon Image 3124, or Marvell 6440, you may choose to
250 disable this unneeded SFF support.
256 comment "SFF controllers with custom DMA interface"
259 tristate "Pacific Digital ADMA support"
262 This option enables support for Pacific Digital ADMA controllers
266 config PATA_OCTEON_CF
267 tristate "OCTEON Boot Bus Compact Flash support"
268 depends on CAVIUM_OCTEON_SOC
270 This option enables a polled compact flash driver for use with
271 compact flash cards attached to the OCTEON boot bus.
276 tristate "Pacific Digital SATA QStor support"
279 This option enables support for Pacific Digital Serial ATA QStor.
284 tristate "Promise SATA SX4 support (Experimental)"
287 This option enables support for Promise Serial ATA SX4.
292 bool "ATA BMDMA support"
296 This option adds support for SFF ATA controllers with BMDMA
297 capability. BMDMA stands for bus-master DMA and is the
298 de facto DMA interface for SFF controllers.
304 comment "SATA SFF controllers with BMDMA"
307 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
310 This option enables support for ICH5/6/7/8 Serial ATA
311 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
317 tristate "DesignWare Cores SATA support"
318 depends on DMADEVICES
321 This option enables support for the on-chip SATA controller of the
322 AppliedMicro processor 460EX.
326 config SATA_DWC_OLD_DMA
327 bool "Support old device trees"
332 This option enables support for old device trees without the
335 config SATA_DWC_DEBUG
336 bool "Debugging driver version"
339 This option enables debugging output in the driver.
341 config SATA_DWC_VDEBUG
342 bool "Verbose debug output"
343 depends on SATA_DWC_DEBUG
345 This option enables the taskfile dumping and NCQ debugging.
348 tristate "Calxeda Highbank SATA support"
350 depends on ARCH_HIGHBANK || COMPILE_TEST
352 This option enables support for the Calxeda Highbank SoC's
358 tristate "Marvell SATA support"
360 depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
361 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
364 This option enables support for the Marvell Serial ATA family.
365 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
366 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
371 tristate "NVIDIA SATA support"
374 This option enables support for NVIDIA Serial ATA.
379 tristate "Promise SATA TX2/TX4 support"
382 This option enables support for Promise Serial ATA TX2/TX4.
387 tristate "Renesas R-Car SATA support"
388 depends on ARCH_RENESAS || COMPILE_TEST
390 This option enables support for Renesas R-Car Serial ATA.
395 tristate "Silicon Image SATA support"
398 This option enables support for Silicon Image Serial ATA.
403 tristate "SiS 964/965/966/180 SATA support"
407 This option enables support for SiS Serial ATA on
408 SiS 964/965/966/180 and Parallel ATA on SiS 180.
409 The PATA support for SiS 180 requires additionally to
410 enable the PATA_SIS driver in the config.
414 tristate "ServerWorks Frodo / Apple K2 SATA support"
417 This option enables support for Broadcom/Serverworks/Apple K2
423 tristate "ULi Electronics SATA support"
426 This option enables support for ULi Electronics SATA.
431 tristate "VIA SATA support"
434 This option enables support for VIA Serial ATA.
439 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
442 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
446 comment "PATA SFF controllers with BMDMA"
449 tristate "ALi PATA support"
452 This option enables support for the ALi ATA interfaces
453 found on the many ALi chipsets.
458 tristate "AMD/NVidia PATA support"
461 This option enables support for the AMD and NVidia PATA
462 interfaces found on the chipsets for Athlon/Athlon64.
466 config PATA_ARASAN_CF
467 tristate "ARASAN CompactFlash PATA Controller Support"
468 depends on ARCH_SPEAR13XX || COMPILE_TEST
469 depends on DMADEVICES
472 Say Y here to support the ARASAN CompactFlash PATA controller
475 tristate "ARTOP 6210/6260 PATA support"
478 This option enables support for ARTOP PATA controllers.
483 tristate "ATI PATA support"
486 This option enables support for the ATI ATA interfaces
487 found on the many ATI chipsets.
492 tristate "ARTOP/Acard ATP867X PATA support"
495 This option enables support for ARTOP/Acard ATP867X PATA
501 tristate "Blackfin 54x ATAPI support"
502 depends on BF542 || BF548 || BF549
504 This option enables support for the built-in ATAPI controller on
505 Blackfin 54x family chips.
510 tristate "CMD64x PATA support"
513 This option enables support for the CMD64x series chips
514 except for the CMD640.
519 tristate "CS5510/5520 PATA support"
520 depends on PCI && (X86_32 || COMPILE_TEST)
522 This option enables support for the Cyrix 5510/5520
523 companion chip used with the MediaGX/Geode processor family.
528 tristate "CS5530 PATA support"
529 depends on PCI && (X86_32 || COMPILE_TEST)
531 This option enables support for the Cyrix/NatSemi/AMD CS5530
532 companion chip used with the MediaGX/Geode processor family.
537 tristate "CS5535 PATA support (Experimental)"
538 depends on PCI && X86_32
540 This option enables support for the NatSemi/AMD CS5535
541 companion chip used with the Geode processor family.
546 tristate "CS5536 PATA support"
547 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
549 This option enables support for the AMD CS5536
550 companion chip used with the Geode LX processor family.
555 tristate "Cypress CY82C693 PATA support (Very Experimental)"
558 This option enables support for the Cypress/Contaq CY82C693
559 chipset found in some Alpha systems
564 tristate "EFAR SLC90E66 support"
567 This option enables support for the EFAR SLC90E66
568 IDE controller found on some older machines.
573 tristate "Cirrus Logic EP93xx PATA support"
574 depends on ARCH_EP93XX
576 This option enables support for the PATA controller in
577 the Cirrus Logic EP9312 and EP9315 ARM CPU.
582 tristate "HPT 366/368 PATA support"
585 This option enables support for the HPT 366 and 368
586 PATA controllers via the new ATA layer.
591 tristate "HPT 370/370A/371/372/374/302 PATA support"
594 This option enables support for the majority of the later HPT
595 PATA controllers via the new ATA layer.
600 tristate "HPT 371N/372N/302N PATA support"
603 This option enables support for the N variant HPT PATA
604 controllers via the new ATA layer.
609 tristate "HPT 343/363 PATA support"
612 This option enables support for the HPT 343/363
613 PATA controllers via the new ATA layer
617 config PATA_HPT3X3_DMA
618 bool "HPT 343/363 DMA support"
619 depends on PATA_HPT3X3
621 This option enables DMA support for the HPT343/363
622 controllers. Enable with care as there are still some
623 problems with DMA on this chipset.
626 tristate "Acorn ICS PATA support"
627 depends on ARM && ARCH_ACORN
629 On Acorn systems, say Y here if you wish to use the ICS PATA
630 interface card. This is not required for ICS partition support.
631 If you are unsure, say N to this.
634 tristate "PATA support for Freescale iMX"
637 This option enables support for the PATA host available on Freescale
643 tristate "IT8213 PATA support (Experimental)"
646 This option enables support for the ITE 821 PATA
647 controllers via the new ATA layer.
652 tristate "IT8211/2 PATA support"
655 This option enables support for the ITE 8211 and 8212
656 PATA controllers via the new ATA layer, including RAID
662 tristate "JMicron PATA support"
665 Enable support for the JMicron IDE controller, via the new
671 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
674 Most IDE capable PowerMacs have IDE busses driven by a variant
675 of this controller which is part of the Apple chipset used on
676 most PowerMac models. Some models have multiple busses using
677 different chipsets, though generally, MacIO is one of them.
680 tristate "Marvell PATA support via legacy mode"
683 This option enables limited support for the Marvell 88SE61xx ATA
684 controllers. If you wish to use only the SATA ports then select
685 the AHCI driver alone. If you wish to the use the PATA port or
686 both SATA and PATA include this driver.
691 tristate "Freescale MPC52xx SoC internal IDE"
692 depends on PPC_MPC52xx && PPC_BESTCOMM
693 select PPC_BESTCOMM_ATA
695 This option enables support for integrated IDE controller
696 of the Freescale MPC52xx SoC.
701 tristate "NETCELL Revolution RAID support"
704 This option enables support for the Netcell Revolution RAID
710 tristate "Ninja32/Delkin Cardbus ATA support"
713 This option enables support for the Ninja32, Delkin and
714 possibly other brands of Cardbus ATA adapter
719 tristate "Nat Semi NS87415 PATA support"
722 This option enables support for the National Semiconductor
723 NS87415 PCI-IDE controller.
728 tristate "Intel PATA old PIIX support"
731 This option enables support for early PIIX PATA support.
736 tristate "OPTI FireStar PATA support (Very Experimental)"
739 This option enables DMA/PIO support for the later OPTi
740 controllers found on some old motherboards and in some
746 tristate "Promise PATA 2027x support"
749 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
754 tristate "Older Promise PATA controller support"
757 This option enables support for the Promise 20246, 20262, 20263,
758 20265 and 20267 adapters.
763 tristate "RADISYS 82600 PATA support (Experimental)"
766 This option enables support for the RADISYS 82600
767 PATA controllers via the new ATA layer
772 tristate "RDC PATA support"
775 This option enables basic support for the later RDC PATA controllers
776 controllers via the new ATA layer. For the RDC 1010, you need to
777 enable the IT821X driver instead.
782 tristate "SC1200 PATA support"
783 depends on PCI && (X86_32 || COMPILE_TEST)
785 This option enables support for the NatSemi/AMD SC1200 SoC
786 companion chip used with the Geode processor family.
791 tristate "Intel SCH PATA support"
794 This option enables support for Intel SCH PATA on the Intel
795 SCH (US15W, US15L, UL11L) series host controllers.
799 config PATA_SERVERWORKS
800 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
803 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
804 HT1000 PATA controllers, via the new ATA layer.
809 tristate "CMD / Silicon Image 680 PATA support"
812 This option enables support for CMD / Silicon Image 680 PATA.
817 tristate "SiS PATA support"
820 This option enables support for SiS PATA controllers
825 tristate "Toshiba Piccolo support (Experimental)"
828 Support for the Toshiba Piccolo controllers. Currently only the
829 primary channel is supported by this driver.
834 tristate "Compaq Triflex PATA support"
837 Enable support for the Compaq 'Triflex' IDE controller as found
838 on many Compaq Pentium-Pro systems, via the new ATA layer.
843 tristate "VIA PATA support"
846 This option enables support for the VIA PATA interfaces
847 found on the many VIA chipsets.
852 tristate "PXA DMA-capable PATA support"
855 This option enables support for harddrive attached to PXA CPU's bus.
857 NOTE: This driver utilizes PXA DMA controller, in case your hardware
858 is not capable of doing MWDMA, use pata_platform instead.
863 tristate "Winbond SL82C105 PATA support"
866 This option enables support for SL82C105 PATA devices found in the
867 Netwinder and some other systems
873 comment "PIO-only SFF controllers"
876 tristate "Atmel AVR32 PATA support (Experimental)"
877 depends on AVR32 && PLATFORM_AT32AP
879 This option enables support for the IDE devices on the
880 Atmel AT32AP platform.
885 tristate "PATA support for AT91SAM9260"
886 depends on ARM && SOC_AT91SAM9
888 This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.
892 config PATA_CMD640_PCI
893 tristate "CMD640 PCI PATA support (Experimental)"
896 This option enables support for the CMD640 PCI IDE
897 interface chip. Only the primary channel is currently
903 tristate "ISA Plug and Play PATA support"
906 This option enables support for ISA plug & play ATA
907 controllers such as those found on old soundcards.
911 config PATA_IXP4XX_CF
912 tristate "IXP4XX Compact Flash support"
913 depends on ARCH_IXP4XX
915 This option enables support for a Compact Flash connected on
916 the ixp4xx expansion bus. This driver had been written for
917 Loft/Avila boards in mind but can work with others.
922 tristate "Intel PATA MPIIX support"
925 This option enables support for MPIIX PATA support.
930 tristate "Nat Semi NS87410 PATA support"
933 This option enables support for the National Semiconductor
934 NS87410 PCI-IDE controller.
939 tristate "OPTI621/6215 PATA support (Very Experimental)"
942 This option enables full PIO support for the early Opti ATA
943 controllers found on some old motherboards.
948 tristate "Palm LifeDrive PATA support"
949 depends on MACH_PALMLD
951 This option enables support for Palm LifeDrive's internal ATA
952 port via the new ATA layer.
957 tristate "PCMCIA PATA support"
960 This option enables support for PCMCIA ATA interfaces, including
961 compact flash card adapters via the new ATA layer.
966 tristate "Generic platform device PATA support"
967 depends on EXPERT || PPC || HAVE_PATA_PLATFORM
969 This option enables support for generic directly connected ATA
970 devices commonly found on embedded systems.
974 config PATA_OF_PLATFORM
975 tristate "OpenFirmware platform device PATA support"
976 depends on PATA_PLATFORM && OF
978 This option enables support for generic directly connected ATA
979 devices commonly found on embedded systems with OpenFirmware
985 tristate "QDI VLB PATA support"
989 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
992 tristate "RouterBoard 532 PATA CompactFlash support"
993 depends on MIKROTIK_RB532
995 This option enables support for the RouterBoard 532
996 PATA CompactFlash controller.
1001 tristate "PC Tech RZ1000 PATA support"
1004 This option enables basic support for the PC Tech RZ1000/1
1005 PATA controllers via the new ATA layer
1009 config PATA_SAMSUNG_CF
1010 tristate "Samsung SoC PATA support"
1011 depends on SAMSUNG_DEV_IDE
1013 This option enables basic support for Samsung's S3C/S5P board
1014 PATA controllers via the new ATA layer
1018 config PATA_WINBOND_VLB
1019 tristate "Winbond W83759A VLB PATA support (Experimental)"
1023 Support for the Winbond W83759A controller on Vesa Local Bus
1026 comment "Generic fallback / legacy drivers"
1029 tristate "ACPI firmware driver for PATA"
1030 depends on ATA_ACPI && ATA_BMDMA
1032 This option enables an ACPI method driver which drives
1033 motherboard PATA controller interfaces through the ACPI
1034 firmware in the BIOS. This driver can sometimes handle
1035 otherwise unsupported hardware.
1038 tristate "Generic ATA support"
1039 depends on PCI && ATA_BMDMA
1041 This option enables support for generic BIOS configured
1042 ATA controllers via the new ATA layer
1047 tristate "Legacy ISA PATA support (Experimental)"
1048 depends on (ISA || PCI)
1050 This option enables support for ISA/VLB/PCI bus legacy PATA
1051 ports and allows them to be accessed via the new ATA layer.