Thread (5 messages) 5 messages, 3 authors, 2013-06-13

Re: Dependencies in the HID subsystem

From: David Herrmann <hidden>
Date: 2013-05-29 22:23:38
Also in: linux-kbuild

Hi

On Wed, May 29, 2013 at 10:52 PM, Jiri Kosina [off-list ref] wrote:
On Wed, 29 May 2013, Jean Delvare wrote:
quoted
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help