libata: improve EH internal command timeout handling
[safe/jmp/linux-2.6] / drivers / ata / Kconfig
index 8e136ff..ae84949 100644 (file)
@@ -2,11 +2,9 @@
 # SATA/PATA driver configuration
 #
 
-menu "Serial ATA (prod) and Parallel ATA (experimental) drivers"
+menuconfig ATA
+       tristate "Serial ATA (prod) and Parallel ATA (experimental) drivers"
        depends on HAS_IOMEM
-
-config ATA
-       tristate "ATA device support"
        depends on BLOCK
        depends on !(M32R || M68K) || BROKEN
        depends on !SUN4 || BROKEN
@@ -18,6 +16,11 @@ 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
@@ -25,8 +28,9 @@ config ATA_NONSTANDARD
        default n
 
 config ATA_ACPI
-       bool
+       bool "ATA ACPI Support"
        depends on ACPI && PCI
+       select ACPI_DOCK
        default y
        help
          This option adds support for ATA-related ACPI objects.
@@ -37,6 +41,13 @@ config ATA_ACPI
          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).
+
 config SATA_AHCI
        tristate "AHCI SATA support"
        depends on PCI
@@ -45,6 +56,43 @@ config SATA_AHCI
 
          If unsure, say N.
 
+config SATA_SIL24
+       tristate "Silicon Image 3124/3132 SATA support"
+       depends on PCI
+       help
+         This option enables support for Silicon Image 3124/3132 Serial ATA.
+
+         If unsure, say N.
+
+config SATA_FSL
+       tristate "Freescale 3.0Gbps SATA support"
+       depends on FSL_SOC
+       help
+         This option enables support for Freescale 3.0Gbps SATA controller.
+         It can be found on MPC837x and MPC8315.
+
+         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 uneeded SFF support.
+
+         If unsure, say Y.
+
+if ATA_SFF
+
 config SATA_SVW
        tristate "ServerWorks Frodo / Apple K2 SATA support"
        depends on PCI
@@ -66,7 +114,7 @@ config ATA_PIIX
 
 config SATA_MV
        tristate "Marvell SATA support (HIGHLY EXPERIMENTAL)"
-       depends on PCI && EXPERIMENTAL
+       depends on EXPERIMENTAL
        help
          This option enables support for the Marvell Serial ATA family.
          Currently supports 88SX[56]0[48][01] chips.
@@ -121,20 +169,12 @@ config SATA_SIL
 
          If unsure, say N.
 
-config SATA_SIL24
-       tristate "Silicon Image 3124/3132 SATA support"
-       depends on PCI
-       help
-         This option enables support for Silicon Image 3124/3132 Serial ATA.
-
-         If unsure, say N.
-
 config SATA_SIS
        tristate "SiS 964/965/966/180 SATA support"
        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.
@@ -165,11 +205,20 @@ config SATA_VITESSE
          If unsure, say N.
 
 config SATA_INIC162X
-       tristate "Initio 162x SATA support (HIGHLY EXPERIMENTAL)"
-       depends on PCI && EXPERIMENTAL
+       tristate "Initio 162x SATA support"
+       depends on PCI
        help
          This option enables support for Initio 162x Serial ATA.
 
+config PATA_ACPI
+       tristate "ACPI firmware driver for PATA"
+       depends on ATA_ACPI
+       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 PATA_ALI
        tristate "ALi PATA support (Experimental)"
        depends on PCI && EXPERIMENTAL
@@ -189,16 +238,25 @@ 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_AT32
+       tristate "Atmel AVR32 PATA support (Experimental)"
+       depends on AVR32 && PLATFORM_AT32AP && EXPERIMENTAL
+       help
+         This option enables support for the IDE devices on the
+         Atmel AT32AP platform.
+
+         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.
@@ -216,8 +274,8 @@ config PATA_CMD640_PCI
          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.
@@ -251,6 +309,15 @@ config PATA_CS5535
 
          If unsure, say N.
 
+config PATA_CS5536
+       tristate "CS5536 PATA support (Experimental)"
+       depends on PCI && X86 && !X86_64 && EXPERIMENTAL
+       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
@@ -279,8 +346,8 @@ config ATA_GENERIC
          If unsure, say N.
 
 config PATA_HPT366
-       tristate "HPT 366/368 PATA support (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.
@@ -306,7 +373,7 @@ config PATA_HPT3X2N
          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
@@ -314,6 +381,14 @@ config PATA_HPT3X3
 
          If unsure, say N.
 
+config PATA_HPT3X3_DMA
+       bool "HPT 343/363 DMA support (Experimental)"
+       depends on PATA_HPT3X3
+       help
+         This option enables DMA support for the HPT343/363
+         controllers. Enable with care as there are still some
+         problems with DMA on this chipset.
+
 config PATA_ISAPNP
        tristate "ISA Plug and Play PATA support (Experimental)"
        depends on EXPERIMENTAL && ISAPNP
@@ -412,6 +487,15 @@ config PATA_NETCELL
 
          If unsure, say N.
 
+config PATA_NINJA32
+       tristate "Ninja32/Delkin Cardbus ATA support (Experimental)"
+       depends on PCI && EXPERIMENTAL
+       help
+         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
@@ -421,6 +505,15 @@ config PATA_NS87410
 
          If unsure, say N.
 
+config PATA_NS87415
+       tristate "Nat Semi NS87415 PATA support (Experimental)"
+       depends on PCI && EXPERIMENTAL
+       help
+         This option enables support for the National Semiconductor
+         NS87415 PCI-IDE controller.
+
+         If unsure, say N.
+
 config PATA_OPTI
        tristate "OPTI621/6215 PATA support (Very Experimental)"
        depends on PCI && EXPERIMENTAL
@@ -473,6 +566,15 @@ config PATA_RADISYS
 
          If unsure, say N.
 
+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
@@ -549,15 +651,33 @@ config PATA_WINBOND_VLB
          Support for the Winbond W83759A controller on Vesa Local Bus
          systems.
 
+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 PATA_PLATFORM
        tristate "Generic platform device PATA support"
-       depends on EMBEDDED || ARCH_RPC
+       depends on EMBEDDED || ARCH_RPC || 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_ICSIDE
        tristate "Acorn ICS PATA support"
        depends on ARM && ARCH_ACORN
@@ -585,6 +705,23 @@ config PATA_SCC
 
          If unsure, say N.
 
-endif
-endmenu
+config PATA_SCH
+       tristate "Intel SCH PATA support"
+       depends on PCI
+       help
+         This option enables support for Intel SCH PATA on the Intel
+         SCH (US15W, US15L, UL11L) series host 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.
 
+endif # ATA_SFF
+endif # ATA