Linux-libre 5.4.48-gnu
[librecmc/linux-libre.git] / drivers / input / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Input device configuration
4 #
5
6 menu "Input device support"
7         depends on !UML
8
9 config INPUT
10         tristate "Generic input layer (needed for keyboard, mouse, ...)" if EXPERT
11         default y
12         help
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
16           keyboard and mouse.
17
18           Say N here if you have a headless (no monitor, no keyboard) system.
19
20           More information is available: <file:Documentation/input/input.rst>
21
22           If unsure, say Y.
23
24           To compile this driver as a module, choose M here: the
25           module will be called input.
26
27 if INPUT
28
29 config INPUT_LEDS
30         tristate "Export input device LEDs in sysfs"
31         depends on LEDS_CLASS
32         default INPUT
33         help
34           Say Y here if you would like to export LEDs on input devices
35           as standard LED class devices in sysfs.
36
37           If unsure, say Y.
38
39           To compile this driver as a module, choose M here: the
40           module will be called input-leds.
41
42 config INPUT_FF_MEMLESS
43         tristate "Support for memoryless force-feedback devices"
44         help
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
48           driver.
49
50           If unsure, say N.
51
52           To compile this driver as a module, choose M here: the
53           module will be called ff-memless.
54
55 config INPUT_POLLDEV
56         tristate "Polled input device skeleton"
57         help
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.
62
63           If unsure, say N.
64
65           To compile this driver as a module, choose M here: the
66           module will be called input-polldev.
67
68 config INPUT_SPARSEKMAP
69         tristate "Sparse keymap support library"
70         help
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.
75
76           If unsure, say N.
77
78           To compile this driver as a module, choose M here: the
79           module will be called sparse-keymap.
80
81 config INPUT_MATRIXKMAP
82         tristate "Matrix keymap support library"
83         help
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.
88
89           If unsure, say N.
90
91           To compile this driver as a module, choose M here: the
92           module will be called matrix-keymap.
93
94 comment "Userland interfaces"
95
96 config INPUT_MOUSEDEV
97         tristate "Mouse interface"
98         help
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
103           mouse.
104
105           If unsure, say Y.
106
107           To compile this driver as a module, choose M here: the
108           module will be called mousedev.
109
110 config INPUT_MOUSEDEV_PSAUX
111         bool "Provide legacy /dev/psaux device"
112         depends on INPUT_MOUSEDEV
113         help
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.
117
118           If unsure, say Y.
119
120 config INPUT_MOUSEDEV_SCREEN_X
121         int "Horizontal screen resolution"
122         depends on INPUT_MOUSEDEV
123         default "1024"
124         help
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.
129
130 config INPUT_MOUSEDEV_SCREEN_Y
131         int "Vertical screen resolution"
132         depends on INPUT_MOUSEDEV
133         default "768"
134         help
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.
139
140 config INPUT_JOYDEV
141         tristate "Joystick interface"
142         help
143           Say Y here if you want your joystick or gamepad to be
144           accessible as char device 13:0+ - /dev/input/jsX device.
145
146           If unsure, say Y.
147
148           More information is available: <file:Documentation/input/joydev/joystick.rst>
149
150           To compile this driver as a module, choose M here: the
151           module will be called joydev.
152
153 config INPUT_EVDEV
154         tristate "Event interface"
155         help
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.
158
159           To compile this driver as a module, choose M here: the
160           module will be called evdev.
161
162 config INPUT_EVBUG
163         tristate "Event debugging"
164         help
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
169           course.
170
171           If unsure, say N.
172
173           To compile this driver as a module, choose M here: the
174           module will be called evbug.
175
176 config INPUT_APMPOWER
177         tristate "Input Power Event -> APM Bridge" if EXPERT
178         depends on INPUT && APM_EMULATION
179         help
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.
184
185           To compile this driver as a module, choose M here: the
186           module will be called apm-power.
187
188 comment "Input Device Drivers"
189
190 source "drivers/input/keyboard/Kconfig"
191
192 source "drivers/input/mouse/Kconfig"
193
194 source "drivers/input/joystick/Kconfig"
195
196 source "drivers/input/tablet/Kconfig"
197
198 source "drivers/input/touchscreen/Kconfig"
199
200 source "drivers/input/misc/Kconfig"
201
202 source "drivers/input/rmi4/Kconfig"
203
204 endif
205
206 menu "Hardware I/O ports"
207
208 source "drivers/input/serio/Kconfig"
209
210 source "drivers/input/gameport/Kconfig"
211
212 endmenu
213
214 endmenu
215