1 # SPDX-License-Identifier: GPL-2.0-only
3 # Input device configuration
6 menu "Input device support"
10 tristate "Generic input layer (needed for keyboard, mouse, ...)" if EXPERT
13 Say Y here if you have any input device (mouse, keyboard, tablet,
14 joystick, steering wheel ...) connected to your system and want
15 it to be available to applications. This includes standard PS/2
18 Say N here if you have a headless (no monitor, no keyboard) system.
20 More information is available: <file:Documentation/input/input.rst>
24 To compile this driver as a module, choose M here: the
25 module will be called input.
30 tristate "Export input device LEDs in sysfs"
34 Say Y here if you would like to export LEDs on input devices
35 as standard LED class devices in sysfs.
39 To compile this driver as a module, choose M here: the
40 module will be called input-leds.
42 config INPUT_FF_MEMLESS
43 tristate "Support for memoryless force-feedback devices"
45 Say Y here if you have memoryless force-feedback input device
46 such as Logitech WingMan Force 3D, ThrustMaster FireStorm Dual
47 Power 2, or similar. You will also need to enable hardware-specific
52 To compile this driver as a module, choose M here: the
53 module will be called ff-memless.
56 tristate "Polled input device skeleton"
58 Say Y here if you are using a driver for an input
59 device that periodically polls hardware state. This
60 option is only useful for out-of-tree drivers since
61 in-tree drivers select it automatically.
65 To compile this driver as a module, choose M here: the
66 module will be called input-polldev.
68 config INPUT_SPARSEKMAP
69 tristate "Sparse keymap support library"
71 Say Y here if you are using a driver for an input
72 device that uses sparse keymap. This option is only
73 useful for out-of-tree drivers since in-tree drivers
74 select it automatically.
78 To compile this driver as a module, choose M here: the
79 module will be called sparse-keymap.
81 config INPUT_MATRIXKMAP
82 tristate "Matrix keymap support library"
84 Say Y here if you are using a driver for an input
85 device that uses matrix keymap. This option is only
86 useful for out-of-tree drivers since in-tree drivers
87 select it automatically.
91 To compile this driver as a module, choose M here: the
92 module will be called matrix-keymap.
94 comment "Userland interfaces"
97 tristate "Mouse interface"
99 Say Y here if you want your mouse to be accessible as char devices
100 13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an
101 emulated IntelliMouse Explorer PS/2 mouse. That way, all user space
102 programs (including SVGAlib, GPM and X) will be able to use your
107 To compile this driver as a module, choose M here: the
108 module will be called mousedev.
110 config INPUT_MOUSEDEV_PSAUX
111 bool "Provide legacy /dev/psaux device"
112 depends on INPUT_MOUSEDEV
114 Say Y here if you want your mouse also be accessible as char device
115 10:1 - /dev/psaux. The data available through /dev/psaux is exactly
116 the same as the data from /dev/input/mice.
120 config INPUT_MOUSEDEV_SCREEN_X
121 int "Horizontal screen resolution"
122 depends on INPUT_MOUSEDEV
125 If you're using a digitizer, or a graphic tablet, and want to use
126 it as a mouse then the mousedev driver needs to know the X window
127 screen resolution you are using to correctly scale the data. If
128 you're not using a digitizer, this value is ignored.
130 config INPUT_MOUSEDEV_SCREEN_Y
131 int "Vertical screen resolution"
132 depends on INPUT_MOUSEDEV
135 If you're using a digitizer, or a graphic tablet, and want to use
136 it as a mouse then the mousedev driver needs to know the X window
137 screen resolution you are using to correctly scale the data. If
138 you're not using a digitizer, this value is ignored.
141 tristate "Joystick interface"
143 Say Y here if you want your joystick or gamepad to be
144 accessible as char device 13:0+ - /dev/input/jsX device.
148 More information is available: <file:Documentation/input/joydev/joystick.rst>
150 To compile this driver as a module, choose M here: the
151 module will be called joydev.
154 tristate "Event interface"
156 Say Y here if you want your input device events be accessible
157 under char device 13:64+ - /dev/input/eventX in a generic way.
159 To compile this driver as a module, choose M here: the
160 module will be called evdev.
163 tristate "Event debugging"
165 Say Y here if you have a problem with the input subsystem and
166 want all events (keypresses, mouse movements), to be output to
167 the system log. While this is useful for debugging, it's also
168 a security threat - your keypresses include your passwords, of
173 To compile this driver as a module, choose M here: the
174 module will be called evbug.
176 config INPUT_APMPOWER
177 tristate "Input Power Event -> APM Bridge" if EXPERT
178 depends on INPUT && APM_EMULATION
180 Say Y here if you want suspend key events to trigger a user
181 requested suspend through APM. This is useful on embedded
182 systems where such behaviour is desired without userspace
183 interaction. If unsure, say N.
185 To compile this driver as a module, choose M here: the
186 module will be called apm-power.
188 comment "Input Device Drivers"
190 source "drivers/input/keyboard/Kconfig"
192 source "drivers/input/mouse/Kconfig"
194 source "drivers/input/joystick/Kconfig"
196 source "drivers/input/tablet/Kconfig"
198 source "drivers/input/touchscreen/Kconfig"
200 source "drivers/input/misc/Kconfig"
202 source "drivers/input/rmi4/Kconfig"
206 menu "Hardware I/O ports"
208 source "drivers/input/serio/Kconfig"
210 source "drivers/input/gameport/Kconfig"