浏览代码

SPI Kconfig simplifications

Use "if SPI_MASTER" to remove numerous dependencies.

[dbrownell@users.sourceforge.net: remove a couple now-needless EXPERIMENTAL dependencies too]
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Robert P. J. Day 17 年之前
父节点
当前提交
6291fe2abc
共有 1 个文件被更改,包括 23 次插入22 次删除
  1. 23 22
      drivers/spi/Kconfig

+ 23 - 22
drivers/spi/Kconfig

@@ -49,25 +49,26 @@ config SPI_MASTER
 	  controller and the protocol drivers for the SPI slave chips
 	  controller and the protocol drivers for the SPI slave chips
 	  that are connected.
 	  that are connected.
 
 
+if SPI_MASTER
+
 comment "SPI Master Controller Drivers"
 comment "SPI Master Controller Drivers"
-	depends on SPI_MASTER
 
 
 config SPI_ATMEL
 config SPI_ATMEL
 	tristate "Atmel SPI Controller"
 	tristate "Atmel SPI Controller"
-	depends on (ARCH_AT91 || AVR32) && SPI_MASTER
+	depends on (ARCH_AT91 || AVR32)
 	help
 	help
 	  This selects a driver for the Atmel SPI Controller, present on
 	  This selects a driver for the Atmel SPI Controller, present on
 	  many AT32 (AVR32) and AT91 (ARM) chips.
 	  many AT32 (AVR32) and AT91 (ARM) chips.
 
 
 config SPI_BFIN
 config SPI_BFIN
 	tristate "SPI controller driver for ADI Blackfin5xx"
 	tristate "SPI controller driver for ADI Blackfin5xx"
-	depends on SPI_MASTER && BLACKFIN
+	depends on BLACKFIN
 	help
 	help
 	  This is the SPI controller master driver for Blackfin 5xx processor.
 	  This is the SPI controller master driver for Blackfin 5xx processor.
 
 
 config SPI_AU1550
 config SPI_AU1550
 	tristate "Au1550/Au12x0 SPI Controller"
 	tristate "Au1550/Au12x0 SPI Controller"
-	depends on SPI_MASTER && (SOC_AU1550 || SOC_AU1200) && EXPERIMENTAL
+	depends on (SOC_AU1550 || SOC_AU1200) && EXPERIMENTAL
 	select SPI_BITBANG
 	select SPI_BITBANG
 	help
 	help
 	  If you say yes to this option, support will be included for the
 	  If you say yes to this option, support will be included for the
@@ -78,7 +79,6 @@ config SPI_AU1550
 
 
 config SPI_BITBANG
 config SPI_BITBANG
 	tristate "Bitbanging SPI master"
 	tristate "Bitbanging SPI master"
-	depends on SPI_MASTER && EXPERIMENTAL
 	help
 	help
 	  With a few GPIO pins, your system can bitbang the SPI protocol.
 	  With a few GPIO pins, your system can bitbang the SPI protocol.
 	  Select this to get SPI support through I/O pins (GPIO, parallel
 	  Select this to get SPI support through I/O pins (GPIO, parallel
@@ -92,7 +92,7 @@ config SPI_BITBANG
 
 
 config SPI_BUTTERFLY
 config SPI_BUTTERFLY
 	tristate "Parallel port adapter for AVR Butterfly (DEVELOPMENT)"
 	tristate "Parallel port adapter for AVR Butterfly (DEVELOPMENT)"
-	depends on SPI_MASTER && PARPORT && EXPERIMENTAL
+	depends on PARPORT
 	select SPI_BITBANG
 	select SPI_BITBANG
 	help
 	help
 	  This uses a custom parallel port cable to connect to an AVR
 	  This uses a custom parallel port cable to connect to an AVR
@@ -102,14 +102,14 @@ config SPI_BUTTERFLY
 
 
 config SPI_IMX
 config SPI_IMX
 	tristate "Freescale iMX SPI controller"
 	tristate "Freescale iMX SPI controller"
-	depends on SPI_MASTER && ARCH_IMX && EXPERIMENTAL
+	depends on ARCH_IMX && EXPERIMENTAL
 	help
 	help
 	  This enables using the Freescale iMX SPI controller in master
 	  This enables using the Freescale iMX SPI controller in master
 	  mode.
 	  mode.
 
 
 config SPI_LM70_LLP
 config SPI_LM70_LLP
 	tristate "Parallel port adapter for LM70 eval board (DEVELOPMENT)"
 	tristate "Parallel port adapter for LM70 eval board (DEVELOPMENT)"
-	depends on SPI_MASTER && PARPORT && EXPERIMENTAL
+	depends on PARPORT && EXPERIMENTAL
 	select SPI_BITBANG
 	select SPI_BITBANG
 	help
 	help
 	  This driver supports the NS LM70 LLP Evaluation Board,
 	  This driver supports the NS LM70 LLP Evaluation Board,
@@ -118,14 +118,14 @@ config SPI_LM70_LLP
 
 
 config SPI_MPC52xx_PSC
 config SPI_MPC52xx_PSC
 	tristate "Freescale MPC52xx PSC SPI controller"
 	tristate "Freescale MPC52xx PSC SPI controller"
-	depends on SPI_MASTER && PPC_MPC52xx && EXPERIMENTAL
+	depends on PPC_MPC52xx && EXPERIMENTAL
 	help
 	help
 	  This enables using the Freescale MPC52xx Programmable Serial
 	  This enables using the Freescale MPC52xx Programmable Serial
 	  Controller in master SPI mode.
 	  Controller in master SPI mode.
 
 
 config SPI_MPC83xx
 config SPI_MPC83xx
 	tristate "Freescale MPC83xx/QUICC Engine SPI controller"
 	tristate "Freescale MPC83xx/QUICC Engine SPI controller"
-	depends on SPI_MASTER && (PPC_83xx || QUICC_ENGINE) && EXPERIMENTAL
+	depends on (PPC_83xx || QUICC_ENGINE) && EXPERIMENTAL
 	help
 	help
 	  This enables using the Freescale MPC83xx and QUICC Engine SPI
 	  This enables using the Freescale MPC83xx and QUICC Engine SPI
 	  controllers in master mode.
 	  controllers in master mode.
@@ -137,21 +137,21 @@ config SPI_MPC83xx
 
 
 config SPI_OMAP_UWIRE
 config SPI_OMAP_UWIRE
 	tristate "OMAP1 MicroWire"
 	tristate "OMAP1 MicroWire"
-	depends on SPI_MASTER && ARCH_OMAP1
+	depends on ARCH_OMAP1
 	select SPI_BITBANG
 	select SPI_BITBANG
 	help
 	help
 	  This hooks up to the MicroWire controller on OMAP1 chips.
 	  This hooks up to the MicroWire controller on OMAP1 chips.
 
 
 config SPI_OMAP24XX
 config SPI_OMAP24XX
 	tristate "McSPI driver for OMAP24xx/OMAP34xx"
 	tristate "McSPI driver for OMAP24xx/OMAP34xx"
-	depends on SPI_MASTER && (ARCH_OMAP24XX || ARCH_OMAP34XX)
+	depends on ARCH_OMAP24XX || ARCH_OMAP34XX
 	help
 	help
 	  SPI master controller for OMAP24xx/OMAP34xx Multichannel SPI
 	  SPI master controller for OMAP24xx/OMAP34xx Multichannel SPI
 	  (McSPI) modules.
 	  (McSPI) modules.
 
 
 config SPI_PXA2XX
 config SPI_PXA2XX
 	tristate "PXA2xx SSP SPI master"
 	tristate "PXA2xx SSP SPI master"
-	depends on SPI_MASTER && ARCH_PXA && EXPERIMENTAL
+	depends on ARCH_PXA && EXPERIMENTAL
 	select PXA_SSP
 	select PXA_SSP
 	help
 	help
 	  This enables using a PXA2xx SSP port as a SPI master controller.
 	  This enables using a PXA2xx SSP port as a SPI master controller.
@@ -160,14 +160,14 @@ config SPI_PXA2XX
 
 
 config SPI_S3C24XX
 config SPI_S3C24XX
 	tristate "Samsung S3C24XX series SPI"
 	tristate "Samsung S3C24XX series SPI"
-	depends on SPI_MASTER && ARCH_S3C2410 && EXPERIMENTAL
+	depends on ARCH_S3C2410 && EXPERIMENTAL
 	select SPI_BITBANG
 	select SPI_BITBANG
 	help
 	help
 	  SPI driver for Samsung S3C24XX series ARM SoCs
 	  SPI driver for Samsung S3C24XX series ARM SoCs
 
 
 config SPI_S3C24XX_GPIO
 config SPI_S3C24XX_GPIO
 	tristate "Samsung S3C24XX series SPI by GPIO"
 	tristate "Samsung S3C24XX series SPI by GPIO"
-	depends on SPI_MASTER && ARCH_S3C2410 && EXPERIMENTAL
+	depends on ARCH_S3C2410 && EXPERIMENTAL
 	select SPI_BITBANG
 	select SPI_BITBANG
 	help
 	help
 	  SPI driver for Samsung S3C24XX series ARM SoCs using
 	  SPI driver for Samsung S3C24XX series ARM SoCs using
@@ -177,20 +177,20 @@ config SPI_S3C24XX_GPIO
 
 
 config SPI_SH_SCI
 config SPI_SH_SCI
 	tristate "SuperH SCI SPI controller"
 	tristate "SuperH SCI SPI controller"
-	depends on SPI_MASTER && SUPERH
+	depends on SUPERH
 	select SPI_BITBANG
 	select SPI_BITBANG
 	help
 	help
 	  SPI driver for SuperH SCI blocks.
 	  SPI driver for SuperH SCI blocks.
 
 
 config SPI_TXX9
 config SPI_TXX9
 	tristate "Toshiba TXx9 SPI controller"
 	tristate "Toshiba TXx9 SPI controller"
-	depends on SPI_MASTER && GENERIC_GPIO && CPU_TX49XX
+	depends on GENERIC_GPIO && CPU_TX49XX
 	help
 	help
 	  SPI driver for Toshiba TXx9 MIPS SoCs
 	  SPI driver for Toshiba TXx9 MIPS SoCs
 
 
 config SPI_XILINX
 config SPI_XILINX
 	tristate "Xilinx SPI controller"
 	tristate "Xilinx SPI controller"
-	depends on SPI_MASTER && XILINX_VIRTEX && EXPERIMENTAL
+	depends on XILINX_VIRTEX && EXPERIMENTAL
 	select SPI_BITBANG
 	select SPI_BITBANG
 	help
 	help
 	  This exposes the SPI controller IP from the Xilinx EDK.
 	  This exposes the SPI controller IP from the Xilinx EDK.
@@ -207,11 +207,10 @@ config SPI_XILINX
 # being probably the most widely used ones.
 # being probably the most widely used ones.
 #
 #
 comment "SPI Protocol Masters"
 comment "SPI Protocol Masters"
-	depends on SPI_MASTER
 
 
 config SPI_AT25
 config SPI_AT25
 	tristate "SPI EEPROMs from most vendors"
 	tristate "SPI EEPROMs from most vendors"
-	depends on SPI_MASTER && SYSFS
+	depends on SYSFS
 	help
 	help
 	  Enable this driver to get read/write support to most SPI EEPROMs,
 	  Enable this driver to get read/write support to most SPI EEPROMs,
 	  after you configure the board init code to know about each eeprom
 	  after you configure the board init code to know about each eeprom
@@ -222,7 +221,7 @@ config SPI_AT25
 
 
 config SPI_SPIDEV
 config SPI_SPIDEV
 	tristate "User mode SPI device driver support"
 	tristate "User mode SPI device driver support"
-	depends on SPI_MASTER && EXPERIMENTAL
+	depends on EXPERIMENTAL
 	help
 	help
 	  This supports user mode SPI protocol drivers.
 	  This supports user mode SPI protocol drivers.
 
 
@@ -231,7 +230,7 @@ config SPI_SPIDEV
 
 
 config SPI_TLE62X0
 config SPI_TLE62X0
 	tristate "Infineon TLE62X0 (for power switching)"
 	tristate "Infineon TLE62X0 (for power switching)"
-	depends on SPI_MASTER && SYSFS
+	depends on SYSFS
 	help
 	help
 	  SPI driver for Infineon TLE62X0 series line driver chips,
 	  SPI driver for Infineon TLE62X0 series line driver chips,
 	  such as the TLE6220, TLE6230 and TLE6240.  This provides a
 	  such as the TLE6220, TLE6230 and TLE6240.  This provides a
@@ -242,6 +241,8 @@ config SPI_TLE62X0
 # Add new SPI protocol masters in alphabetical order above this line
 # Add new SPI protocol masters in alphabetical order above this line
 #
 #
 
 
+endif # SPI_MASTER
+
 # (slave support would go here)
 # (slave support would go here)
 
 
 endif # SPI
 endif # SPI