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 && (ARCH_MXC || COMPILE_TEST)
121 This option enables support for the Freescale i.MX SoC's
127 tristate "Marvell EBU AHCI SATA support"
128 depends on ARCH_MVEBU
130 This option enables support for the Marvebu EBU SoC's
136 tristate "Allwinner sunxi AHCI SATA support"
137 depends on ARCH_SUNXI
139 This option enables support for the Allwinner sunxi SoC's
145 tristate "NVIDIA Tegra124 AHCI SATA support"
146 depends on ARCH_TEGRA
148 This option enables support for the NVIDIA Tegra124 SoC's
154 tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
157 This option enables support for APM X-Gene SoC SATA host controller.
160 tristate "Freescale 3.0Gbps SATA support"
163 This option enables support for Freescale 3.0Gbps SATA controller.
164 It can be found on MPC837x and MPC8315.
169 tristate "Initio 162x SATA support (Very Experimental)"
172 This option enables support for Initio 162x Serial ATA.
174 config SATA_ACARD_AHCI
175 tristate "ACard AHCI variant (ATP 8620)"
178 This option enables support for Acard.
183 tristate "Silicon Image 3124/3132 SATA support"
186 This option enables support for Silicon Image 3124/3132 Serial ATA.
191 bool "ATA SFF support (for legacy IDE and PATA)"
194 This option adds support for ATA controllers with SFF
195 compliant or similar programming interface.
197 SFF is the legacy IDE interface that has been around since
198 the dawn of time. Almost all PATA controllers have an
199 SFF interface. Many SATA controllers have an SFF interface
200 when configured into a legacy compatibility mode.
202 For users with exclusively modern controllers like AHCI,
203 Silicon Image 3124, or Marvell 6440, you may choose to
204 disable this unneeded SFF support.
210 comment "SFF controllers with custom DMA interface"
213 tristate "Pacific Digital ADMA support"
216 This option enables support for Pacific Digital ADMA controllers
220 config PATA_OCTEON_CF
221 tristate "OCTEON Boot Bus Compact Flash support"
222 depends on CAVIUM_OCTEON_SOC
224 This option enables a polled compact flash driver for use with
225 compact flash cards attached to the OCTEON boot bus.
230 tristate "Pacific Digital SATA QStor support"
233 This option enables support for Pacific Digital Serial ATA QStor.
238 tristate "Promise SATA SX4 support (Experimental)"
241 This option enables support for Promise Serial ATA SX4.
246 bool "ATA BMDMA support"
249 This option adds support for SFF ATA controllers with BMDMA
250 capability. BMDMA stands for bus-master DMA and is the
251 de facto DMA interface for SFF controllers.
257 comment "SATA SFF controllers with BMDMA"
260 tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
263 This option enables support for ICH5/6/7/8 Serial ATA
264 and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
270 tristate "DesignWare Cores SATA support"
273 This option enables support for the on-chip SATA controller of the
274 AppliedMicro processor 460EX.
278 config SATA_DWC_DEBUG
279 bool "Debugging driver version"
282 This option enables debugging output in the driver.
284 config SATA_DWC_VDEBUG
285 bool "Verbose debug output"
286 depends on SATA_DWC_DEBUG
288 This option enables the taskfile dumping and NCQ debugging.
291 tristate "Calxeda Highbank SATA support"
292 depends on ARCH_HIGHBANK || COMPILE_TEST
294 This option enables support for the Calxeda Highbank SoC's
300 tristate "Marvell SATA support"
301 depends on PCI || ARCH_DOVE || ARCH_KIRKWOOD || ARCH_MV78XX0 || \
302 ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
305 This option enables support for the Marvell Serial ATA family.
306 Currently supports 88SX[56]0[48][01] PCI(-X) chips,
307 as well as the newer [67]042 PCI-X/PCIe and SOC devices.
312 tristate "NVIDIA SATA support"
315 This option enables support for NVIDIA Serial ATA.
320 tristate "Promise SATA TX2/TX4 support"
323 This option enables support for Promise Serial ATA TX2/TX4.
328 tristate "Renesas R-Car SATA support"
329 depends on ARCH_SHMOBILE || COMPILE_TEST
331 This option enables support for Renesas R-Car Serial ATA.
336 tristate "Silicon Image SATA support"
339 This option enables support for Silicon Image Serial ATA.
344 tristate "SiS 964/965/966/180 SATA support"
348 This option enables support for SiS Serial ATA on
349 SiS 964/965/966/180 and Parallel ATA on SiS 180.
350 The PATA support for SiS 180 requires additionally to
351 enable the PATA_SIS driver in the config.
355 tristate "ServerWorks Frodo / Apple K2 SATA support"
358 This option enables support for Broadcom/Serverworks/Apple K2
364 tristate "ULi Electronics SATA support"
367 This option enables support for ULi Electronics SATA.
372 tristate "VIA SATA support"
375 This option enables support for VIA Serial ATA.
380 tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
383 This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
387 comment "PATA SFF controllers with BMDMA"
390 tristate "ALi PATA support"
393 This option enables support for the ALi ATA interfaces
394 found on the many ALi chipsets.
399 tristate "AMD/NVidia PATA support"
402 This option enables support for the AMD and NVidia PATA
403 interfaces found on the chipsets for Athlon/Athlon64.
407 config PATA_ARASAN_CF
408 tristate "ARASAN CompactFlash PATA Controller Support"
409 depends on ARCH_SPEAR13XX || COMPILE_TEST
410 depends on DMADEVICES
413 Say Y here to support the ARASAN CompactFlash PATA controller
416 tristate "ARTOP 6210/6260 PATA support"
419 This option enables support for ARTOP PATA controllers.
424 tristate "ATI PATA support"
427 This option enables support for the ATI ATA interfaces
428 found on the many ATI chipsets.
433 tristate "ARTOP/Acard ATP867X PATA support"
436 This option enables support for ARTOP/Acard ATP867X PATA
442 tristate "Blackfin 54x ATAPI support"
443 depends on BF542 || BF548 || BF549
445 This option enables support for the built-in ATAPI controller on
446 Blackfin 54x family chips.
451 tristate "CMD64x PATA support"
454 This option enables support for the CMD64x series chips
455 except for the CMD640.
460 tristate "CS5510/5520 PATA support"
461 depends on PCI && (X86_32 || COMPILE_TEST)
463 This option enables support for the Cyrix 5510/5520
464 companion chip used with the MediaGX/Geode processor family.
469 tristate "CS5530 PATA support"
470 depends on PCI && (X86_32 || COMPILE_TEST)
472 This option enables support for the Cyrix/NatSemi/AMD CS5530
473 companion chip used with the MediaGX/Geode processor family.
478 tristate "CS5535 PATA support (Experimental)"
479 depends on PCI && X86_32
481 This option enables support for the NatSemi/AMD CS5535
482 companion chip used with the Geode processor family.
487 tristate "CS5536 PATA support"
488 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
490 This option enables support for the AMD CS5536
491 companion chip used with the Geode LX processor family.
496 tristate "Cypress CY82C693 PATA support (Very Experimental)"
499 This option enables support for the Cypress/Contaq CY82C693
500 chipset found in some Alpha systems
505 tristate "EFAR SLC90E66 support"
508 This option enables support for the EFAR SLC90E66
509 IDE controller found on some older machines.
514 tristate "Cirrus Logic EP93xx PATA support"
515 depends on ARCH_EP93XX
517 This option enables support for the PATA controller in
518 the Cirrus Logic EP9312 and EP9315 ARM CPU.
523 tristate "HPT 366/368 PATA support"
526 This option enables support for the HPT 366 and 368
527 PATA controllers via the new ATA layer.
532 tristate "HPT 370/370A/371/372/374/302 PATA support"
535 This option enables support for the majority of the later HPT
536 PATA controllers via the new ATA layer.
541 tristate "HPT 371N/372N/302N PATA support"
544 This option enables support for the N variant HPT PATA
545 controllers via the new ATA layer.
550 tristate "HPT 343/363 PATA support"
553 This option enables support for the HPT 343/363
554 PATA controllers via the new ATA layer
558 config PATA_HPT3X3_DMA
559 bool "HPT 343/363 DMA support"
560 depends on PATA_HPT3X3
562 This option enables DMA support for the HPT343/363
563 controllers. Enable with care as there are still some
564 problems with DMA on this chipset.
567 tristate "Acorn ICS PATA support"
568 depends on ARM && ARCH_ACORN
570 On Acorn systems, say Y here if you wish to use the ICS PATA
571 interface card. This is not required for ICS partition support.
572 If you are unsure, say N to this.
575 tristate "PATA support for Freescale iMX"
578 This option enables support for the PATA host available on Freescale
584 tristate "IT8213 PATA support (Experimental)"
587 This option enables support for the ITE 821 PATA
588 controllers via the new ATA layer.
593 tristate "IT8211/2 PATA support"
596 This option enables support for the ITE 8211 and 8212
597 PATA controllers via the new ATA layer, including RAID
603 tristate "JMicron PATA support"
606 Enable support for the JMicron IDE controller, via the new
612 tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
615 Most IDE capable PowerMacs have IDE busses driven by a variant
616 of this controller which is part of the Apple chipset used on
617 most PowerMac models. Some models have multiple busses using
618 different chipsets, though generally, MacIO is one of them.
621 tristate "Marvell PATA support via legacy mode"
624 This option enables limited support for the Marvell 88SE61xx ATA
625 controllers. If you wish to use only the SATA ports then select
626 the AHCI driver alone. If you wish to the use the PATA port or
627 both SATA and PATA include this driver.
632 tristate "Freescale MPC52xx SoC internal IDE"
633 depends on PPC_MPC52xx && PPC_BESTCOMM
634 select PPC_BESTCOMM_ATA
636 This option enables support for integrated IDE controller
637 of the Freescale MPC52xx SoC.
642 tristate "NETCELL Revolution RAID support"
645 This option enables support for the Netcell Revolution RAID
651 tristate "Ninja32/Delkin Cardbus ATA support"
654 This option enables support for the Ninja32, Delkin and
655 possibly other brands of Cardbus ATA adapter
660 tristate "Nat Semi NS87415 PATA support"
663 This option enables support for the National Semiconductor
664 NS87415 PCI-IDE controller.
669 tristate "Intel PATA old PIIX support"
672 This option enables support for early PIIX PATA support.
677 tristate "OPTI FireStar PATA support (Very Experimental)"
680 This option enables DMA/PIO support for the later OPTi
681 controllers found on some old motherboards and in some
687 tristate "Promise PATA 2027x support"
690 This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
695 tristate "Older Promise PATA controller support"
698 This option enables support for the Promise 20246, 20262, 20263,
699 20265 and 20267 adapters.
704 tristate "RADISYS 82600 PATA support (Experimental)"
707 This option enables support for the RADISYS 82600
708 PATA controllers via the new ATA layer
713 tristate "RDC PATA support"
716 This option enables basic support for the later RDC PATA controllers
717 controllers via the new ATA layer. For the RDC 1010, you need to
718 enable the IT821X driver instead.
723 tristate "SC1200 PATA support"
724 depends on PCI && (X86_32 || COMPILE_TEST)
726 This option enables support for the NatSemi/AMD SC1200 SoC
727 companion chip used with the Geode processor family.
732 tristate "Toshiba's Cell Reference Set IDE support"
733 depends on PCI && PPC_CELLEB
735 This option enables support for the built-in IDE controller on
736 Toshiba Cell Reference Board.
741 tristate "Intel SCH PATA support"
744 This option enables support for Intel SCH PATA on the Intel
745 SCH (US15W, US15L, UL11L) series host controllers.
749 config PATA_SERVERWORKS
750 tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
753 This option enables support for the Serverworks OSB4/CSB5/CSB6 and
754 HT1000 PATA controllers, via the new ATA layer.
759 tristate "CMD / Silicon Image 680 PATA support"
762 This option enables support for CMD / Silicon Image 680 PATA.
767 tristate "SiS PATA support"
770 This option enables support for SiS PATA controllers
775 tristate "Toshiba Piccolo support (Experimental)"
778 Support for the Toshiba Piccolo controllers. Currently only the
779 primary channel is supported by this driver.
784 tristate "Compaq Triflex PATA support"
787 Enable support for the Compaq 'Triflex' IDE controller as found
788 on many Compaq Pentium-Pro systems, via the new ATA layer.
793 tristate "VIA PATA support"
796 This option enables support for the VIA PATA interfaces
797 found on the many VIA chipsets.
802 tristate "PXA DMA-capable PATA support"
805 This option enables support for harddrive attached to PXA CPU's bus.
807 NOTE: This driver utilizes PXA DMA controller, in case your hardware
808 is not capable of doing MWDMA, use pata_platform instead.
813 tristate "Winbond SL82C105 PATA support"
816 This option enables support for SL82C105 PATA devices found in the
817 Netwinder and some other systems
823 comment "PIO-only SFF controllers"
826 tristate "Atmel AVR32 PATA support (Experimental)"
827 depends on AVR32 && PLATFORM_AT32AP
829 This option enables support for the IDE devices on the
830 Atmel AT32AP platform.
835 tristate "PATA support for AT91SAM9260"
836 depends on ARM && SOC_AT91SAM9
838 This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.
842 config PATA_CMD640_PCI
843 tristate "CMD640 PCI PATA support (Experimental)"
846 This option enables support for the CMD640 PCI IDE
847 interface chip. Only the primary channel is currently
853 tristate "ISA Plug and Play PATA support"
856 This option enables support for ISA plug & play ATA
857 controllers such as those found on old soundcards.
861 config PATA_IXP4XX_CF
862 tristate "IXP4XX Compact Flash support"
863 depends on ARCH_IXP4XX
865 This option enables support for a Compact Flash connected on
866 the ixp4xx expansion bus. This driver had been written for
867 Loft/Avila boards in mind but can work with others.
872 tristate "Intel PATA MPIIX support"
875 This option enables support for MPIIX PATA support.
880 tristate "Nat Semi NS87410 PATA support"
883 This option enables support for the National Semiconductor
884 NS87410 PCI-IDE controller.
889 tristate "OPTI621/6215 PATA support (Very Experimental)"
892 This option enables full PIO support for the early Opti ATA
893 controllers found on some old motherboards.
898 tristate "Palm LifeDrive PATA support"
899 depends on MACH_PALMLD
901 This option enables support for Palm LifeDrive's internal ATA
902 port via the new ATA layer.
907 tristate "PCMCIA PATA support"
910 This option enables support for PCMCIA ATA interfaces, including
911 compact flash card adapters via the new ATA layer.
916 tristate "Generic platform device PATA support"
917 depends on EXPERT || PPC || HAVE_PATA_PLATFORM
919 This option enables support for generic directly connected ATA
920 devices commonly found on embedded systems.
924 config PATA_OF_PLATFORM
925 tristate "OpenFirmware platform device PATA support"
926 depends on PATA_PLATFORM && OF
928 This option enables support for generic directly connected ATA
929 devices commonly found on embedded systems with OpenFirmware
935 tristate "QDI VLB PATA support"
939 Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
942 tristate "RouterBoard 532 PATA CompactFlash support"
943 depends on MIKROTIK_RB532
945 This option enables support for the RouterBoard 532
946 PATA CompactFlash controller.
951 tristate "PC Tech RZ1000 PATA support"
954 This option enables basic support for the PC Tech RZ1000/1
955 PATA controllers via the new ATA layer
959 config PATA_SAMSUNG_CF
960 tristate "Samsung SoC PATA support"
961 depends on SAMSUNG_DEV_IDE
963 This option enables basic support for Samsung's S3C/S5P board
964 PATA controllers via the new ATA layer
968 config PATA_WINBOND_VLB
969 tristate "Winbond W83759A VLB PATA support (Experimental)"
973 Support for the Winbond W83759A controller on Vesa Local Bus
976 comment "Generic fallback / legacy drivers"
979 tristate "ACPI firmware driver for PATA"
980 depends on ATA_ACPI && ATA_BMDMA
982 This option enables an ACPI method driver which drives
983 motherboard PATA controller interfaces through the ACPI
984 firmware in the BIOS. This driver can sometimes handle
985 otherwise unsupported hardware.
988 tristate "Generic ATA support"
989 depends on PCI && ATA_BMDMA
991 This option enables support for generic BIOS configured
992 ATA controllers via the new ATA layer
997 tristate "Legacy ISA PATA support (Experimental)"
998 depends on (ISA || PCI)
1000 This option enables support for ISA/VLB/PCI bus legacy PATA
1001 ports and allows them to be accessed via the new ATA layer.