Hi On Wed, May 29, 2013 at 10:52 PM, Jiri Kosina <jkosina@xxxxxxx> wrote: > On Wed, 29 May 2013, Jean Delvare wrote: > >> I am worried and confused by some Kconfig dependencies in the HID >> subsystem. >> >> There are 11 HID device drivers which are defined in drivers/hid/Kconfig >> with: >> >> tristate "..." if EXPERT >> default !EXPERT >> >> Unless EXPERT is enabled (and that's not the default), these driver >> entries are hidden and automatically selected. If CONFIG_HID=m, they are >> selected as modules. If CONFIG_HID=y, they are built into the kernel. So >> it is impossible to have CONFIG_HID=y and build these device drivers as >> modules - as device drivers typically are. >> >> I would like to understand the reasoning behind this complexity. What is >> so special about these 11 drivers, that we can't just let the (kernel >> configuring) user chose if he/she wants them and in what form? For several reason I recommend CONFIG_EXPERT for all users, anyway. But apart from that, what's wrong with "default y" and dropping any CONFIG_EXPERT dependency? We can still keep the "tristate '..' if EXPERT". The CONFIG_EXPERT descriptions says "this option allows certain base kernel options and settings to be disabled or tweaked". This really doesn't say anything about "disable any non-standard options if this is selected". So why do we default to "n" if CONFIG_EXPERT is selected? This always bothered me because I don't expect the config to change if I select it. Cheers David -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html