]> nv-tegra.nvidia Code Review - linux-3.10.git/blobdiff - drivers/ata/Kconfig
pata_platform: Remove CONFIG_HAVE_PATA_PLATFORM's dependencies.
[linux-3.10.git] / drivers / ata / Kconfig
index 3747457fee7a1f2180dbf0abf96281494c3ff050..c6b298d4c136c54a40fa7b4e4c13361000535642 100644 (file)
@@ -2,13 +2,19 @@
 # SATA/PATA driver configuration
 #
 
-menu "Serial ATA (prod) and Parallel ATA (experimental) drivers"
+config HAVE_PATA_PLATFORM
+       bool
+       help
+         This is an internal configuration node for any machine that
+         uses pata-platform driver to enable the relevant driver in the
+         configuration structure without having to submit endless patches
+         to update the PATA_PLATFORM entry.
 
-config ATA
-       tristate "ATA device support"
+menuconfig ATA
+       tristate "Serial ATA and Parallel ATA drivers"
+       depends on HAS_IOMEM
        depends on BLOCK
        depends on !(M32R || M68K) || BROKEN
-       depends on !SUN4 || BROKEN
        select SCSI
        ---help---
          If you want to use a ATA hard disk, ATA tape drive, ATA CD-ROM or
@@ -17,12 +23,50 @@ config ATA
          that "speaks" the ATA protocol, also called ATA controller),
          because you will be asked for it.
 
+         NOTE: ATA enables basic SCSI support; *however*,
+         'SCSI disk support', 'SCSI tape support', or
+         'SCSI CDROM support' may also be needed,
+         depending on your hardware configuration.
+
 if ATA
 
 config ATA_NONSTANDARD
        bool
        default n
 
+config ATA_VERBOSE_ERROR
+       bool "Verbose ATA error reporting"
+       default y
+       help
+         This option adds parsing of ATA command descriptions and error bits
+         in libata kernel output, making it easier to interpret.
+         This option will enlarge the kernel by approx. 6KB. Disable it only
+         if kernel size is more important than ease of debugging.
+
+         If unsure, say Y.
+
+config ATA_ACPI
+       bool "ATA ACPI Support"
+       depends on ACPI && PCI
+       default y
+       help
+         This option adds support for ATA-related ACPI objects.
+         These ACPI objects add the ability to retrieve taskfiles
+         from the ACPI BIOS and write them to the disk controller.
+         These objects may be related to performance, security,
+         power management, or other areas.
+         You can disable this at kernel boot time by using the
+         option libata.noacpi=1
+
+config SATA_PMP
+       bool "SATA Port Multiplier support"
+       default y
+       help
+         This option adds support for SATA Port Multipliers
+         (the SATA version of an ethernet hub, or SAS expander).
+
+comment "Controllers with non-SFF native interface"
+
 config SATA_AHCI
        tristate "AHCI SATA support"
        depends on PCI
@@ -31,42 +75,67 @@ config SATA_AHCI
 
          If unsure, say N.
 
-config SATA_SVW
-       tristate "ServerWorks Frodo / Apple K2 SATA support"
-       depends on PCI
+config SATA_AHCI_PLATFORM
+       tristate "Platform AHCI SATA support"
        help
-         This option enables support for Broadcom/Serverworks/Apple K2
-         SATA support.
+         This option enables support for Platform AHCI Serial ATA
+         controllers.
 
          If unsure, say N.
 
-config ATA_PIIX
-       tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
-       depends on PCI
+config SATA_FSL
+       tristate "Freescale 3.0Gbps SATA support"
+       depends on FSL_SOC
        help
-         This option enables support for ICH5/6/7/8 Serial ATA
-         and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
-         host controllers.
+         This option enables support for Freescale 3.0Gbps SATA controller.
+         It can be found on MPC837x and MPC8315.
 
          If unsure, say N.
 
-config SATA_MV
-       tristate "Marvell SATA support (HIGHLY EXPERIMENTAL)"
-       depends on PCI && EXPERIMENTAL
+config SATA_INIC162X
+       tristate "Initio 162x SATA support"
+       depends on PCI
        help
-         This option enables support for the Marvell Serial ATA family.
-         Currently supports 88SX[56]0[48][01] chips.
+         This option enables support for Initio 162x Serial ATA.
+
+config SATA_ACARD_AHCI
+       tristate "ACard AHCI variant (ATP 8620)"
+       depends on PCI
+       help
+         This option enables support for Acard.
 
          If unsure, say N.
 
-config SATA_NV
-       tristate "NVIDIA SATA support"
+config SATA_SIL24
+       tristate "Silicon Image 3124/3132 SATA support"
        depends on PCI
        help
-         This option enables support for NVIDIA Serial ATA.
+         This option enables support for Silicon Image 3124/3132 Serial ATA.
 
          If unsure, say N.
 
+config ATA_SFF
+       bool "ATA SFF support"
+       default y
+       help
+         This option adds support for ATA controllers with SFF
+         compliant or similar programming interface.
+
+         SFF is the legacy IDE interface that has been around since
+         the dawn of time.  Almost all PATA controllers have an
+         SFF interface.  Many SATA controllers have an SFF interface
+         when configured into a legacy compatibility mode.
+
+         For users with exclusively modern controllers like AHCI,
+         Silicon Image 3124, or Marvell 6440, you may choose to
+         disable this unneeded SFF support.
+
+         If unsure, say Y.
+
+if ATA_SFF
+
+comment "SFF controllers with custom DMA interface"
+
 config PDC_ADMA
        tristate "Pacific Digital ADMA support"
        depends on PCI
@@ -75,6 +144,15 @@ config PDC_ADMA
 
          If unsure, say N.
 
+config PATA_OCTEON_CF
+       tristate "OCTEON Boot Bus Compact Flash support"
+       depends on CPU_CAVIUM_OCTEON
+       help
+         This option enables a polled compact flash driver for use with
+         compact flash cards attached to the OCTEON boot bus.
+
+         If unsure, say N.
+
 config SATA_QSTOR
        tristate "Pacific Digital SATA QStor support"
        depends on PCI
@@ -83,35 +161,77 @@ config SATA_QSTOR
 
          If unsure, say N.
 
-config SATA_PROMISE
-       tristate "Promise SATA TX2/TX4 support"
+config SATA_SX4
+       tristate "Promise SATA SX4 support (Experimental)"
+       depends on PCI && EXPERIMENTAL
+       help
+         This option enables support for Promise Serial ATA SX4.
+
+         If unsure, say N.
+
+config ATA_BMDMA
+       bool "ATA BMDMA support"
+       default y
+       help
+         This option adds support for SFF ATA controllers with BMDMA
+         capability.  BMDMA stands for bus-master DMA and is the
+         de facto DMA interface for SFF controllers.
+
+         If unsure, say Y.
+
+if ATA_BMDMA
+
+comment "SATA SFF controllers with BMDMA"
+
+config ATA_PIIX
+       tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
        depends on PCI
        help
-         This option enables support for Promise Serial ATA TX2/TX4.
+         This option enables support for ICH5/6/7/8 Serial ATA
+         and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
+         host controllers.
 
          If unsure, say N.
 
-config SATA_SX4
-       tristate "Promise SATA SX4 support"
-       depends on PCI && EXPERIMENTAL
+config SATA_DWC
+       tristate "DesignWare Cores SATA support"
+       depends on 460EX
        help
-         This option enables support for Promise Serial ATA SX4.
+         This option enables support for the on-chip SATA controller of the
+         AppliedMicro processor 460EX.
 
          If unsure, say N.
 
-config SATA_SIL
-       tristate "Silicon Image SATA support"
+config SATA_MV
+       tristate "Marvell SATA support"
+       help
+         This option enables support for the Marvell Serial ATA family.
+         Currently supports 88SX[56]0[48][01] PCI(-X) chips,
+         as well as the newer [67]042 PCI-X/PCIe and SOC devices.
+
+         If unsure, say N.
+
+config SATA_NV
+       tristate "NVIDIA SATA support"
        depends on PCI
        help
-         This option enables support for Silicon Image Serial ATA.
+         This option enables support for NVIDIA Serial ATA.
 
          If unsure, say N.
 
-config SATA_SIL24
-       tristate "Silicon Image 3124/3132 SATA support"
+config SATA_PROMISE
+       tristate "Promise SATA TX2/TX4 support"
        depends on PCI
        help
-         This option enables support for Silicon Image 3124/3132 Serial ATA.
+         This option enables support for Promise Serial ATA TX2/TX4.
+
+         If unsure, say N.
+
+config SATA_SIL
+       tristate "Silicon Image SATA support"
+       depends on PCI
+       help
+         This option enables support for Silicon Image Serial ATA.
 
          If unsure, say N.
 
@@ -120,12 +240,21 @@ config SATA_SIS
        depends on PCI
        select PATA_SIS
        help
-         This option enables support for SiS Serial ATA on 
+         This option enables support for SiS Serial ATA on
          SiS 964/965/966/180 and Parallel ATA on SiS 180.
          The PATA support for SiS 180 requires additionally to
          enable the PATA_SIS driver in the config.
          If unsure, say N.
 
+config SATA_SVW
+       tristate "ServerWorks Frodo / Apple K2 SATA support"
+       depends on PCI
+       help
+         This option enables support for Broadcom/Serverworks/Apple K2
+         SATA support.
+
+         If unsure, say N.
+
 config SATA_ULI
        tristate "ULi Electronics SATA support"
        depends on PCI
@@ -150,20 +279,11 @@ config SATA_VITESSE
 
          If unsure, say N.
 
-config SATA_INIC162X
-       tristate "Initio 162x SATA support (HIGHLY EXPERIMENTAL)"
-       depends on PCI && EXPERIMENTAL
-       help
-         This option enables support for Initio 162x Serial ATA.
-
-config SATA_INTEL_COMBINED
-       bool
-       depends on IDE=y && !BLK_DEV_IDE_SATA && (SATA_AHCI || ATA_PIIX)
-       default y
+comment "PATA SFF controllers with BMDMA"
 
 config PATA_ALI
-       tristate "ALi PATA support (Experimental)"
-       depends on PCI && EXPERIMENTAL
+       tristate "ALi PATA support"
+       depends on PCI
        help
          This option enables support for the ALi ATA interfaces
          found on the many ALi chipsets.
@@ -171,7 +291,7 @@ config PATA_ALI
          If unsure, say N.
 
 config PATA_AMD
-       tristate "AMD/NVidia PATA support (Experimental)"
+       tristate "AMD/NVidia PATA support"
        depends on PCI
        help
          This option enables support for the AMD and NVidia PATA
@@ -180,25 +300,43 @@ config PATA_AMD
          If unsure, say N.
 
 config PATA_ARTOP
-       tristate "ARTOP 6210/6260 PATA support (Experimental)"
-       depends on PCI && EXPERIMENTAL
+       tristate "ARTOP 6210/6260 PATA support"
+       depends on PCI
        help
          This option enables support for ARTOP PATA controllers.
 
          If unsure, say N.
 
 config PATA_ATIIXP
-       tristate "ATI PATA support (Experimental)"
-       depends on PCI && EXPERIMENTAL
+       tristate "ATI PATA support"
+       depends on PCI
        help
          This option enables support for the ATI ATA interfaces
          found on the many ATI chipsets.
 
          If unsure, say N.
 
+config PATA_ATP867X
+       tristate "ARTOP/Acard ATP867X PATA support"
+       depends on PCI
+       help
+         This option enables support for ARTOP/Acard ATP867X PATA
+         controllers.
+
+         If unsure, say N.
+
+config PATA_BF54X
+       tristate "Blackfin 54x ATAPI support"
+       depends on BF542 || BF548 || BF549
+       help
+         This option enables support for the built-in ATAPI controller on
+         Blackfin 54x family chips.
+
+         If unsure, say N.
+
 config PATA_CMD64X
-       tristate "CMD64x PATA support (Very Experimental)"
-       depends on PCI&& EXPERIMENTAL
+       tristate "CMD64x PATA support"
+       depends on PCI
        help
          This option enables support for the CMD64x series chips
          except for the CMD640.
@@ -215,8 +353,8 @@ config PATA_CS5520
          If unsure, say N.
 
 config PATA_CS5530
-       tristate "CS5530 PATA support (Experimental)"
-       depends on PCI && EXPERIMENTAL
+       tristate "CS5530 PATA support"
+       depends on PCI
        help
          This option enables support for the Cyrix/NatSemi/AMD CS5530
          companion chip used with the MediaGX/Geode processor family.
@@ -232,6 +370,15 @@ config PATA_CS5535
 
          If unsure, say N.
 
+config PATA_CS5536
+       tristate "CS5536 PATA support"
+       depends on PCI
+       help
+         This option enables support for the AMD CS5536
+         companion chip used with the Geode LX processor family.
+
+         If unsure, say N.
+
 config PATA_CYPRESS
        tristate "Cypress CY82C693 PATA support (Very Experimental)"
        depends on PCI && EXPERIMENTAL
@@ -250,18 +397,9 @@ config PATA_EFAR
 
          If unsure, say N.
 
-config ATA_GENERIC
-       tristate "Generic ATA support"
-       depends on PCI
-       help
-         This option enables support for generic BIOS configured
-         ATA controllers via the new ATA layer
-
-         If unsure, say N.
-
 config PATA_HPT366
-       tristate "HPT 366/368 PATA support (Very Experimental)"
-       depends on PCI && EXPERIMENTAL
+       tristate "HPT 366/368 PATA support"
+       depends on PCI
        help
          This option enables support for the HPT 366 and 368
          PATA controllers via the new ATA layer.
@@ -269,8 +407,8 @@ config PATA_HPT366
          If unsure, say N.
 
 config PATA_HPT37X
-       tristate "HPT 370/370A/371/372/374/302 PATA support (Very Experimental)"
-       depends on PCI && EXPERIMENTAL
+       tristate "HPT 370/370A/371/372/374/302 PATA support"
+       depends on PCI
        help
          This option enables support for the majority of the later HPT
          PATA controllers via the new ATA layer.
@@ -278,16 +416,16 @@ config PATA_HPT37X
          If unsure, say N.
 
 config PATA_HPT3X2N
-       tristate "HPT 372N/302N PATA support (Very Experimental)"
-       depends on PCI && EXPERIMENTAL
+       tristate "HPT 371N/372N/302N PATA support"
+       depends on PCI
        help
          This option enables support for the N variant HPT PATA
-         controllers via the new ATA layer
+         controllers via the new ATA layer.
 
          If unsure, say N.
 
 config PATA_HPT3X3
-       tristate "HPT 343/363 PATA support (Experimental)"
+       tristate "HPT 343/363 PATA support"
        depends on PCI
        help
          This option enables support for the HPT 343/363
@@ -295,24 +433,21 @@ config PATA_HPT3X3
 
          If unsure, say N.
 
-config PATA_ISAPNP
-       tristate "ISA Plug and Play PATA support (Very Experimental)"
-       depends on EXPERIMENTAL && ISAPNP
+config PATA_HPT3X3_DMA
+       bool "HPT 343/363 DMA support"
+       depends on PATA_HPT3X3
        help
-         This option enables support for ISA plug & play ATA
-         controllers such as those found on old soundcards.
+         This option enables DMA support for the HPT343/363
+         controllers. Enable with care as there are still some
+         problems with DMA on this chipset.
 
-         If unsure, say N.
-
-config PATA_IT821X
-       tristate "IT8211/2 PATA support (Experimental)"
-       depends on PCI && EXPERIMENTAL
+config PATA_ICSIDE
+       tristate "Acorn ICS PATA support"
+       depends on ARM && ARCH_ACORN
        help
-         This option enables support for the ITE 8211 and 8212
-         PATA controllers via the new ATA layer, including RAID
-         mode.
-
-         If unsure, say N.
+         On Acorn systems, say Y here if you wish to use the ICS PATA
+         interface card.  This is not required for ICS partition support.
+         If you are unsure, say N to this.
 
 config PATA_IT8213
        tristate "IT8213 PATA support (Experimental)"
@@ -323,91 +458,87 @@ config PATA_IT8213
 
          If unsure, say N.
 
-config PATA_JMICRON
-       tristate "JMicron PATA support"
+config PATA_IT821X
+       tristate "IT8211/2 PATA support"
        depends on PCI
        help
-         Enable support for the JMicron IDE controller, via the new
-         ATA layer.
+         This option enables support for the ITE 8211 and 8212
+         PATA controllers via the new ATA layer, including RAID
+         mode.
 
          If unsure, say N.
 
-config PATA_LEGACY
-       tristate "Legacy ISA PATA support (Experimental)"
-       depends on ISA && EXPERIMENTAL
+config PATA_JMICRON
+       tristate "JMicron PATA support"
+       depends on PCI
        help
-         This option enables support for ISA/VLB bus legacy PATA
-         ports and allows them to be accessed via the new ATA layer.
+         Enable support for the JMicron IDE controller, via the new
+         ATA layer.
 
          If unsure, say N.
 
-config PATA_TRIFLEX
-       tristate "Compaq Triflex PATA support"
-       depends on PCI
+config PATA_MACIO
+       tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
+       depends on PPC_PMAC
        help
-         Enable support for the Compaq 'Triflex' IDE controller as found
-         on many Compaq Pentium-Pro systems, via the new ATA layer.
-
-         If unsure, say N.
+         Most IDE capable PowerMacs have IDE busses driven by a variant
+          of this controller which is part of the Apple chipset used on
+          most PowerMac models. Some models have multiple busses using
+          different chipsets, though generally, MacIO is one of them.
 
 config PATA_MARVELL
        tristate "Marvell PATA support via legacy mode"
        depends on PCI
        help
-         This option enables limited support for the Marvell 88SE6145 ATA
-         controller.
+         This option enables limited support for the Marvell 88SE61xx ATA
+         controllers. If you wish to use only the SATA ports then select
+         the AHCI driver alone. If you wish to the use the PATA port or
+         both SATA and PATA include this driver.
 
          If unsure, say N.
 
 config PATA_MPC52xx
        tristate "Freescale MPC52xx SoC internal IDE"
-       depends on PPC_MPC52xx
+       depends on PPC_MPC52xx && PPC_BESTCOMM
+       select PPC_BESTCOMM_ATA
        help
          This option enables support for integrated IDE controller
          of the Freescale MPC52xx SoC.
 
          If unsure, say N.
 
-config PATA_MPIIX
-       tristate "Intel PATA MPIIX support"
+config PATA_NETCELL
+       tristate "NETCELL Revolution RAID support"
        depends on PCI
        help
-         This option enables support for MPIIX PATA support.
-
-         If unsure, say N.
-
-config PATA_OLDPIIX
-       tristate "Intel PATA old PIIX support (Experimental)"
-       depends on PCI && EXPERIMENTAL
-       help
-         This option enables support for old(?) PIIX PATA support.
+         This option enables support for the Netcell Revolution RAID
+         PATA controller.
 
          If unsure, say N.
 
-config PATA_NETCELL
-       tristate "NETCELL Revolution RAID support"
+config PATA_NINJA32
+       tristate "Ninja32/Delkin Cardbus ATA support"
        depends on PCI
        help
-         This option enables support for the Netcell Revolution RAID
-         PATA controller.
+         This option enables support for the Ninja32, Delkin and
+         possibly other brands of Cardbus ATA adapter
 
          If unsure, say N.
 
-config PATA_NS87410
-       tristate "Nat Semi NS87410 PATA support (Experimental)"
-       depends on PCI && EXPERIMENTAL
+config PATA_NS87415
+       tristate "Nat Semi NS87415 PATA support"
+       depends on PCI
        help
          This option enables support for the National Semiconductor
-         NS87410 PCI-IDE controller.
+         NS87415 PCI-IDE controller.
 
          If unsure, say N.
 
-config PATA_OPTI
-       tristate "OPTI621/6215 PATA support (Very Experimental)"
-       depends on PCI && EXPERIMENTAL
+config PATA_OLDPIIX
+       tristate "Intel PATA old PIIX support"
+       depends on PCI
        help
-         This option enables full PIO support for the early Opti ATA
-         controllers found on some old motherboards.
+         This option enables support for early PIIX PATA support.
 
          If unsure, say N.
 
@@ -417,36 +548,29 @@ config PATA_OPTIDMA
        help
          This option enables DMA/PIO support for the later OPTi
          controllers found on some old motherboards and in some
-         latops
+         laptops.
 
          If unsure, say N.
 
-config PATA_PCMCIA
-       tristate "PCMCIA PATA support"
-       depends on PCMCIA
+config PATA_PDC2027X
+       tristate "Promise PATA 2027x support"
+       depends on PCI
        help
-         This option enables support for PCMCIA ATA interfaces, including
-         compact flash card adapters via the new ATA layer.
+         This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
 
          If unsure, say N.
 
 config PATA_PDC_OLD
-       tristate "Older Promise PATA controller support (Very Experimental)"
-       depends on PCI && EXPERIMENTAL
+       tristate "Older Promise PATA controller support"
+       depends on PCI
        help
          This option enables support for the Promise 20246, 20262, 20263,
          20265 and 20267 adapters.
 
          If unsure, say N.
 
-config PATA_QDI
-       tristate "QDI VLB PATA support"
-       depends on ISA
-       help
-         Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
-
 config PATA_RADISYS
-       tristate "RADISYS 82600 PATA support (Very experimental)"
+       tristate "RADISYS 82600 PATA support (Experimental)"
        depends on PCI && EXPERIMENTAL
        help
          This option enables support for the RADISYS 82600
@@ -454,38 +578,49 @@ config PATA_RADISYS
 
          If unsure, say N.
 
-config PATA_RZ1000
-       tristate "PC Tech RZ1000 PATA support"
+config PATA_RDC
+       tristate "RDC PATA support"
        depends on PCI
        help
-         This option enables basic support for the PC Tech RZ1000/1
-         PATA controllers via the new ATA layer
+         This option enables basic support for the later RDC PATA controllers
+         controllers via the new ATA layer. For the RDC 1010, you need to
+         enable the IT821X driver instead.
 
          If unsure, say N.
 
 config PATA_SC1200
-       tristate "SC1200 PATA support (Raving Lunatic)"
-       depends on PCI && EXPERIMENTAL
+       tristate "SC1200 PATA support"
+       depends on PCI
        help
          This option enables support for the NatSemi/AMD SC1200 SoC
          companion chip used with the Geode processor family.
 
          If unsure, say N.
 
-config PATA_SERVERWORKS
-       tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support (Experimental)"
-       depends on PCI && EXPERIMENTAL
+config PATA_SCC
+       tristate "Toshiba's Cell Reference Set IDE support"
+       depends on PCI && PPC_CELLEB
        help
-         This option enables support for the Serverworks OSB4/CSB5/CSB6 and
-         HT1000 PATA controllers, via the new ATA layer.
+         This option enables support for the built-in IDE controller on
+         Toshiba Cell Reference Board.
 
          If unsure, say N.
 
-config PATA_PDC2027X
-       tristate "Promise PATA 2027x support"
+config PATA_SCH
+       tristate "Intel SCH PATA support"
        depends on PCI
        help
-         This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
+         This option enables support for Intel SCH PATA on the Intel
+         SCH (US15W, US15L, UL11L) series host controllers.
+
+         If unsure, say N.
+
+config PATA_SERVERWORKS
+       tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
+       depends on PCI
+       help
+         This option enables support for the Serverworks OSB4/CSB5/CSB6 and
+         HT1000 PATA controllers, via the new ATA layer.
 
          If unsure, say N.
 
@@ -498,13 +633,31 @@ config PATA_SIL680
          If unsure, say N.
 
 config PATA_SIS
-       tristate "SiS PATA support (Experimental)"
-       depends on PCI && EXPERIMENTAL
+       tristate "SiS PATA support"
+       depends on PCI
        help
          This option enables support for SiS PATA controllers
 
          If unsure, say N.
 
+config PATA_TOSHIBA
+       tristate "Toshiba Piccolo support (Experimental)"
+       depends on PCI && EXPERIMENTAL
+       help
+         Support for the Toshiba Piccolo controllers. Currently only the
+         primary channel is supported by this driver.
+
+         If unsure, say N.
+
+config PATA_TRIFLEX
+       tristate "Compaq Triflex PATA support"
+       depends on PCI
+       help
+         Enable support for the Compaq 'Triflex' IDE controller as found
+         on many Compaq Pentium-Pro systems, via the new ATA layer.
+
+         If unsure, say N.
+
 config PATA_VIA
        tristate "VIA PATA support"
        depends on PCI
@@ -514,6 +667,17 @@ config PATA_VIA
 
          If unsure, say N.
 
+config PATA_PXA
+       tristate "PXA DMA-capable PATA support"
+       depends on ARCH_PXA
+       help
+         This option enables support for harddrive attached to PXA CPU's bus.
+
+         NOTE: This driver utilizes PXA DMA controller, in case your hardware
+               is not capable of doing MWDMA, use pata_platform instead.
+
+         If unsure, say N.
+
 config PATA_WINBOND
        tristate "Winbond SL82C105 PATA support"
        depends on PCI
@@ -523,19 +687,43 @@ config PATA_WINBOND
 
          If unsure, say N.
 
-config PATA_WINBOND_VLB
-       tristate "Winbond W83759A VLB PATA support (Experimental)"
-       depends on ISA && EXPERIMENTAL
+endif # ATA_BMDMA
+
+comment "PIO-only SFF controllers"
+
+config PATA_AT32
+       tristate "Atmel AVR32 PATA support (Experimental)"
+       depends on AVR32 && PLATFORM_AT32AP && EXPERIMENTAL
        help
-         Support for the Winbond W83759A controller on Vesa Local Bus
-         systems.
+         This option enables support for the IDE devices on the
+         Atmel AT32AP platform.
 
-config PATA_PLATFORM
-       tristate "Generic platform device PATA support"
-       depends on EMBEDDED
+         If unsure, say N.
+
+config PATA_AT91
+       tristate "PATA support for AT91SAM9260"
+       depends on ARM && ARCH_AT91
        help
-         This option enables support for generic directly connected ATA
-         devices commonly found on embedded systems.
+         This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.
+
+         If unsure, say N.
+
+config PATA_CMD640_PCI
+       tristate "CMD640 PCI PATA support (Experimental)"
+       depends on PCI && EXPERIMENTAL
+       help
+         This option enables support for the CMD640 PCI IDE
+         interface chip. Only the primary channel is currently
+         supported.
+
+         If unsure, say N.
+
+config PATA_ISAPNP
+       tristate "ISA Plug and Play PATA support"
+       depends on ISAPNP
+       help
+         This option enables support for ISA plug & play ATA
+         controllers such as those found on old soundcards.
 
          If unsure, say N.
 
@@ -549,6 +737,138 @@ config PATA_IXP4XX_CF
 
          If unsure, say N.
 
-endif
-endmenu
+config PATA_MPIIX
+       tristate "Intel PATA MPIIX support"
+       depends on PCI
+       help
+         This option enables support for MPIIX PATA support.
+
+         If unsure, say N.
+
+config PATA_NS87410
+       tristate "Nat Semi NS87410 PATA support"
+       depends on PCI
+       help
+         This option enables support for the National Semiconductor
+         NS87410 PCI-IDE controller.
+
+         If unsure, say N.
+
+config PATA_OPTI
+       tristate "OPTI621/6215 PATA support (Very Experimental)"
+       depends on PCI && EXPERIMENTAL
+       help
+         This option enables full PIO support for the early Opti ATA
+         controllers found on some old motherboards.
+
+         If unsure, say N.
+
+config PATA_PALMLD
+       tristate "Palm LifeDrive PATA support"
+       depends on MACH_PALMLD
+       help
+         This option enables support for Palm LifeDrive's internal ATA
+         port via the new ATA layer.
+
+         If unsure, say N.
+
+config PATA_PCMCIA
+       tristate "PCMCIA PATA support"
+       depends on PCMCIA
+       help
+         This option enables support for PCMCIA ATA interfaces, including
+         compact flash card adapters via the new ATA layer.
+
+         If unsure, say N.
+
+config PATA_PLATFORM
+       tristate "Generic platform device PATA support"
+       depends on EMBEDDED || PPC || HAVE_PATA_PLATFORM
+       help
+         This option enables support for generic directly connected ATA
+         devices commonly found on embedded systems.
+
+         If unsure, say N.
+
+config PATA_OF_PLATFORM
+       tristate "OpenFirmware platform device PATA support"
+       depends on PATA_PLATFORM && PPC_OF
+       help
+         This option enables support for generic directly connected ATA
+         devices commonly found on embedded systems with OpenFirmware
+         bindings.
+
+         If unsure, say N.
+
+config PATA_QDI
+       tristate "QDI VLB PATA support"
+       depends on ISA
+       help
+         Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
+
+config PATA_RB532
+       tristate "RouterBoard 532 PATA CompactFlash support"
+       depends on MIKROTIK_RB532
+       help
+         This option enables support for the RouterBoard 532
+         PATA CompactFlash controller.
+
+         If unsure, say N.
+
+config PATA_RZ1000
+       tristate "PC Tech RZ1000 PATA support"
+       depends on PCI
+       help
+         This option enables basic support for the PC Tech RZ1000/1
+         PATA controllers via the new ATA layer
+
+         If unsure, say N.
+
+config PATA_SAMSUNG_CF
+       tristate "Samsung SoC PATA support"
+       depends on SAMSUNG_DEV_IDE
+       help
+         This option enables basic support for Samsung's S3C/S5P board
+         PATA controllers via the new ATA layer
+
+         If unsure, say N.
+
+config PATA_WINBOND_VLB
+       tristate "Winbond W83759A VLB PATA support (Experimental)"
+       depends on ISA && EXPERIMENTAL
+       select PATA_LEGACY
+       help
+         Support for the Winbond W83759A controller on Vesa Local Bus
+         systems.
+
+comment "Generic fallback / legacy drivers"
+
+config PATA_ACPI
+       tristate "ACPI firmware driver for PATA"
+       depends on ATA_ACPI && ATA_BMDMA
+       help
+         This option enables an ACPI method driver which drives
+         motherboard PATA controller interfaces through the ACPI
+         firmware in the BIOS. This driver can sometimes handle
+         otherwise unsupported hardware.
+
+config ATA_GENERIC
+       tristate "Generic ATA support"
+       depends on PCI && ATA_BMDMA
+       help
+         This option enables support for generic BIOS configured
+         ATA controllers via the new ATA layer
+
+         If unsure, say N.
+
+config PATA_LEGACY
+       tristate "Legacy ISA PATA support (Experimental)"
+       depends on (ISA || PCI) && EXPERIMENTAL
+       help
+         This option enables support for ISA/VLB/PCI bus legacy PATA
+         ports and allows them to be accessed via the new ATA layer.
+
+         If unsure, say N.
 
+endif # ATA_SFF
+endif # ATA