Skip to content

Commit

Permalink
HID: Fix the generic Kconfig options
Browse files Browse the repository at this point in the history
The generic HID driver is obviously not a special driver, so move it
outside of the special drivers menu. Explain the usage and make the
default follow the HID setting. This should simplify migration from
older kernels. While at it, remove the redundant HID_SUPPORT option
and modify the HID and USB_HID entries to better explain the bus
structure.

Change-Id: Ifef2d51a225dae40d685f4bfdde157e57774be48
Reported-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Kevin F. Haggerty <haggertk@lineageos.org>
  • Loading branch information
rydberg authored and bgcngm committed Jan 19, 2019
1 parent f45f571 commit 0e087f1
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 28 deletions.
43 changes: 20 additions & 23 deletions drivers/hid/Kconfig
@@ -1,20 +1,11 @@
#
# HID driver configuration
#
menuconfig HID_SUPPORT
bool "HID Devices"
depends on INPUT
default y
---help---
Say Y here to get to see options for various computer-human interface
device drivers. This option alone does not add any kernel code.

If you say N, all options in this submenu will be skipped and disabled.

if HID_SUPPORT
menu "HID support"
depends on INPUT

config HID
tristate "Generic HID support"
tristate "HID bus support"
depends on INPUT
default y
---help---
Expand All @@ -23,14 +14,17 @@ config HID
most commonly used to refer to the USB-HID specification, but other
devices (such as, but not strictly limited to, Bluetooth) are
designed using HID specification (this involves certain keyboards,
mice, tablets, etc). This option compiles into kernel the generic
HID layer code (parser, usages, etc.), which can then be used by
transport-specific HID implementation (like USB or Bluetooth).
mice, tablets, etc). This option adds the HID bus to the kernel,
together with generic HID layer code. The HID devices are added and
removed from the HID bus by the transport-layer drivers, such as
usbhid (USB_HID) and hidp (BT_HIDP).

For docs and specs, see http://www.usb.org/developers/hidpage/

If unsure, say Y.

if HID

config HID_BATTERY_STRENGTH
bool
depends on HID && POWER_SUPPLY && HID = POWER_SUPPLY
Expand Down Expand Up @@ -76,23 +70,22 @@ config UHID
To compile this driver as a module, choose M here: the
module will be called uhid.

source "drivers/hid/usbhid/Kconfig"

menu "Special HID drivers"
depends on HID

config HID_GENERIC
tristate "Generic HID driver"
depends on HID
default y
default HID
---help---
Support for generic HID devices.
Support for generic devices on the HID bus. This includes most
keyboards and mice, joysticks, tablets and digitizers.

To compile this driver as a module, choose M here: the module
will be called hid-generic.

If unsure, say Y.

menu "Special HID drivers"
depends on HID

config HID_A4TECH
tristate "A4 tech mice" if EXPERT
depends on USB_HID
Expand Down Expand Up @@ -685,4 +678,8 @@ config HID_ZYDACRON

endmenu

endif # HID_SUPPORT
endif # HID

source "drivers/hid/usbhid/Kconfig"

endmenu
8 changes: 4 additions & 4 deletions drivers/hid/usbhid/Kconfig
@@ -1,13 +1,13 @@
comment "USB Input Devices"
menu "USB HID support"
depends on USB

config USB_HID
tristate "USB Human Interface Device (full HID) support"
tristate "USB HID transport layer"
default y
depends on USB && INPUT
select HID
---help---
Say Y here if you want full HID support to connect USB keyboards,
Say Y here if you want to connect USB keyboards,
mice, joysticks, graphic tablets, or any other HID based devices
to your computer via USB, as well as Uninterruptible Power Supply
(UPS) and monitor control devices.
Expand Down Expand Up @@ -81,4 +81,4 @@ config USB_MOUSE

endmenu


endmenu
2 changes: 1 addition & 1 deletion net/bluetooth/hidp/Kconfig
@@ -1,6 +1,6 @@
config BT_HIDP
tristate "HIDP protocol support"
depends on BT && INPUT && HID_SUPPORT
depends on BT && INPUT
select HID
help
HIDP (Human Interface Device Protocol) is a transport layer
Expand Down

0 comments on commit 0e087f1

Please sign in to comment.