]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/ide/Kconfig
ide/Kconfig: use 'on-board' instead of 'built-in' in config options
[linux-2.6-omap-h63xx.git] / drivers / ide / Kconfig
index 4200251ff635e7b7d303e17dbbda00637f6e33ef..92b01170d8f35bb0ad7ff6df059929a52997d77f 100644 (file)
@@ -152,9 +152,22 @@ config BLK_DEV_IDEDISK
          If unsure, say Y.
 
 config IDEDISK_MULTI_MODE
          If unsure, say Y.
 
 config IDEDISK_MULTI_MODE
-       bool "Use multi-mode by default"
-       help
-         If you get this error, try to say Y here:
+       bool "Use multiple sector mode for Programmed Input/Output by default"
+       help
+         This setting is irrelevant for most IDE disks, with direct memory
+         access, to which multiple sector mode does not apply. Multiple sector
+         mode is a feature of most modern IDE hard drives, permitting the
+         transfer of multiple sectors per Programmed Input/Output interrupt,
+         rather than the usual one sector per interrupt. When this feature is
+         enabled, it can reduce operating system overhead for disk Programmed
+         Input/Output. On some systems, it also can increase the data
+         throughput of Programmed Input/Output. Some drives, however, seemed
+         to run slower with multiple sector mode enabled. Some drives claimed
+         to support multiple sector mode, but lost data at some settings.
+         Under rare circumstances, such failures could result in massive
+         filesystem corruption.
+
+         If you get the following error, try to say Y here:
 
          hda: set_multmode: status=0x51 { DriveReady SeekComplete Error }
          hda: set_multmode: error=0x04 { DriveStatusError }
 
          hda: set_multmode: status=0x51 { DriveReady SeekComplete Error }
          hda: set_multmode: error=0x04 { DriveStatusError }
@@ -190,10 +203,6 @@ config BLK_DEV_IDECD
          CD-ROM drive, you can say N to all other CD-ROM options, but be sure
          to say Y or M to "ISO 9660 CD-ROM file system support".
 
          CD-ROM drive, you can say N to all other CD-ROM options, but be sure
          to say Y or M to "ISO 9660 CD-ROM file system support".
 
-         Note that older versions of LILO (LInux LOader) cannot properly deal
-         with IDE/ATAPI CD-ROMs, so install LILO 16 or higher, available from
-         <http://lilo.go.dyndns.org/>.
-
          To compile this driver as a module, choose M here: the
          module will be called ide-cd.
 
          To compile this driver as a module, choose M here: the
          module will be called ide-cd.
 
@@ -304,12 +313,19 @@ comment "IDE chipset support/bugfixes"
 
 config IDE_GENERIC
        tristate "generic/default IDE chipset support"
 
 config IDE_GENERIC
        tristate "generic/default IDE chipset support"
-       default H8300
        help
          If unsure, say N.
 
        help
          If unsure, say N.
 
+config BLK_DEV_PLATFORM
+       tristate "Platform driver for IDE interfaces"
+       help
+         This is the platform IDE driver, used mostly for Memory Mapped
+         IDE devices, like Compact Flashes running in True IDE mode.
+
+         If unsure, say N.
+
 config BLK_DEV_CMD640
 config BLK_DEV_CMD640
-       bool "CMD640 chipset bugfix/support"
+       tristate "CMD640 chipset bugfix/support"
        depends on X86
        ---help---
          The CMD-Technologies CMD640 IDE chip is used on many common 486 and
        depends on X86
        ---help---
          The CMD-Technologies CMD640 IDE chip is used on many common 486 and
@@ -343,39 +359,39 @@ config BLK_DEV_CMD640_ENHANCED
          Otherwise say N.
 
 config BLK_DEV_IDEPNP
          Otherwise say N.
 
 config BLK_DEV_IDEPNP
-       bool "PNP EIDE support"
+       tristate "PNP EIDE support"
        depends on PNP
        depends on PNP
-       select IDE_GENERIC
        help
          If you have a PnP (Plug and Play) compatible EIDE card and
          would like the kernel to automatically detect and activate
          it, say Y here.
 
        help
          If you have a PnP (Plug and Play) compatible EIDE card and
          would like the kernel to automatically detect and activate
          it, say Y here.
 
+if PCI
+
+comment "PCI IDE chipsets support"
+
 config BLK_DEV_IDEPCI
 config BLK_DEV_IDEPCI
-       bool "PCI IDE chipset support" if PCI
-       default BLK_DEV_IDEDMA_PMAC if PPC_PMAC && BLK_DEV_IDEDMA_PMAC
-       help
-         Say Y here for PCI systems which use IDE drive(s).
-         This option helps the IDE driver to automatically detect and
-         configure all PCI-based IDE interfaces in your system.
+       bool
 
 
-config IDEPCI_SHARE_IRQ
-       bool "Sharing PCI IDE interrupts support"
-       depends on PCI && BLK_DEV_IDEPCI
+config IDEPCI_PCIBUS_ORDER
+       bool "Probe IDE PCI devices in the PCI bus order (DEPRECATED)"
+       depends on BLK_DEV_IDE=y && BLK_DEV_IDEPCI
+       default y
        help
        help
-         Some ATA/IDE chipsets have hardware support which allows for
-         sharing a single IRQ with other cards. To enable support for
-         this in the ATA/IDE driver, say Y here.
+         Probe IDE PCI devices in the order in which they appear on the
+         PCI bus (i.e. 00:1f.1 PCI device before 02:01.0 PCI device)
+         instead of the order in which IDE PCI host drivers are loaded.
 
 
-         It is safe to say Y to this question, in most cases.
-         If unsure, say N.
+         Please note that this method of assuring stable naming of
+         IDE devices is unreliable and use other means for achieving
+         it (i.e. udev).
 
 
-config IDEPCI_PCIBUS_ORDER
-       def_bool PCI && BLK_DEV_IDE=y && BLK_DEV_IDEPCI
+         If in doubt, say N.
 
 
+# TODO: split it on per host driver config options (or module parameters)
 config BLK_DEV_OFFBOARD
 config BLK_DEV_OFFBOARD
-       bool "Boot off-board chipsets first support"
-       depends on PCI && BLK_DEV_IDEPCI
+       bool "Boot off-board chipsets first support (DEPRECATED)"
+       depends on BLK_DEV_IDEPCI && (BLK_DEV_AEC62XX || BLK_DEV_GENERIC || BLK_DEV_HPT34X || BLK_DEV_HPT366 || BLK_DEV_PDC202XX_NEW || BLK_DEV_PDC202XX_OLD || BLK_DEV_TC86C001)
        help
          Normally, IDE controllers built into the motherboard (on-board
          controllers) are assigned to ide0 and ide1 while those on add-in PCI
        help
          Normally, IDE controllers built into the motherboard (on-board
          controllers) are assigned to ide0 and ide1 while those on add-in PCI
@@ -394,25 +410,31 @@ config BLK_DEV_OFFBOARD
          Note that, if you do this, the order of the hd* devices will be
          rearranged which may require modification of fstab and other files.
 
          Note that, if you do this, the order of the hd* devices will be
          rearranged which may require modification of fstab and other files.
 
+         Please also note that this method of assuring stable naming of
+         IDE devices is unreliable and use other means for achieving it
+         (i.e. udev).
+
          If in doubt, say N.
 
 config BLK_DEV_GENERIC
        tristate "Generic PCI IDE Chipset Support"
          If in doubt, say N.
 
 config BLK_DEV_GENERIC
        tristate "Generic PCI IDE Chipset Support"
-       depends on BLK_DEV_IDEPCI
+       select BLK_DEV_IDEPCI
         help
           This option provides generic support for various PCI IDE Chipsets
           which otherwise might not be supported.
 
 config BLK_DEV_OPTI621
        tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)"
         help
           This option provides generic support for various PCI IDE Chipsets
           which otherwise might not be supported.
 
 config BLK_DEV_OPTI621
        tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)"
-       depends on PCI && BLK_DEV_IDEPCI && EXPERIMENTAL
+       depends on EXPERIMENTAL
+       select BLK_DEV_IDEPCI
        help
          This is a driver for the OPTi 82C621 EIDE controller.
          Please read the comments at the top of <file:drivers/ide/pci/opti621.c>.
 
 config BLK_DEV_RZ1000
        tristate "RZ1000 chipset bugfix/support"
        help
          This is a driver for the OPTi 82C621 EIDE controller.
          Please read the comments at the top of <file:drivers/ide/pci/opti621.c>.
 
 config BLK_DEV_RZ1000
        tristate "RZ1000 chipset bugfix/support"
-       depends on PCI && BLK_DEV_IDEPCI && X86
+       depends on X86
+       select BLK_DEV_IDEPCI
        help
          The PC-Technologies RZ1000 IDE chip is used on many common 486 and
          Pentium motherboards, usually along with the "Neptune" chipset.
        help
          The PC-Technologies RZ1000 IDE chip is used on many common 486 and
          Pentium motherboards, usually along with the "Neptune" chipset.
@@ -423,43 +445,12 @@ config BLK_DEV_RZ1000
          things will operate 100% reliably.
 
 config BLK_DEV_IDEDMA_PCI
          things will operate 100% reliably.
 
 config BLK_DEV_IDEDMA_PCI
-       bool "Generic PCI bus-master DMA support"
-       depends on PCI && BLK_DEV_IDEPCI
-       ---help---
-         If your PCI system uses IDE drive(s) (as opposed to SCSI, say) and
-         is capable of bus-master DMA operation (most Pentium PCI systems),
-         you will want to say Y here to reduce CPU overhead. You can then use
-         the "hdparm" utility to enable DMA for drives for which it was not
-         enabled automatically. By default, DMA is not enabled automatically
-         for these drives, but you can change that by saying Y to the
-         following question "Use DMA by default when available". You can get
-         the latest version of the hdparm utility from
-         <ftp://ibiblio.org/pub/Linux/system/hardware/>.
-
-         Read the comments at the beginning of <file:drivers/ide/ide-dma.c>
-         and the file <file:Documentation/ide.txt> for more information.
-
-         It is safe to say Y to this question.
-
-if BLK_DEV_IDEDMA_PCI
-
-config BLK_DEV_IDEDMA_FORCED
-       bool "Force enable legacy 2.0.X HOSTS to use DMA"
-       help
-         This is an old piece of lost code from Linux 2.0 Kernels.
-
-         Generally say N here.
-
-config IDEDMA_ONLYDISK
-       bool "Enable DMA only for disks "
-       help
-         This is used if you know your ATAPI Devices are going to fail DMA
-         Transfers.
-
-         Generally say N here.
+       bool
+       select BLK_DEV_IDEPCI
 
 config BLK_DEV_AEC62XX
        tristate "AEC62XX chipset support"
 
 config BLK_DEV_AEC62XX
        tristate "AEC62XX chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds explicit support for Acard AEC62xx (Artop ATP8xx)
          IDE controllers. This allows the kernel to change PIO, DMA and UDMA
        help
          This driver adds explicit support for Acard AEC62xx (Artop ATP8xx)
          IDE controllers. This allows the kernel to change PIO, DMA and UDMA
@@ -467,6 +458,7 @@ config BLK_DEV_AEC62XX
 
 config BLK_DEV_ALI15X3
        tristate "ALI M15x3 chipset support"
 
 config BLK_DEV_ALI15X3
        tristate "ALI M15x3 chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C
          onboard chipsets.  It also tests for Simplex mode and enables
        help
          This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C
          onboard chipsets.  It also tests for Simplex mode and enables
@@ -495,6 +487,8 @@ config WDC_ALI15X3
 
 config BLK_DEV_AMD74XX
        tristate "AMD and nVidia IDE support"
 
 config BLK_DEV_AMD74XX
        tristate "AMD and nVidia IDE support"
+       depends on !ARM
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds explicit support for AMD-7xx and AMD-8111 chips
          and also for the nVidia nForce chip.  This allows the kernel to
        help
          This driver adds explicit support for AMD-7xx and AMD-8111 chips
          and also for the nVidia nForce chip.  This allows the kernel to
@@ -504,6 +498,7 @@ config BLK_DEV_AMD74XX
 config BLK_DEV_ATIIXP
        tristate "ATI IXP chipset IDE support"
        depends on X86
 config BLK_DEV_ATIIXP
        tristate "ATI IXP chipset IDE support"
        depends on X86
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds explicit support for ATI IXP chipset.
          This allows the kernel to change PIO, DMA and UDMA speeds
        help
          This driver adds explicit support for ATI IXP chipset.
          This allows the kernel to change PIO, DMA and UDMA speeds
@@ -513,18 +508,21 @@ config BLK_DEV_ATIIXP
 
 config BLK_DEV_CMD64X
        tristate "CMD64{3|6|8|9} chipset support"
 
 config BLK_DEV_CMD64X
        tristate "CMD64{3|6|8|9} chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          Say Y here if you have an IDE controller which uses any of these
          chipsets: CMD643, CMD646, or CMD648.
 
 config BLK_DEV_TRIFLEX
        tristate "Compaq Triflex IDE support"
        help
          Say Y here if you have an IDE controller which uses any of these
          chipsets: CMD643, CMD646, or CMD648.
 
 config BLK_DEV_TRIFLEX
        tristate "Compaq Triflex IDE support"
+       select BLK_DEV_IDEDMA_PCI
        help
          Say Y here if you have a Compaq Triflex IDE controller, such
          as those commonly found on Compaq Pentium-Pro systems
 
 config BLK_DEV_CY82C693
        tristate "CY82C693 chipset support"
        help
          Say Y here if you have a Compaq Triflex IDE controller, such
          as those commonly found on Compaq Pentium-Pro systems
 
 config BLK_DEV_CY82C693
        tristate "CY82C693 chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds detection and support for the CY82C693 chipset
          used on Digital's PC-Alpha 164SX boards.
        help
          This driver adds detection and support for the CY82C693 chipset
          used on Digital's PC-Alpha 164SX boards.
@@ -535,6 +533,7 @@ config BLK_DEV_CY82C693
 config BLK_DEV_CS5520
        tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)"
        depends on EXPERIMENTAL
 config BLK_DEV_CS5520
        tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)"
        depends on EXPERIMENTAL
+       select BLK_DEV_IDEDMA_PCI
        help
          Include support for PIO tuning and virtual DMA on the Cyrix MediaGX
          5510/5520 chipset. This will automatically be detected and
        help
          Include support for PIO tuning and virtual DMA on the Cyrix MediaGX
          5510/5520 chipset. This will automatically be detected and
@@ -544,6 +543,7 @@ config BLK_DEV_CS5520
 
 config BLK_DEV_CS5530
        tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support"
 
 config BLK_DEV_CS5530
        tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          Include support for UDMA on the Cyrix MediaGX 5530 chipset. This
          will automatically be detected and configured if found.
        help
          Include support for UDMA on the Cyrix MediaGX 5530 chipset. This
          will automatically be detected and configured if found.
@@ -553,6 +553,7 @@ config BLK_DEV_CS5530
 config BLK_DEV_CS5535
        tristate "AMD CS5535 chipset support"
        depends on X86 && !X86_64
 config BLK_DEV_CS5535
        tristate "AMD CS5535 chipset support"
        depends on X86 && !X86_64
+       select BLK_DEV_IDEDMA_PCI
        help
          Include support for UDMA on the NSC/AMD CS5535 companion chipset.
          This will automatically be detected and configured if found.
        help
          Include support for UDMA on the NSC/AMD CS5535 companion chipset.
          This will automatically be detected and configured if found.
@@ -561,6 +562,7 @@ config BLK_DEV_CS5535
 
 config BLK_DEV_HPT34X
        tristate "HPT34X chipset support"
 
 config BLK_DEV_HPT34X
        tristate "HPT34X chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds up to 4 more EIDE devices sharing a single
          interrupt. The HPT343 chipset in its current form is a non-bootable
        help
          This driver adds up to 4 more EIDE devices sharing a single
          interrupt. The HPT343 chipset in its current form is a non-bootable
@@ -581,7 +583,8 @@ config HPT34X_AUTODMA
 
 config BLK_DEV_HPT366
        tristate "HPT36X/37X chipset support"
 
 config BLK_DEV_HPT366
        tristate "HPT36X/37X chipset support"
-       ---help---
+       select BLK_DEV_IDEDMA_PCI
+       help
          HPT366 is an Ultra DMA chipset for ATA-66.
          HPT368 is an Ultra DMA chipset for ATA-66 RAID Based.
          HPT370 is an Ultra DMA chipset for ATA-100.
          HPT366 is an Ultra DMA chipset for ATA-66.
          HPT368 is an Ultra DMA chipset for ATA-66 RAID Based.
          HPT370 is an Ultra DMA chipset for ATA-100.
@@ -605,18 +608,21 @@ config BLK_DEV_HPT366
 
 config BLK_DEV_JMICRON
        tristate "JMicron JMB36x support"
 
 config BLK_DEV_JMICRON
        tristate "JMicron JMB36x support"
+       select BLK_DEV_IDEDMA_PCI
        help
          Basic support for the JMicron ATA controllers. For full support
          use the libata drivers.
 
 config BLK_DEV_SC1200
        tristate "National SCx200 chipset support"
        help
          Basic support for the JMicron ATA controllers. For full support
          use the libata drivers.
 
 config BLK_DEV_SC1200
        tristate "National SCx200 chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
        help
-         This driver adds support for the built in IDE on the National
-         SCx200 series of embedded x86 "Geode" systems
+         This driver adds support for the on-board IDE controller on the
+         National SCx200 series of embedded x86 "Geode" systems.
 
 config BLK_DEV_PIIX
        tristate "Intel PIIXn chipsets support"
 
 config BLK_DEV_PIIX
        tristate "Intel PIIXn chipsets support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds explicit support for Intel PIIX and ICH chips
          and also for the Efar Victory66 (slc90e66) chip.  This allows
        help
          This driver adds explicit support for Intel PIIX and ICH chips
          and also for the Efar Victory66 (slc90e66) chip.  This allows
@@ -625,17 +631,20 @@ config BLK_DEV_PIIX
 
 config BLK_DEV_IT8213
        tristate "IT8213 IDE support"
 
 config BLK_DEV_IT8213
        tristate "IT8213 IDE support"
+       select BLK_DEV_IDEDMA_PCI
        help
         This driver adds support for the ITE 8213 IDE controller.
 
 config BLK_DEV_IT821X
        tristate "IT821X IDE support"
        help
         This driver adds support for the ITE 8213 IDE controller.
 
 config BLK_DEV_IT821X
        tristate "IT821X IDE support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds support for the ITE 8211 IDE controller and the
          IT 8212 IDE RAID controller in both RAID and pass-through mode.
 
 config BLK_DEV_NS87415
        tristate "NS87415 chipset support"
        help
          This driver adds support for the ITE 8211 IDE controller and the
          IT 8212 IDE RAID controller in both RAID and pass-through mode.
 
 config BLK_DEV_NS87415
        tristate "NS87415 chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds detection and support for the NS87415 chip
          (used mainly on SPARC64 and PA-RISC machines).
        help
          This driver adds detection and support for the NS87415 chip
          (used mainly on SPARC64 and PA-RISC machines).
@@ -644,6 +653,7 @@ config BLK_DEV_NS87415
 
 config BLK_DEV_PDC202XX_OLD
        tristate "PROMISE PDC202{46|62|65|67} support"
 
 config BLK_DEV_PDC202XX_OLD
        tristate "PROMISE PDC202{46|62|65|67} support"
+       select BLK_DEV_IDEDMA_PCI
        help
          Promise Ultra33 or PDC20246
          Promise Ultra66 or PDC20262
        help
          Promise Ultra33 or PDC20246
          Promise Ultra66 or PDC20262
@@ -685,9 +695,11 @@ config PDC202XX_BURST
 
 config BLK_DEV_PDC202XX_NEW
        tristate "PROMISE PDC202{68|69|70|71|75|76|77} support"
 
 config BLK_DEV_PDC202XX_NEW
        tristate "PROMISE PDC202{68|69|70|71|75|76|77} support"
+       select BLK_DEV_IDEDMA_PCI
 
 config BLK_DEV_SVWKS
        tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support"
 
 config BLK_DEV_SVWKS
        tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5
          chipsets.
        help
          This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5
          chipsets.
@@ -695,7 +707,7 @@ config BLK_DEV_SVWKS
 config BLK_DEV_SGIIOC4
        tristate "Silicon Graphics IOC4 chipset ATA/ATAPI support"
        depends on (IA64_SGI_SN2 || IA64_GENERIC) && SGI_IOC4
 config BLK_DEV_SGIIOC4
        tristate "Silicon Graphics IOC4 chipset ATA/ATAPI support"
        depends on (IA64_SGI_SN2 || IA64_GENERIC) && SGI_IOC4
-       select IDEPCI_SHARE_IRQ
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4
          chipset, which has one channel and can support two devices.
        help
          This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4
          chipset, which has one channel and can support two devices.
@@ -703,6 +715,7 @@ config BLK_DEV_SGIIOC4
 
 config BLK_DEV_SIIMAGE
        tristate "Silicon Image chipset support"
 
 config BLK_DEV_SIIMAGE
        tristate "Silicon Image chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds PIO/(U)DMA support for the SI CMD680 and SII
          3112 (Serial ATA) chips.
        help
          This driver adds PIO/(U)DMA support for the SI CMD680 and SII
          3112 (Serial ATA) chips.
@@ -710,7 +723,8 @@ config BLK_DEV_SIIMAGE
 config BLK_DEV_SIS5513
        tristate "SiS5513 chipset support"
        depends on X86
 config BLK_DEV_SIS5513
        tristate "SiS5513 chipset support"
        depends on X86
-       ---help---
+       select BLK_DEV_IDEDMA_PCI
+       help
          This driver ensures (U)DMA support for SIS5513 chipset family based
          mainboards.
 
          This driver ensures (U)DMA support for SIS5513 chipset family based
          mainboards.
 
@@ -729,6 +743,7 @@ config BLK_DEV_SIS5513
 config BLK_DEV_SL82C105
        tristate "Winbond SL82c105 support"
        depends on (PPC || ARM)
 config BLK_DEV_SL82C105
        tristate "Winbond SL82c105 support"
        depends on (PPC || ARM)
+       select BLK_DEV_IDEDMA_PCI
        help
          If you have a Winbond SL82c105 IDE controller, say Y here to enable
          special configuration for this chip. This is common on various CHRP
        help
          If you have a Winbond SL82c105 IDE controller, say Y here to enable
          special configuration for this chip. This is common on various CHRP
@@ -736,6 +751,7 @@ config BLK_DEV_SL82C105
 
 config BLK_DEV_SLC90E66
        tristate "SLC90E66 chipset support"
 
 config BLK_DEV_SLC90E66
        tristate "SLC90E66 chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver ensures (U)DMA support for Victory66 SouthBridges for
          SMsC with Intel NorthBridges.  This is an Ultra66 based chipset.
        help
          This driver ensures (U)DMA support for Victory66 SouthBridges for
          SMsC with Intel NorthBridges.  This is an Ultra66 based chipset.
@@ -751,6 +767,7 @@ config BLK_DEV_SLC90E66
 
 config BLK_DEV_TRM290
        tristate "Tekram TRM290 chipset support"
 
 config BLK_DEV_TRM290
        tristate "Tekram TRM290 chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds support for bus master DMA transfers
          using the Tekram TRM290 PCI IDE chip. Volunteers are
        help
          This driver adds support for bus master DMA transfers
          using the Tekram TRM290 PCI IDE chip. Volunteers are
@@ -759,6 +776,7 @@ config BLK_DEV_TRM290
 
 config BLK_DEV_VIA82CXXX
        tristate "VIA82CXXX chipset support"
 
 config BLK_DEV_VIA82CXXX
        tristate "VIA82CXXX chipset support"
+       select BLK_DEV_IDEDMA_PCI
        help
          This driver adds explicit support for VIA BusMastering IDE chips.
          This allows the kernel to change PIO, DMA and UDMA speeds and to
        help
          This driver adds explicit support for VIA BusMastering IDE chips.
          This allows the kernel to change PIO, DMA and UDMA speeds and to
@@ -766,29 +784,31 @@ config BLK_DEV_VIA82CXXX
 
 config BLK_DEV_TC86C001
        tristate "Toshiba TC86C001 support"
 
 config BLK_DEV_TC86C001
        tristate "Toshiba TC86C001 support"
+       select BLK_DEV_IDEDMA_PCI
        help
        This driver adds support for Toshiba TC86C001 GOKU-S chip.
 
 config BLK_DEV_CELLEB
        tristate "Toshiba's Cell Reference Set IDE support"
        depends on PPC_CELLEB
        help
        This driver adds support for Toshiba TC86C001 GOKU-S chip.
 
 config BLK_DEV_CELLEB
        tristate "Toshiba's Cell Reference Set IDE support"
        depends on PPC_CELLEB
+       select BLK_DEV_IDEDMA_PCI
        help
        help
-         This driver provides support for the built-in IDE controller on
+         This driver provides support for the on-board IDE controller on
          Toshiba Cell Reference Board.
          If unsure, say Y.
 
 endif
 
 config BLK_DEV_IDE_PMAC
          Toshiba Cell Reference Board.
          If unsure, say Y.
 
 endif
 
 config BLK_DEV_IDE_PMAC
-       bool "Builtin PowerMac IDE support"
+       tristate "PowerMac on-board IDE support"
        depends on PPC_PMAC && IDE=y && BLK_DEV_IDE=y
        help
        depends on PPC_PMAC && IDE=y && BLK_DEV_IDE=y
        help
-         This driver provides support for the built-in IDE controller on
+         This driver provides support for the on-board IDE controller on
          most of the recent Apple Power Macintoshes and PowerBooks.
          If unsure, say Y.
 
 config BLK_DEV_IDE_PMAC_ATA100FIRST
          most of the recent Apple Power Macintoshes and PowerBooks.
          If unsure, say Y.
 
 config BLK_DEV_IDE_PMAC_ATA100FIRST
-       bool "Probe internal ATA/100 (Kauai) first"
+       bool "Probe on-board ATA/100 (Kauai) first"
        depends on BLK_DEV_IDE_PMAC
        help
          This option will cause the ATA/100 controller found in UniNorth2
        depends on BLK_DEV_IDE_PMAC
        help
          This option will cause the ATA/100 controller found in UniNorth2
@@ -803,7 +823,7 @@ config BLK_DEV_IDEDMA_PMAC
        depends on BLK_DEV_IDE_PMAC
        select BLK_DEV_IDEDMA_PCI
        help
        depends on BLK_DEV_IDE_PMAC
        select BLK_DEV_IDEDMA_PCI
        help
-         This option allows the driver for the built-in IDE controller on
+         This option allows the driver for the on-board IDE controller on
          Power Macintoshes and PowerBooks to use DMA (direct memory access)
          to transfer data to and from memory.  Saying Y is safe and improves
          performance.
          Power Macintoshes and PowerBooks to use DMA (direct memory access)
          to transfer data to and from memory.  Saying Y is safe and improves
          performance.
@@ -834,8 +854,9 @@ config BLK_DEV_IDE_AU1XXX_SEQTS_PER_RQ
        depends on BLK_DEV_IDE_AU1XXX
 
 config IDE_ARM
        depends on BLK_DEV_IDE_AU1XXX
 
 config IDE_ARM
-       def_bool ARM && (ARCH_CLPS7500 || ARCH_RPC || ARCH_SHARK)
-       select IDE_GENERIC
+       tristate "ARM IDE support"
+       depends on ARM && (ARCH_CLPS7500 || ARCH_RPC || ARCH_SHARK)
+       default y
 
 config BLK_DEV_IDE_ICSIDE
        tristate "ICS IDE interface support"
 
 config BLK_DEV_IDE_ICSIDE
        tristate "ICS IDE interface support"
@@ -866,14 +887,54 @@ config BLK_DEV_IDE_BAST
          Say Y here if you want to support the onboard IDE channels on the
          Simtec BAST or the Thorcom VR1000
 
          Say Y here if you want to support the onboard IDE channels on the
          Simtec BAST or the Thorcom VR1000
 
+config ETRAX_IDE
+       tristate "ETRAX IDE support"
+       depends on CRIS && BROKEN
+       select BLK_DEV_IDEDMA
+       help
+         Enables the ETRAX IDE driver.
+
+         You can't use parallel ports or SCSI ports at the same time.
+
+config ETRAX_IDE_DELAY
+       int "Delay for drives to regain consciousness"
+       depends on ETRAX_IDE && ETRAX_ARCH_V10
+       default 15
+       help
+         Number of seconds to wait for IDE drives to spin up after an IDE
+         reset.
+
+choice
+       prompt "IDE reset pin"
+       depends on ETRAX_IDE && ETRAX_ARCH_V10
+       default ETRAX_IDE_PB7_RESET
+
+config ETRAX_IDE_PB7_RESET
+       bool "Port_PB_Bit_7"
+       help
+         IDE reset on pin 7 on port B
+
+config ETRAX_IDE_G27_RESET
+       bool "Port_G_Bit_27"
+       help
+         IDE reset on pin 27 on port G
+
+endchoice
+
+config IDE_H8300
+       tristate "H8300 IDE support"
+       depends on H8300
+       default y
+       help
+         Enables the H8300 IDE driver.
+
 config BLK_DEV_GAYLE
 config BLK_DEV_GAYLE
-       bool "Amiga Gayle IDE interface support"
+       tristate "Amiga Gayle IDE interface support"
        depends on AMIGA
        depends on AMIGA
-       select IDE_GENERIC
        help
          This is the IDE driver for the Amiga Gayle IDE interface. It supports
          both the `A1200 style' and `A4000 style' of the Gayle IDE interface,
        help
          This is the IDE driver for the Amiga Gayle IDE interface. It supports
          both the `A1200 style' and `A4000 style' of the Gayle IDE interface,
-         This includes builtin IDE interfaces on some Amiga models (A600,
+         This includes on-board IDE interfaces on some Amiga models (A600,
          A1200, A4000, and A4000T), and IDE interfaces on the Zorro expansion
          bus (M-Tech E-Matrix 530 expansion card).
          Say Y if you have an Amiga with a Gayle IDE interface and want to use
          A1200, A4000, and A4000T), and IDE interfaces on the Zorro expansion
          bus (M-Tech E-Matrix 530 expansion card).
          Say Y if you have an Amiga with a Gayle IDE interface and want to use
@@ -887,10 +948,10 @@ config BLK_DEV_IDEDOUBLER
        depends on BLK_DEV_GAYLE && EXPERIMENTAL
        ---help---
          This driver provides support for the so-called `IDE doublers' (made
        depends on BLK_DEV_GAYLE && EXPERIMENTAL
        ---help---
          This driver provides support for the so-called `IDE doublers' (made
-         by various manufacturers, e.g. Eyetech) that can be connected to the
-         builtin IDE interface of some Amiga models. Using such an IDE
-         doubler, you can connect up to four instead of two IDE devices on
-         the Amiga's builtin IDE interface.
+         by various manufacturers, e.g. Eyetech) that can be connected to
+         the on-board IDE interface of some Amiga models. Using such an IDE
+         doubler, you can connect up to four instead of two IDE devices to
+         the Amiga's on-board IDE interface.
 
          Note that the normal Amiga Gayle IDE driver may not work correctly
          if you have an IDE doubler and don't enable this driver!
 
          Note that the normal Amiga Gayle IDE driver may not work correctly
          if you have an IDE doubler and don't enable this driver!
@@ -899,55 +960,50 @@ config BLK_DEV_IDEDOUBLER
          runtime using the "ide=doubler" kernel boot parameter.
 
 config BLK_DEV_BUDDHA
          runtime using the "ide=doubler" kernel boot parameter.
 
 config BLK_DEV_BUDDHA
-       bool "Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)"
+       tristate "Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)"
        depends on ZORRO && EXPERIMENTAL
        depends on ZORRO && EXPERIMENTAL
-       select IDE_GENERIC
        help
        help
-         This is the IDE driver for the IDE interfaces on the Buddha, 
-         Catweasel and X-Surf expansion boards.  It supports up to two interfaces 
-         on the Buddha, three on the Catweasel and two on the X-Surf.
+         This is the IDE driver for the IDE interfaces on the Buddha, Catweasel
+         and X-Surf expansion boards.  It supports up to two interfaces on the
+         Buddha, three on the Catweasel and two on the X-Surf.
 
          Say Y if you have a Buddha or Catweasel expansion board and want to
          use IDE devices (hard disks, CD-ROM drives, etc.) that are connected
          to one of its IDE interfaces.
 
 config BLK_DEV_FALCON_IDE
 
          Say Y if you have a Buddha or Catweasel expansion board and want to
          use IDE devices (hard disks, CD-ROM drives, etc.) that are connected
          to one of its IDE interfaces.
 
 config BLK_DEV_FALCON_IDE
-       bool "Falcon IDE interface support"
+       tristate "Falcon IDE interface support"
        depends on ATARI
        depends on ATARI
-       select IDE_GENERIC
        help
        help
-         This is the IDE driver for the builtin IDE interface on the Atari
+         This is the IDE driver for the on-board IDE interface on the Atari
          Falcon. Say Y if you have a Falcon and want to use IDE devices (hard
          Falcon. Say Y if you have a Falcon and want to use IDE devices (hard
-         disks, CD-ROM drives, etc.) that are connected to the builtin IDE
+         disks, CD-ROM drives, etc.) that are connected to the on-board IDE
          interface.
 
 config BLK_DEV_MAC_IDE
          interface.
 
 config BLK_DEV_MAC_IDE
-       bool "Macintosh Quadra/Powerbook IDE interface support"
+       tristate "Macintosh Quadra/Powerbook IDE interface support"
        depends on MAC
        depends on MAC
-       select IDE_GENERIC
        help
        help
-         This is the IDE driver for the builtin IDE interface on some m68k
+         This is the IDE driver for the on-board IDE interface on some m68k
          Macintosh models. It supports both the `Quadra style' (used in
          Quadra/ Centris 630 and Performa 588 models) and `Powerbook style'
          (used in the Powerbook 150 and 190 models) IDE interface.
 
          Say Y if you have such an Macintosh model and want to use IDE
          devices (hard disks, CD-ROM drives, etc.) that are connected to the
          Macintosh models. It supports both the `Quadra style' (used in
          Quadra/ Centris 630 and Performa 588 models) and `Powerbook style'
          (used in the Powerbook 150 and 190 models) IDE interface.
 
          Say Y if you have such an Macintosh model and want to use IDE
          devices (hard disks, CD-ROM drives, etc.) that are connected to the
-         builtin IDE interface.
+         on-board IDE interface.
 
 config BLK_DEV_Q40IDE
 
 config BLK_DEV_Q40IDE
-       bool "Q40/Q60 IDE interface support"
+       tristate "Q40/Q60 IDE interface support"
        depends on Q40
        depends on Q40
-       select IDE_GENERIC
        help
          Enable the on-board IDE controller in the Q40/Q60.  This should
          normally be on; disable it only if you are running a custom hard
          drive subsystem through an expansion card.
 
 config BLK_DEV_MPC8xx_IDE
        help
          Enable the on-board IDE controller in the Q40/Q60.  This should
          normally be on; disable it only if you are running a custom hard
          drive subsystem through an expansion card.
 
 config BLK_DEV_MPC8xx_IDE
-       bool "MPC8xx IDE support"
-       depends on 8xx && IDE=y && BLK_DEV_IDE=y && !PPC_MERGE
-       select IDE_GENERIC
+       tristate "MPC8xx IDE support"
+       depends on 8xx && (LWMON || IVMS8 || IVML24 || TQM8xxL) && IDE=y && BLK_DEV_IDE=y && !PPC_MERGE
        help
          This option provides support for IDE on Motorola MPC8xx Systems.
          Please see 'Type of MPC8xx IDE interface' for details.
        help
          This option provides support for IDE on Motorola MPC8xx Systems.
          Please see 'Type of MPC8xx IDE interface' for details.
@@ -985,24 +1041,9 @@ config IDE_EXT_DIRECT
 endchoice
 
 # no isa -> no vlb
 endchoice
 
 # no isa -> no vlb
-config IDE_CHIPSETS
-       bool "Other IDE chipset support"
-       depends on ISA
-       ---help---
-         Say Y here if you want to include enhanced support for various IDE
-         interface chipsets used on motherboards and add-on cards. You can
-         then pick your particular IDE chip from among the following options.
-         This enhanced support may be necessary for Linux to be able to
-         access the 3rd/4th drives in some systems. It may also enable
-         setting of higher speed I/O rates to improve system performance with
-         these chipsets. Most of these also require special kernel boot
-         parameters to actually turn on the support at runtime; you can find
-         a list of these in the file <file:Documentation/ide.txt>.
-
-         People with SCSI-only systems can say N here.
-
-if IDE_CHIPSETS
+if ISA
 
 
+comment "Other IDE chipsets support"
 comment "Note: most of these also require special kernel boot parameters"
 
 config BLK_DEV_4DRIVES
 comment "Note: most of these also require special kernel boot parameters"
 
 config BLK_DEV_4DRIVES
@@ -1021,8 +1062,8 @@ config BLK_DEV_ALI14XX
          boot parameter.  It enables support for the secondary IDE interface
          of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster
          I/O speeds to be set as well.  See the files
          boot parameter.  It enables support for the secondary IDE interface
          of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster
          I/O speeds to be set as well.  See the files
-         <file:Documentation/ide.txt> and <file:drivers/ide/legacy/ali14xx.c> for
-         more info.
+         <file:Documentation/ide.txt> and <file:drivers/ide/legacy/ali14xx.c>
+         for more info.
 
 config BLK_DEV_DTC2278
        tristate "DTC-2278 support"
 
 config BLK_DEV_DTC2278
        tristate "DTC-2278 support"
@@ -1047,8 +1088,8 @@ config BLK_DEV_QD65XX
        help
          This driver is enabled at runtime using the "qd65xx.probe" kernel
          boot parameter.  It permits faster I/O speeds to be set.  See the
        help
          This driver is enabled at runtime using the "qd65xx.probe" kernel
          boot parameter.  It permits faster I/O speeds to be set.  See the
-         <file:Documentation/ide.txt> and <file:drivers/ide/legacy/qd65xx.c> for
-         more info.
+         <file:Documentation/ide.txt> and <file:drivers/ide/legacy/qd65xx.c>
+         for more info.
 
 config BLK_DEV_UMC8672
        tristate "UMC-8672 support"
 
 config BLK_DEV_UMC8672
        tristate "UMC-8672 support"
@@ -1064,21 +1105,8 @@ endif
 config BLK_DEV_IDEDMA
        def_bool BLK_DEV_IDEDMA_PCI || BLK_DEV_IDEDMA_PMAC || BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
 
 config BLK_DEV_IDEDMA
        def_bool BLK_DEV_IDEDMA_PCI || BLK_DEV_IDEDMA_PMAC || BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA
 
-config IDEDMA_IVB
-       bool "IGNORE word93 Validation BITS"
-       depends on BLK_DEV_IDEDMA_PCI || BLK_DEV_IDEDMA_PMAC || BLK_DEV_IDEDMA_ICS
-       ---help---
-         There are unclear terms in ATA-4 and ATA-5 standards how certain
-         hardware (an 80c ribbon) should be detected. Different interpretations
-         of the standards have been released in hardware. This causes problems:
-         for example, a host with Ultra Mode 4 (or higher) will not run
-         in that mode with an 80c ribbon.
-
-         If you are experiencing compatibility or performance problems, you
-         MAY try to answer Y here. However, it does not necessarily solve
-         any of your problems, it could even cause more of them.
-
-         It is normally safe to answer Y; however, the default is N.
+config IDE_ARCH_OBSOLETE_INIT
+       def_bool ALPHA || (ARM && !ARCH_L7200) || BLACKFIN || X86 || IA64 || M32R || MIPS || PARISC || PPC || (SUPERH64 && BLK_DEV_IDEPCI) || SPARC
 
 endif
 
 
 endif