summaryrefslogtreecommitdiff
path: root/drivers/staging/wilc1000/Kconfig
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2015-10-16 22:45:39 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-10-16 22:03:05 -0700
commitbcc43a4b5ed75285aeacf2cf8d9b96d6379fb429 (patch)
tree216172279033b8ad90d6a7ea1521e8cb3e2edd30 /drivers/staging/wilc1000/Kconfig
parent92af89d37c415c61c676bb28ae7facdef1821477 (diff)
staging/wilc: fix Kconfig dependencies, second try
My first attempt to fix the Kconfig logic for wilc1000 was incomplete, as it missed the case where SPI is built-in while SDIO is modular and wilc1000 is configured as built-in in SPI mode (or vice versa), which would still lead to a link failure. This works around the problem by adding an intermediate Kconfig symbol "WILC1000_DRIVER" that controls visibility of the SDIO and SPI sub-drivers, so we can control the dependencies better. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Fixes: 9535ebc5e9cc ("staging/wilc1000: fix Kconfig dependencies") Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/wilc1000/Kconfig')
-rw-r--r--drivers/staging/wilc1000/Kconfig23
1 files changed, 14 insertions, 9 deletions
diff --git a/drivers/staging/wilc1000/Kconfig b/drivers/staging/wilc1000/Kconfig
index 59ccecc316df..ee51b4278088 100644
--- a/drivers/staging/wilc1000/Kconfig
+++ b/drivers/staging/wilc1000/Kconfig
@@ -1,14 +1,16 @@
-config WILC1000
- tristate "WILC1000 support (WiFi only)"
- depends on !S390
+config WILC1000_DRIVER
+ bool "WILC1000 support (WiFi only)"
depends on CFG80211 && WEXT_CORE && INET
- depends on MMC || SPI
---help---
This module only support IEEE 802.11n WiFi.
+if WILC1000_DRIVER
+
+config WILC1000
+ tristate
+
choice
prompt "Memory Allocation"
- depends on WILC1000
default WILC1000_PREALLOCATE_AT_LOADING_DRIVER
config WILC1000_PREALLOCATE_AT_LOADING_DRIVER
@@ -29,12 +31,12 @@ endchoice
choice
prompt "Bus Type"
- depends on WILC1000
default WILC1000_SDIO
- config WILC1000_SDIO
+config WILC1000_SDIO
bool "SDIO support"
depends on MMC
+ select WILC1000
---help---
This module adds support for the SDIO interface of adapters using
WILC1000 chipset. The Atmel WILC1000 SDIO is a full speed interface.
@@ -45,8 +47,9 @@ choice
To use this interface, pin9 (SDIO_SPI_CFG) must be grounded. Select
this if your platform is using the SDIO bus.
- config WILC1000_SPI
+config WILC1000_SPI
depends on SPI
+ select WILC1000
bool "SPI support"
---help---
This module adds support for the SPI interface of adapters using
@@ -60,7 +63,7 @@ endchoice
config WILC1000_HW_OOB_INTR
bool "Use out of band interrupt"
- depends on WILC1000 && WILC1000_SDIO
+ depends on WILC1000_SDIO
default n
---help---
This option enables out-of-band interrupt support for the WILC1000
@@ -68,3 +71,5 @@ config WILC1000_HW_OOB_INTR
mechanism for SDIO host controllers that don't support SDIO interrupt.
Select this option If the SDIO host controller in your platform
doesn't support SDIO time devision interrupt.
+
+endif