diff mbox

[2/2] mfd: remove CONFIG_MFD_SUPPORT

Message ID 201109021643.36369.arnd@arndb.de (mailing list archive)
State New, archived
Headers show

Commit Message

Arnd Bergmann Sept. 2, 2011, 2:43 p.m. UTC
We currently have two symbols to control compilation the MFD subsystem,
MFD_SUPPORT and MFD_CORE. The MFD_SUPPORT is actually not required
at all, it only hides the submenu when not set, with the effect that
Kconfig warns about missing dependencies when another driver selects
an MFD driver while MFD_SUPPORT is disabled. Turning the MFD submenu
back from menuconfig into a plain menu simplifies the Kconfig syntax
for those kinds of users and avoids the surprise when the menu
suddenly appears because another driver was enabled that selects this
symbol.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 arch/arm/mach-omap2/Kconfig |    1 -
 drivers/gpio/Kconfig        |    3 +--
 drivers/i2c/busses/Kconfig  |    1 -
 drivers/media/radio/Kconfig |    1 -
 drivers/mfd/Kconfig         |   22 ++++------------------
 5 files changed, 5 insertions(+), 23 deletions(-)

Comments

Jean Delvare Sept. 5, 2011, 1:09 p.m. UTC | #1
On Fri, 2 Sep 2011 16:43:36 +0200, Arnd Bergmann wrote:
> We currently have two symbols to control compilation the MFD subsystem,
> MFD_SUPPORT and MFD_CORE. The MFD_SUPPORT is actually not required
> at all, it only hides the submenu when not set, with the effect that
> Kconfig warns about missing dependencies when another driver selects
> an MFD driver while MFD_SUPPORT is disabled. Turning the MFD submenu
> back from menuconfig into a plain menu simplifies the Kconfig syntax
> for those kinds of users and avoids the surprise when the menu
> suddenly appears because another driver was enabled that selects this
> symbol.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  arch/arm/mach-omap2/Kconfig |    1 -
>  drivers/gpio/Kconfig        |    3 +--
>  drivers/i2c/busses/Kconfig  |    1 -
>  drivers/media/radio/Kconfig |    1 -
>  drivers/mfd/Kconfig         |   22 ++++------------------
>  5 files changed, 5 insertions(+), 23 deletions(-)
> (...)
> --- a/drivers/mfd/Kconfig
> +++ b/drivers/mfd/Kconfig
> @@ -2,23 +2,8 @@
>  # Multifunction miscellaneous devices
>  #
>  
> -menuconfig MFD_SUPPORT
> -	bool "Multifunction device drivers"
> -	depends on HAS_IOMEM
> -	default y
> -	help
> -	  Multifunction devices embed several functions (e.g. GPIOs,
> -	  touchscreens, keyboards, current regulators, power management chips,
> -	  etc...) in one single integrated circuit. They usually talk to the
> -	  main CPU through one or more IRQ lines and low speed data busses (SPI,
> -	  I2C, etc..). They appear as one single device to the main system
> -	  through the data bus and the MFD framework allows for sub devices
> -	  (a.k.a. functions) to appear as discrete platform devices.
> -	  MFDs are typically found on embedded platforms.
> -
> -	  This option alone does not add any kernel code.
> -
> -if MFD_SUPPORT
> +if HAS_IOMEM
> +menu "Multifunction device drivers"
>  
>  config MFD_CORE
>  	tristate

I think I prefer Luciano's proposal, for the same reasons given for the
misc device drivers patch. But here again I'm not the one making the
decision, so it's up to Samuel to decide which patch he wants to apply.
diff mbox

Patch

diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 57b66d5..1aee224 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -14,7 +14,6 @@  config ARCH_OMAP2PLUS_TYPICAL
 	select SERIAL_OMAP_CONSOLE
 	select I2C
 	select I2C_OMAP
-	select MFD_SUPPORT
 	select MENELAUS if ARCH_OMAP2
 	select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
 	select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index d539efd..fbc5fd4 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -180,7 +180,7 @@  config GPIO_SCH
 
 config GPIO_VX855
 	tristate "VIA VX855/VX875 GPIO"
-	depends on MFD_SUPPORT && PCI
+	depends on PCI
 	select MFD_CORE
 	select MFD_VX855
 	help
@@ -417,7 +417,6 @@  config GPIO_TIMBERDALE
 config GPIO_RDC321X
 	tristate "RDC R-321x GPIO support"
 	depends on PCI
-	select MFD_SUPPORT
 	select MFD_CORE
 	select MFD_RDC321X
 	help
diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
index 646068e..d625a48 100644
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
@@ -110,7 +110,6 @@  config I2C_I801
 config I2C_ISCH
 	tristate "Intel SCH SMBus 1.0"
 	depends on PCI
-	select MFD_CORE
 	select LPC_SCH
 	help
 	  Say Y here if you want to use SMBus controller on the Intel SCH
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig
index 52798a1..ccd5f0d 100644
--- a/drivers/media/radio/Kconfig
+++ b/drivers/media/radio/Kconfig
@@ -426,7 +426,6 @@  config RADIO_TIMBERDALE
 config RADIO_WL1273
 	tristate "Texas Instruments WL1273 I2C FM Radio"
 	depends on I2C && VIDEO_V4L2
-	select MFD_CORE
 	select MFD_WL1273_CORE
 	select FW_LOADER
 	---help---
diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index 21574bd..a7f1137 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -2,23 +2,8 @@ 
 # Multifunction miscellaneous devices
 #
 
-menuconfig MFD_SUPPORT
-	bool "Multifunction device drivers"
-	depends on HAS_IOMEM
-	default y
-	help
-	  Multifunction devices embed several functions (e.g. GPIOs,
-	  touchscreens, keyboards, current regulators, power management chips,
-	  etc...) in one single integrated circuit. They usually talk to the
-	  main CPU through one or more IRQ lines and low speed data busses (SPI,
-	  I2C, etc..). They appear as one single device to the main system
-	  through the data bus and the MFD framework allows for sub devices
-	  (a.k.a. functions) to appear as discrete platform devices.
-	  MFDs are typically found on embedded platforms.
-
-	  This option alone does not add any kernel code.
-
-if MFD_SUPPORT
+if HAS_IOMEM
+menu "Multifunction device drivers"
 
 config MFD_CORE
 	tristate
@@ -770,7 +755,8 @@  config MFD_AAT2870_CORE
 	  additional drivers must be enabled in order to use the
 	  functionality of the device.
 
-endif # MFD_SUPPORT
+endmenu
+endif
 
 menu "Multimedia Capabilities Port drivers"
 	depends on ARCH_SA1100