提交 842c19ad 编写于 作者: B Bartlomiej Zolnierkiewicz

ide: Kconfig face-lift

* Convert config options for PCI host drivers to select BLK_DEV_IDEPCI.

* Same for BLK_DEV_IDEDMA_PCI and PCI DMA host drivers, also make this
  config option select BLK_DEV_IDEPCI.

* Remove no longer needed help for BLK_DEV_IDEPCI and BLK_DEV_IDEDMA_PCI.

* Remove redundant IDE_CHIPSETS config option.

As a result of this patch users have now three less config options
to worry about and can just select host drivers that they need
(IDE config menu is "flatter").
Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
上级 f212ff28
...@@ -359,17 +359,16 @@ config BLK_DEV_IDEPNP ...@@ -359,17 +359,16 @@ config BLK_DEV_IDEPNP
would like the kernel to automatically detect and activate would like the kernel to automatically detect and activate
it, say Y here. 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 bool
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.
config IDEPCI_SHARE_IRQ config IDEPCI_SHARE_IRQ
bool "Sharing PCI IDE interrupts support" bool "Sharing PCI IDE interrupts support"
depends on PCI && BLK_DEV_IDEPCI depends on BLK_DEV_IDEPCI
help help
Some ATA/IDE chipsets have hardware support which allows for Some ATA/IDE chipsets have hardware support which allows for
sharing a single IRQ with other cards. To enable support for sharing a single IRQ with other cards. To enable support for
...@@ -379,11 +378,11 @@ config IDEPCI_SHARE_IRQ ...@@ -379,11 +378,11 @@ config IDEPCI_SHARE_IRQ
If unsure, say N. If unsure, say N.
config IDEPCI_PCIBUS_ORDER config IDEPCI_PCIBUS_ORDER
def_bool PCI && BLK_DEV_IDE=y && BLK_DEV_IDEPCI def_bool BLK_DEV_IDE=y && BLK_DEV_IDEPCI
config BLK_DEV_OFFBOARD config BLK_DEV_OFFBOARD
bool "Boot off-board chipsets first support" bool "Boot off-board chipsets first support"
depends on PCI && BLK_DEV_IDEPCI depends on BLK_DEV_IDEPCI
help help
Normally, IDE controllers built into the motherboard (on-board Normally, IDE controllers built into the motherboard (on-board
controllers) are assigned to ide0 and ide1 while those on add-in PCI controllers) are assigned to ide0 and ide1 while those on add-in PCI
...@@ -406,21 +405,23 @@ config BLK_DEV_OFFBOARD ...@@ -406,21 +405,23 @@ config BLK_DEV_OFFBOARD
config BLK_DEV_GENERIC config BLK_DEV_GENERIC
tristate "Generic PCI IDE Chipset Support" tristate "Generic PCI IDE Chipset Support"
depends on BLK_DEV_IDEPCI select BLK_DEV_IDEPCI
help help
This option provides generic support for various PCI IDE Chipsets This option provides generic support for various PCI IDE Chipsets
which otherwise might not be supported. which otherwise might not be supported.
config BLK_DEV_OPTI621 config BLK_DEV_OPTI621
tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)" tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)"
depends on PCI && BLK_DEV_IDEPCI && EXPERIMENTAL depends on EXPERIMENTAL
select BLK_DEV_IDEPCI
help help
This is a driver for the OPTi 82C621 EIDE controller. This is a driver for the OPTi 82C621 EIDE controller.
Please read the comments at the top of <file:drivers/ide/pci/opti621.c>. Please read the comments at the top of <file:drivers/ide/pci/opti621.c>.
config BLK_DEV_RZ1000 config BLK_DEV_RZ1000
tristate "RZ1000 chipset bugfix/support" tristate "RZ1000 chipset bugfix/support"
depends on PCI && BLK_DEV_IDEPCI && X86 depends on X86
select BLK_DEV_IDEPCI
help help
The PC-Technologies RZ1000 IDE chip is used on many common 486 and The PC-Technologies RZ1000 IDE chip is used on many common 486 and
Pentium motherboards, usually along with the "Neptune" chipset. Pentium motherboards, usually along with the "Neptune" chipset.
...@@ -431,35 +432,21 @@ config BLK_DEV_RZ1000 ...@@ -431,35 +432,21 @@ config BLK_DEV_RZ1000
things will operate 100% reliably. things will operate 100% reliably.
config BLK_DEV_IDEDMA_PCI config BLK_DEV_IDEDMA_PCI
bool "Generic PCI bus-master DMA support" bool
depends on PCI && BLK_DEV_IDEPCI select 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 config BLK_DEV_IDEDMA_FORCED
bool "Force enable legacy 2.0.X HOSTS to use DMA" bool "Force enable legacy 2.0.X HOSTS to use DMA"
depends on BLK_DEV_IDEDMA_PCI
help help
This is an old piece of lost code from Linux 2.0 Kernels. This is an old piece of lost code from Linux 2.0 Kernels.
Generally say N here. Generally say N here.
# TODO: remove it
config IDEDMA_ONLYDISK config IDEDMA_ONLYDISK
bool "Enable DMA only for disks " bool "Enable DMA only for disks "
depends on BLK_DEV_IDEDMA_PCI
help help
This is used if you know your ATAPI Devices are going to fail DMA This is used if you know your ATAPI Devices are going to fail DMA
Transfers. Transfers.
...@@ -468,6 +455,7 @@ config IDEDMA_ONLYDISK ...@@ -468,6 +455,7 @@ config IDEDMA_ONLYDISK
config BLK_DEV_AEC62XX config BLK_DEV_AEC62XX
tristate "AEC62XX chipset support" tristate "AEC62XX chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds explicit support for Acard AEC62xx (Artop ATP8xx) This driver adds explicit support for Acard AEC62xx (Artop ATP8xx)
IDE controllers. This allows the kernel to change PIO, DMA and UDMA IDE controllers. This allows the kernel to change PIO, DMA and UDMA
...@@ -475,6 +463,7 @@ config BLK_DEV_AEC62XX ...@@ -475,6 +463,7 @@ config BLK_DEV_AEC62XX
config BLK_DEV_ALI15X3 config BLK_DEV_ALI15X3
tristate "ALI M15x3 chipset support" tristate "ALI M15x3 chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C
onboard chipsets. It also tests for Simplex mode and enables onboard chipsets. It also tests for Simplex mode and enables
...@@ -503,6 +492,7 @@ config WDC_ALI15X3 ...@@ -503,6 +492,7 @@ config WDC_ALI15X3
config BLK_DEV_AMD74XX config BLK_DEV_AMD74XX
tristate "AMD and nVidia IDE support" tristate "AMD and nVidia IDE support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds explicit support for AMD-7xx and AMD-8111 chips This driver adds explicit support for AMD-7xx and AMD-8111 chips
and also for the nVidia nForce chip. This allows the kernel to and also for the nVidia nForce chip. This allows the kernel to
...@@ -512,6 +502,7 @@ config BLK_DEV_AMD74XX ...@@ -512,6 +502,7 @@ config BLK_DEV_AMD74XX
config BLK_DEV_ATIIXP config BLK_DEV_ATIIXP
tristate "ATI IXP chipset IDE support" tristate "ATI IXP chipset IDE support"
depends on X86 depends on X86
select BLK_DEV_IDEDMA_PCI
help help
This driver adds explicit support for ATI IXP chipset. This driver adds explicit support for ATI IXP chipset.
This allows the kernel to change PIO, DMA and UDMA speeds This allows the kernel to change PIO, DMA and UDMA speeds
...@@ -521,18 +512,21 @@ config BLK_DEV_ATIIXP ...@@ -521,18 +512,21 @@ config BLK_DEV_ATIIXP
config BLK_DEV_CMD64X config BLK_DEV_CMD64X
tristate "CMD64{3|6|8|9} chipset support" tristate "CMD64{3|6|8|9} chipset support"
select BLK_DEV_IDEDMA_PCI
help help
Say Y here if you have an IDE controller which uses any of these Say Y here if you have an IDE controller which uses any of these
chipsets: CMD643, CMD646, or CMD648. chipsets: CMD643, CMD646, or CMD648.
config BLK_DEV_TRIFLEX config BLK_DEV_TRIFLEX
tristate "Compaq Triflex IDE support" tristate "Compaq Triflex IDE support"
select BLK_DEV_IDEDMA_PCI
help help
Say Y here if you have a Compaq Triflex IDE controller, such Say Y here if you have a Compaq Triflex IDE controller, such
as those commonly found on Compaq Pentium-Pro systems as those commonly found on Compaq Pentium-Pro systems
config BLK_DEV_CY82C693 config BLK_DEV_CY82C693
tristate "CY82C693 chipset support" tristate "CY82C693 chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds detection and support for the CY82C693 chipset This driver adds detection and support for the CY82C693 chipset
used on Digital's PC-Alpha 164SX boards. used on Digital's PC-Alpha 164SX boards.
...@@ -543,6 +537,7 @@ config BLK_DEV_CY82C693 ...@@ -543,6 +537,7 @@ config BLK_DEV_CY82C693
config BLK_DEV_CS5520 config BLK_DEV_CS5520
tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)" tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)"
depends on EXPERIMENTAL depends on EXPERIMENTAL
select BLK_DEV_IDEDMA_PCI
help help
Include support for PIO tuning and virtual DMA on the Cyrix MediaGX Include support for PIO tuning and virtual DMA on the Cyrix MediaGX
5510/5520 chipset. This will automatically be detected and 5510/5520 chipset. This will automatically be detected and
...@@ -552,6 +547,7 @@ config BLK_DEV_CS5520 ...@@ -552,6 +547,7 @@ config BLK_DEV_CS5520
config BLK_DEV_CS5530 config BLK_DEV_CS5530
tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support" tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support"
select BLK_DEV_IDEDMA_PCI
help help
Include support for UDMA on the Cyrix MediaGX 5530 chipset. This Include support for UDMA on the Cyrix MediaGX 5530 chipset. This
will automatically be detected and configured if found. will automatically be detected and configured if found.
...@@ -561,6 +557,7 @@ config BLK_DEV_CS5530 ...@@ -561,6 +557,7 @@ config BLK_DEV_CS5530
config BLK_DEV_CS5535 config BLK_DEV_CS5535
tristate "AMD CS5535 chipset support" tristate "AMD CS5535 chipset support"
depends on X86 && !X86_64 depends on X86 && !X86_64
select BLK_DEV_IDEDMA_PCI
help help
Include support for UDMA on the NSC/AMD CS5535 companion chipset. Include support for UDMA on the NSC/AMD CS5535 companion chipset.
This will automatically be detected and configured if found. This will automatically be detected and configured if found.
...@@ -569,6 +566,7 @@ config BLK_DEV_CS5535 ...@@ -569,6 +566,7 @@ config BLK_DEV_CS5535
config BLK_DEV_HPT34X config BLK_DEV_HPT34X
tristate "HPT34X chipset support" tristate "HPT34X chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds up to 4 more EIDE devices sharing a single This driver adds up to 4 more EIDE devices sharing a single
interrupt. The HPT343 chipset in its current form is a non-bootable interrupt. The HPT343 chipset in its current form is a non-bootable
...@@ -589,7 +587,8 @@ config HPT34X_AUTODMA ...@@ -589,7 +587,8 @@ config HPT34X_AUTODMA
config BLK_DEV_HPT366 config BLK_DEV_HPT366
tristate "HPT36X/37X chipset support" tristate "HPT36X/37X chipset support"
---help--- select BLK_DEV_IDEDMA_PCI
help
HPT366 is an Ultra DMA chipset for ATA-66. HPT366 is an Ultra DMA chipset for ATA-66.
HPT368 is an Ultra DMA chipset for ATA-66 RAID Based. HPT368 is an Ultra DMA chipset for ATA-66 RAID Based.
HPT370 is an Ultra DMA chipset for ATA-100. HPT370 is an Ultra DMA chipset for ATA-100.
...@@ -613,18 +612,21 @@ config BLK_DEV_HPT366 ...@@ -613,18 +612,21 @@ config BLK_DEV_HPT366
config BLK_DEV_JMICRON config BLK_DEV_JMICRON
tristate "JMicron JMB36x support" tristate "JMicron JMB36x support"
select BLK_DEV_IDEDMA_PCI
help help
Basic support for the JMicron ATA controllers. For full support Basic support for the JMicron ATA controllers. For full support
use the libata drivers. use the libata drivers.
config BLK_DEV_SC1200 config BLK_DEV_SC1200
tristate "National SCx200 chipset support" tristate "National SCx200 chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds support for the built in IDE on the National This driver adds support for the built in IDE on the National
SCx200 series of embedded x86 "Geode" systems SCx200 series of embedded x86 "Geode" systems
config BLK_DEV_PIIX config BLK_DEV_PIIX
tristate "Intel PIIXn chipsets support" tristate "Intel PIIXn chipsets support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds explicit support for Intel PIIX and ICH chips This driver adds explicit support for Intel PIIX and ICH chips
and also for the Efar Victory66 (slc90e66) chip. This allows and also for the Efar Victory66 (slc90e66) chip. This allows
...@@ -633,17 +635,20 @@ config BLK_DEV_PIIX ...@@ -633,17 +635,20 @@ config BLK_DEV_PIIX
config BLK_DEV_IT8213 config BLK_DEV_IT8213
tristate "IT8213 IDE support" tristate "IT8213 IDE support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds support for the ITE 8213 IDE controller. This driver adds support for the ITE 8213 IDE controller.
config BLK_DEV_IT821X config BLK_DEV_IT821X
tristate "IT821X IDE support" tristate "IT821X IDE support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds support for the ITE 8211 IDE controller and the This driver adds support for the ITE 8211 IDE controller and the
IT 8212 IDE RAID controller in both RAID and pass-through mode. IT 8212 IDE RAID controller in both RAID and pass-through mode.
config BLK_DEV_NS87415 config BLK_DEV_NS87415
tristate "NS87415 chipset support" tristate "NS87415 chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds detection and support for the NS87415 chip This driver adds detection and support for the NS87415 chip
(used mainly on SPARC64 and PA-RISC machines). (used mainly on SPARC64 and PA-RISC machines).
...@@ -652,6 +657,7 @@ config BLK_DEV_NS87415 ...@@ -652,6 +657,7 @@ config BLK_DEV_NS87415
config BLK_DEV_PDC202XX_OLD config BLK_DEV_PDC202XX_OLD
tristate "PROMISE PDC202{46|62|65|67} support" tristate "PROMISE PDC202{46|62|65|67} support"
select BLK_DEV_IDEDMA_PCI
help help
Promise Ultra33 or PDC20246 Promise Ultra33 or PDC20246
Promise Ultra66 or PDC20262 Promise Ultra66 or PDC20262
...@@ -693,9 +699,11 @@ config PDC202XX_BURST ...@@ -693,9 +699,11 @@ config PDC202XX_BURST
config BLK_DEV_PDC202XX_NEW config BLK_DEV_PDC202XX_NEW
tristate "PROMISE PDC202{68|69|70|71|75|76|77} support" tristate "PROMISE PDC202{68|69|70|71|75|76|77} support"
select BLK_DEV_IDEDMA_PCI
config BLK_DEV_SVWKS config BLK_DEV_SVWKS
tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support" tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5 This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5
chipsets. chipsets.
...@@ -704,6 +712,7 @@ config BLK_DEV_SGIIOC4 ...@@ -704,6 +712,7 @@ config BLK_DEV_SGIIOC4
tristate "Silicon Graphics IOC4 chipset ATA/ATAPI support" tristate "Silicon Graphics IOC4 chipset ATA/ATAPI support"
depends on (IA64_SGI_SN2 || IA64_GENERIC) && SGI_IOC4 depends on (IA64_SGI_SN2 || IA64_GENERIC) && SGI_IOC4
select IDEPCI_SHARE_IRQ select IDEPCI_SHARE_IRQ
select BLK_DEV_IDEDMA_PCI
help help
This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4 This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4
chipset, which has one channel and can support two devices. chipset, which has one channel and can support two devices.
...@@ -711,6 +720,7 @@ config BLK_DEV_SGIIOC4 ...@@ -711,6 +720,7 @@ config BLK_DEV_SGIIOC4
config BLK_DEV_SIIMAGE config BLK_DEV_SIIMAGE
tristate "Silicon Image chipset support" tristate "Silicon Image chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds PIO/(U)DMA support for the SI CMD680 and SII This driver adds PIO/(U)DMA support for the SI CMD680 and SII
3112 (Serial ATA) chips. 3112 (Serial ATA) chips.
...@@ -718,7 +728,8 @@ config BLK_DEV_SIIMAGE ...@@ -718,7 +728,8 @@ config BLK_DEV_SIIMAGE
config BLK_DEV_SIS5513 config BLK_DEV_SIS5513
tristate "SiS5513 chipset support" tristate "SiS5513 chipset support"
depends on X86 depends on X86
---help--- select BLK_DEV_IDEDMA_PCI
help
This driver ensures (U)DMA support for SIS5513 chipset family based This driver ensures (U)DMA support for SIS5513 chipset family based
mainboards. mainboards.
...@@ -737,6 +748,7 @@ config BLK_DEV_SIS5513 ...@@ -737,6 +748,7 @@ config BLK_DEV_SIS5513
config BLK_DEV_SL82C105 config BLK_DEV_SL82C105
tristate "Winbond SL82c105 support" tristate "Winbond SL82c105 support"
depends on (PPC || ARM) depends on (PPC || ARM)
select BLK_DEV_IDEDMA_PCI
help help
If you have a Winbond SL82c105 IDE controller, say Y here to enable If you have a Winbond SL82c105 IDE controller, say Y here to enable
special configuration for this chip. This is common on various CHRP special configuration for this chip. This is common on various CHRP
...@@ -744,6 +756,7 @@ config BLK_DEV_SL82C105 ...@@ -744,6 +756,7 @@ config BLK_DEV_SL82C105
config BLK_DEV_SLC90E66 config BLK_DEV_SLC90E66
tristate "SLC90E66 chipset support" tristate "SLC90E66 chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver ensures (U)DMA support for Victory66 SouthBridges for This driver ensures (U)DMA support for Victory66 SouthBridges for
SMsC with Intel NorthBridges. This is an Ultra66 based chipset. SMsC with Intel NorthBridges. This is an Ultra66 based chipset.
...@@ -759,6 +772,7 @@ config BLK_DEV_SLC90E66 ...@@ -759,6 +772,7 @@ config BLK_DEV_SLC90E66
config BLK_DEV_TRM290 config BLK_DEV_TRM290
tristate "Tekram TRM290 chipset support" tristate "Tekram TRM290 chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds support for bus master DMA transfers This driver adds support for bus master DMA transfers
using the Tekram TRM290 PCI IDE chip. Volunteers are using the Tekram TRM290 PCI IDE chip. Volunteers are
...@@ -767,6 +781,7 @@ config BLK_DEV_TRM290 ...@@ -767,6 +781,7 @@ config BLK_DEV_TRM290
config BLK_DEV_VIA82CXXX config BLK_DEV_VIA82CXXX
tristate "VIA82CXXX chipset support" tristate "VIA82CXXX chipset support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds explicit support for VIA BusMastering IDE chips. This driver adds explicit support for VIA BusMastering IDE chips.
This allows the kernel to change PIO, DMA and UDMA speeds and to This allows the kernel to change PIO, DMA and UDMA speeds and to
...@@ -774,12 +789,14 @@ config BLK_DEV_VIA82CXXX ...@@ -774,12 +789,14 @@ config BLK_DEV_VIA82CXXX
config BLK_DEV_TC86C001 config BLK_DEV_TC86C001
tristate "Toshiba TC86C001 support" tristate "Toshiba TC86C001 support"
select BLK_DEV_IDEDMA_PCI
help help
This driver adds support for Toshiba TC86C001 GOKU-S chip. This driver adds support for Toshiba TC86C001 GOKU-S chip.
config BLK_DEV_CELLEB config BLK_DEV_CELLEB
tristate "Toshiba's Cell Reference Set IDE support" tristate "Toshiba's Cell Reference Set IDE support"
depends on PPC_CELLEB 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 built-in IDE controller on
Toshiba Cell Reference Board. Toshiba Cell Reference Board.
...@@ -993,24 +1010,9 @@ config IDE_EXT_DIRECT ...@@ -993,24 +1010,9 @@ config IDE_EXT_DIRECT
endchoice endchoice
# no isa -> no vlb # no isa -> no vlb
config IDE_CHIPSETS if ISA
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
comment "Other IDE chipsets support"
comment "Note: most of these also require special kernel boot parameters" comment "Note: most of these also require special kernel boot parameters"
config BLK_DEV_4DRIVES config BLK_DEV_4DRIVES
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册