Message ID | 201109021643.14275.arnd@arndb.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi Arnd, On Fri, 2 Sep 2011 16:43:14 +0200, Arnd Bergmann wrote: > Since misc devices have nothing in common besides fitting in no > other category, there is no need to group them in one Kconfig > symbol. Simply removing the symbol gets rid of all sorts of > Kconfig warnings about missing dependencies when another driver > selects a misc driver without also selecting MISC_DEVICES. > > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > arch/arm/mach-davinci/Kconfig | 6 ------ > arch/unicore32/Kconfig | 1 - > drivers/misc/Kconfig | 26 ++++++++------------------ > drivers/mmc/host/Kconfig | 1 - > 4 files changed, 8 insertions(+), 26 deletions(-) > (...) > --- a/drivers/misc/Kconfig > +++ b/drivers/misc/Kconfig > @@ -2,23 +2,7 @@ > # Misc strange devices > # > > -# This one has to live outside of the MISC_DEVICES conditional, > -# because it may be selected by drivers/platform/x86/hp_accel. > -config SENSORS_LIS3LV02D > - tristate > - depends on INPUT > - select INPUT_POLLDEV > - default n > - > -menuconfig MISC_DEVICES > - bool "Misc devices" > - ---help--- > - Say Y here to get to see options for device drivers from various > - different categories. This option alone does not add any kernel code. > - > - If you say N, all options in this submenu will be skipped and disabled. > - > -if MISC_DEVICES > +menu "Misc devices" As said before, I'm not sure. Yes, it makes it easier to select misc device drivers from Kconfig files. But it also makes it impossible to deselect all misc device drivers at once. I think that what we really need is the implementation in the Kconfig system of smart selects, i.e. whenever an entry is selected, everything it depends on gets selected as well. I don't know how feasible this is, but if it can be done then I'd prefer this to your proposal. Meanwhile, I am not in favor of applying your patch. The benefit is relatively small IMHO (misc device drivers are rarely selected) and there is one significant drawback. That being said, I'm not the one to decide, so if you can convince someone with more power (aka Andrew Morton)... > > config AD525X_DPOT > tristate "Analog Devices Digital Potentiometers" > @@ -344,6 +328,12 @@ config ISL29020 > This driver can also be built as a module. If so, the module > will be called isl29020. > > +config SENSORS_LIS3LV02D > + tristate > + depends on INPUT > + select INPUT_POLLDEV > + default n > + If you patch gets applied, then this one would better be moved to drivers/misc/lis3lv02d/Kconfig.
On Monday 05 September 2011, Jean Delvare wrote: > As said before, I'm not sure. Yes, it makes it easier to select misc > device drivers from Kconfig files. But it also makes it impossible to > deselect all misc device drivers at once. > > I think that what we really need is the implementation in the Kconfig > system of smart selects, i.e. whenever an entry is selected, everything > it depends on gets selected as well. I don't know how feasible this is, > but if it can be done then I'd prefer this to your proposal. > > Meanwhile, I am not in favor of applying your patch. The benefit is > relatively small IMHO (misc device drivers are rarely selected) and > there is one significant drawback. Before I made this patch, I started a different one that added about a dozen 'select MISC_DEVICES' statements sprinkled all over the kernel in order to silence the Kconfig warnings. The problem is that whenever you select that option, the misc directory suddenly becomes visible when it was disabled before, and things like 'oldconfig' will start asking about all other misc drivers as well. I think it would simply be more consistent to have it enabled all the time. Well, even better would be to move the bulk of the misc drivers to a proper location sorted by their subsystems. A lot of them should never have been merged in their current state IMHO. > That being said, I'm not the one to decide, so if you can convince > someone with more power (aka Andrew Morton)... I think I should finally do what has been talked about a few times and formally become the maintainer of drivers/char and drivers/misc ;-) The problem is that I'm not actually a good maintainer, but maybe it's better to just have someone instead of falling back to Andrew or some random subsystem maintainer to send any patches for drivers/misc. > > config AD525X_DPOT > > tristate "Analog Devices Digital Potentiometers" > > @@ -344,6 +328,12 @@ config ISL29020 > > This driver can also be built as a module. If so, the module > > will be called isl29020. > > > > +config SENSORS_LIS3LV02D > > + tristate > > + depends on INPUT > > + select INPUT_POLLDEV > > + default n > > + > > If you patch gets applied, then this one would better be moved to > drivers/misc/lis3lv02d/Kconfig. Ah, that's true. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, 5 Sep 2011 16:19:35 +0200, Arnd Bergmann wrote: > On Monday 05 September 2011, Jean Delvare wrote: > > As said before, I'm not sure. Yes, it makes it easier to select misc > > device drivers from Kconfig files. But it also makes it impossible to > > deselect all misc device drivers at once. > > > > I think that what we really need is the implementation in the Kconfig > > system of smart selects, i.e. whenever an entry is selected, everything > > it depends on gets selected as well. I don't know how feasible this is, > > but if it can be done then I'd prefer this to your proposal. > > > > Meanwhile, I am not in favor of applying your patch. The benefit is > > relatively small IMHO (misc device drivers are rarely selected) and > > there is one significant drawback. > > Before I made this patch, I started a different one that added about > a dozen 'select MISC_DEVICES' statements sprinkled all over the kernel > in order to silence the Kconfig warnings. Ah, OK. This certainly shifts the scales towards your side. > The problem is that whenever you select that option, the misc directory > suddenly becomes visible when it was disabled before, and things like > 'oldconfig' will start asking about all other misc drivers as well. Another good point. Maybe I'm convinced now. > I think it would simply be more consistent to have it enabled all > the time. Well, even better would be to move the bulk of the misc > drivers to a proper location sorted by their subsystems. A lot of them > should never have been merged in their current state IMHO. As one of the offenders, I won't dare to comment on this ;) > > That being said, I'm not the one to decide, so if you can convince > > someone with more power (aka Andrew Morton)... > > I think I should finally do what has been talked about a few times and > formally become the maintainer of drivers/char and drivers/misc ;-) > > The problem is that I'm not actually a good maintainer, but maybe it's > better to just have someone instead of falling back to Andrew or > some random subsystem maintainer to send any patches for drivers/misc. Certainly. And having a maintainer for these (non-)subsystems would certainly help keep their size low, while the current trend is in the other direction.
diff --git a/arch/arm/mach-davinci/Kconfig b/arch/arm/mach-davinci/Kconfig index c0deaca..3755cec 100644 --- a/arch/arm/mach-davinci/Kconfig +++ b/arch/arm/mach-davinci/Kconfig @@ -61,7 +61,6 @@ config MACH_DAVINCI_EVM bool "TI DM644x EVM" default ARCH_DAVINCI_DM644x depends on ARCH_DAVINCI_DM644x - select MISC_DEVICES select EEPROM_AT24 select I2C help @@ -71,7 +70,6 @@ config MACH_DAVINCI_EVM config MACH_SFFSDR bool "Lyrtech SFFSDR" depends on ARCH_DAVINCI_DM644x - select MISC_DEVICES select EEPROM_AT24 select I2C help @@ -105,7 +103,6 @@ config MACH_DAVINCI_DM6467_EVM default ARCH_DAVINCI_DM646x depends on ARCH_DAVINCI_DM646x select MACH_DAVINCI_DM6467TEVM - select MISC_DEVICES select EEPROM_AT24 select I2C help @@ -119,7 +116,6 @@ config MACH_DAVINCI_DM365_EVM bool "TI DM365 EVM" default ARCH_DAVINCI_DM365 depends on ARCH_DAVINCI_DM365 - select MISC_DEVICES select EEPROM_AT24 select I2C help @@ -131,7 +127,6 @@ config MACH_DAVINCI_DA830_EVM default ARCH_DAVINCI_DA830 depends on ARCH_DAVINCI_DA830 select GPIO_PCF857X - select MISC_DEVICES select EEPROM_AT24 select I2C help @@ -208,7 +203,6 @@ config MACH_TNETV107X config MACH_MITYOMAPL138 bool "Critical Link MityDSP-L138/MityARM-1808 SoM" depends on ARCH_DAVINCI_DA850 - select MISC_DEVICES select EEPROM_AT24 select I2C help diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig index e57dcce..5fb023a 100644 --- a/arch/unicore32/Kconfig +++ b/arch/unicore32/Kconfig @@ -244,7 +244,6 @@ config I2C_BATTERY_BQ27200 config I2C_EEPROM_AT24 tristate "I2C EEPROMs AT24 support" select PUV3_I2C - select MISC_DEVICES select EEPROM_AT24 config LCD_BACKLIGHT diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index 2d6423c..c11e5ba 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -2,23 +2,7 @@ # Misc strange devices # -# This one has to live outside of the MISC_DEVICES conditional, -# because it may be selected by drivers/platform/x86/hp_accel. -config SENSORS_LIS3LV02D - tristate - depends on INPUT - select INPUT_POLLDEV - default n - -menuconfig MISC_DEVICES - bool "Misc devices" - ---help--- - Say Y here to get to see options for device drivers from various - different categories. This option alone does not add any kernel code. - - If you say N, all options in this submenu will be skipped and disabled. - -if MISC_DEVICES +menu "Misc devices" config AD525X_DPOT tristate "Analog Devices Digital Potentiometers" @@ -344,6 +328,12 @@ config ISL29020 This driver can also be built as a module. If so, the module will be called isl29020. +config SENSORS_LIS3LV02D + tristate + depends on INPUT + select INPUT_POLLDEV + default n + config SENSORS_TSL2550 tristate "Taos TSL2550 ambient light sensor" depends on I2C && SYSFS @@ -507,4 +497,4 @@ source "drivers/misc/ti-st/Kconfig" source "drivers/misc/lis3lv02d/Kconfig" source "drivers/misc/carma/Kconfig" -endif # MISC_DEVICES +endmenu diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig index 8c87096..4fb03d4 100644 --- a/drivers/mmc/host/Kconfig +++ b/drivers/mmc/host/Kconfig @@ -477,7 +477,6 @@ config MMC_SDHI config MMC_CB710 tristate "ENE CB710 MMC/SD Interface support" depends on PCI - select MISC_DEVICES select CB710_CORE help This option enables support for MMC/SD part of ENE CB710/720 Flash
Since misc devices have nothing in common besides fitting in no other category, there is no need to group them in one Kconfig symbol. Simply removing the symbol gets rid of all sorts of Kconfig warnings about missing dependencies when another driver selects a misc driver without also selecting MISC_DEVICES. Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- arch/arm/mach-davinci/Kconfig | 6 ------ arch/unicore32/Kconfig | 1 - drivers/misc/Kconfig | 26 ++++++++------------------ drivers/mmc/host/Kconfig | 1 - 4 files changed, 8 insertions(+), 26 deletions(-)