aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean Delvare <jdelvare@suse.de>2015-02-20 11:33:33 -0500
committerJiri Kosina <jkosina@suse.cz>2015-03-16 10:59:59 -0400
commit7af05e73cd204efad74fc9c48e5a1b1484d76f68 (patch)
tree323645c461b245a9a44b23e11efa5ebf2dc3c772
parentc4bbb39806cf4098d7a01a779b40171047004046 (diff)
HID: Stop hiding options with !EXPERT
Many HID driver options are hidden unless EXPERT is set. While I understand the idea of simplifying the kernel configuration for most users, in practice I believe it adds more confusion than it helps. One thing that worries me is that, in non-EXPERT mode, these drivers will be either built-in or modular based on apparent magic. For example, switching INPUT and HID from m to y will cause all these drivers to be built into the kernel when they were previously built as modules. Short of enabling EXPERT mode altogether, the user has no control over that. Generally I do not think tristate options should depend on !EXPERT. Of these, 11 of 15 are currently in the hid subsystem. The HID_LOGITECH option is even worse than the others. Sub-options depend on it, and this causes menuconfig and friends to display the option even though the user can't change its value. The help page for HID_LOGITECH will not explain why the value can't be changed. It only says, for example: Depends on: INPUT [=y] && HID [=y] and that leaves the user puzzled about why the option is forced to y. You might argue that this is a Kconfig bug, but that doesn't make it less annoying for the user. Even worse is that some of the sub-options of HID_LOGITECH select INPUT_FF_MEMLESS, which in turn gets out of control for the user. So, if you set INPUT=y and HID=y (something most general purpose distributions would do these days, as both modules would get loaded on a vast majority of systems otherwise), and you want support for force-feedback game controllers, you can't have that as a module, it has to be built-in, regardless of how rare these devices are. Of course, all this madness goes away once EXPERT is enabled, but then the rest of the kernel configuration becomes more complex, which totally voids the original point. For this reason, I would like all HID device tristate options to be displayed regardless of EXPERT being set or not. We can let the default settings still depend on EXPERT, that's not intrusive. Signed-off-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r--drivers/hid/Kconfig22
1 files changed, 11 insertions, 11 deletions
diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
index 152b006833cd..faf45fe6298b 100644
--- a/drivers/hid/Kconfig
+++ b/drivers/hid/Kconfig
@@ -92,7 +92,7 @@ menu "Special HID drivers"
92 depends on HID 92 depends on HID
93 93
94config HID_A4TECH 94config HID_A4TECH
95 tristate "A4 tech mice" if EXPERT 95 tristate "A4 tech mice"
96 depends on HID 96 depends on HID
97 default !EXPERT 97 default !EXPERT
98 ---help--- 98 ---help---
@@ -113,7 +113,7 @@ config HID_ACRUX_FF
113 game controllers. 113 game controllers.
114 114
115config HID_APPLE 115config HID_APPLE
116 tristate "Apple {i,Power,Mac}Books" if EXPERT 116 tristate "Apple {i,Power,Mac}Books"
117 depends on HID 117 depends on HID
118 default !EXPERT 118 default !EXPERT
119 ---help--- 119 ---help---
@@ -141,7 +141,7 @@ config HID_AUREAL
141 Support for Aureal Cy se W-01RN Remote Controller and other Aureal derived remotes. 141 Support for Aureal Cy se W-01RN Remote Controller and other Aureal derived remotes.
142 142
143config HID_BELKIN 143config HID_BELKIN
144 tristate "Belkin Flip KVM and Wireless keyboard" if EXPERT 144 tristate "Belkin Flip KVM and Wireless keyboard"
145 depends on HID 145 depends on HID
146 default !EXPERT 146 default !EXPERT
147 ---help--- 147 ---help---
@@ -158,14 +158,14 @@ config HID_BETOP_FF
158 - BETOP 2185 PC & BFM MODE 158 - BETOP 2185 PC & BFM MODE
159 159
160config HID_CHERRY 160config HID_CHERRY
161 tristate "Cherry Cymotion keyboard" if EXPERT 161 tristate "Cherry Cymotion keyboard"
162 depends on HID 162 depends on HID
163 default !EXPERT 163 default !EXPERT
164 ---help--- 164 ---help---
165 Support for Cherry Cymotion keyboard. 165 Support for Cherry Cymotion keyboard.
166 166
167config HID_CHICONY 167config HID_CHICONY
168 tristate "Chicony Tactical pad" if EXPERT 168 tristate "Chicony Tactical pad"
169 depends on HID 169 depends on HID
170 default !EXPERT 170 default !EXPERT
171 ---help--- 171 ---help---
@@ -196,7 +196,7 @@ config HID_CP2112
196 customizable USB descriptor fields are exposed as sysfs attributes. 196 customizable USB descriptor fields are exposed as sysfs attributes.
197 197
198config HID_CYPRESS 198config HID_CYPRESS
199 tristate "Cypress mouse and barcode readers" if EXPERT 199 tristate "Cypress mouse and barcode readers"
200 depends on HID 200 depends on HID
201 default !EXPERT 201 default !EXPERT
202 ---help--- 202 ---help---
@@ -245,7 +245,7 @@ config HID_ELO
245 different devices than those handled by CONFIG_TOUCHSCREEN_USB_ELO. 245 different devices than those handled by CONFIG_TOUCHSCREEN_USB_ELO.
246 246
247config HID_EZKEY 247config HID_EZKEY
248 tristate "Ezkey BTC 8193 keyboard" if EXPERT 248 tristate "Ezkey BTC 8193 keyboard"
249 depends on HID 249 depends on HID
250 default !EXPERT 250 default !EXPERT
251 ---help--- 251 ---help---
@@ -344,7 +344,7 @@ config HID_TWINHAN
344 Support for Twinhan IR remote control. 344 Support for Twinhan IR remote control.
345 345
346config HID_KENSINGTON 346config HID_KENSINGTON
347 tristate "Kensington Slimblade Trackball" if EXPERT 347 tristate "Kensington Slimblade Trackball"
348 depends on HID 348 depends on HID
349 default !EXPERT 349 default !EXPERT
350 ---help--- 350 ---help---
@@ -372,7 +372,7 @@ config HID_LENOVO
372 - ThinkPad Compact USB Keyboard with TrackPoint (supports Fn keys) 372 - ThinkPad Compact USB Keyboard with TrackPoint (supports Fn keys)
373 373
374config HID_LOGITECH 374config HID_LOGITECH
375 tristate "Logitech devices" if EXPERT 375 tristate "Logitech devices"
376 depends on HID 376 depends on HID
377 default !EXPERT 377 default !EXPERT
378 ---help--- 378 ---help---
@@ -461,14 +461,14 @@ config HID_MAGICMOUSE
461 Apple Wireless "Magic" Mouse and the Apple Wireless "Magic" Trackpad. 461 Apple Wireless "Magic" Mouse and the Apple Wireless "Magic" Trackpad.
462 462
463config HID_MICROSOFT 463config HID_MICROSOFT
464 tristate "Microsoft non-fully HID-compliant devices" if EXPERT 464 tristate "Microsoft non-fully HID-compliant devices"
465 depends on HID 465 depends on HID
466 default !EXPERT 466 default !EXPERT
467 ---help--- 467 ---help---
468 Support for Microsoft devices that are not fully compliant with HID standard. 468 Support for Microsoft devices that are not fully compliant with HID standard.
469 469
470config HID_MONTEREY 470config HID_MONTEREY
471 tristate "Monterey Genius KB29E keyboard" if EXPERT 471 tristate "Monterey Genius KB29E keyboard"
472 depends on HID 472 depends on HID
473 default !EXPERT 473 default !EXPERT
474 ---help--- 474 ---help---