Loading...
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Input device configuration
4#
5
6menu "Input device support"
7
8config INPUT
9 tristate "Generic input layer (needed for keyboard, mouse, ...)" if EXPERT
10 default y
11 help
12 Say Y here if you have any input device (mouse, keyboard, tablet,
13 joystick, steering wheel ...) connected to your system and want
14 it to be available to applications. This includes standard PS/2
15 keyboard and mouse.
16
17 Say N here if you have a headless (no monitor, no keyboard) system.
18
19 More information is available: <file:Documentation/input/input.rst>
20
21 If unsure, say Y.
22
23 To compile this driver as a module, choose M here: the
24 module will be called input.
25
26if INPUT
27
28config INPUT_LEDS
29 tristate "Export input device LEDs in sysfs"
30 depends on LEDS_CLASS
31 default INPUT
32 help
33 Say Y here if you would like to export LEDs on input devices
34 as standard LED class devices in sysfs.
35
36 If unsure, say Y.
37
38 To compile this driver as a module, choose M here: the
39 module will be called input-leds.
40
41config INPUT_FF_MEMLESS
42 tristate "Support for memoryless force-feedback devices"
43 help
44 Say Y here if you have memoryless force-feedback input device
45 such as Logitech WingMan Force 3D, ThrustMaster FireStorm Dual
46 Power 2, or similar. You will also need to enable hardware-specific
47 driver.
48
49 If unsure, say N.
50
51 To compile this driver as a module, choose M here: the
52 module will be called ff-memless.
53
54config INPUT_SPARSEKMAP
55 tristate "Sparse keymap support library"
56 help
57 Say Y here if you are using a driver for an input
58 device that uses sparse keymap. This option is only
59 useful for out-of-tree drivers since in-tree drivers
60 select it automatically.
61
62 If unsure, say N.
63
64 To compile this driver as a module, choose M here: the
65 module will be called sparse-keymap.
66
67config INPUT_MATRIXKMAP
68 tristate "Matrix keymap support library"
69 help
70 Say Y here if you are using a driver for an input
71 device that uses matrix keymap. This option is only
72 useful for out-of-tree drivers since in-tree drivers
73 select it automatically.
74
75 If unsure, say N.
76
77 To compile this driver as a module, choose M here: the
78 module will be called matrix-keymap.
79
80config INPUT_VIVALDIFMAP
81 tristate
82 help
83 ChromeOS Vivaldi keymap support library. This is a hidden
84 option so that drivers can use common code to parse and
85 expose the vivaldi function row keymap.
86
87comment "Userland interfaces"
88
89config INPUT_MOUSEDEV
90 tristate "Mouse interface"
91 help
92 Say Y here if you want your mouse to be accessible as char devices
93 13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an
94 emulated IntelliMouse Explorer PS/2 mouse. That way, all user space
95 programs (including SVGAlib, GPM and X) will be able to use your
96 mouse.
97
98 If unsure, say Y.
99
100 To compile this driver as a module, choose M here: the
101 module will be called mousedev.
102
103config INPUT_MOUSEDEV_PSAUX
104 bool "Provide legacy /dev/psaux device"
105 depends on INPUT_MOUSEDEV
106 help
107 Say Y here if you want your mouse also be accessible as char device
108 10:1 - /dev/psaux. The data available through /dev/psaux is exactly
109 the same as the data from /dev/input/mice.
110
111 If unsure, say Y.
112
113config INPUT_MOUSEDEV_SCREEN_X
114 int "Horizontal screen resolution"
115 depends on INPUT_MOUSEDEV
116 default "1024"
117 help
118 If you're using a digitizer, or a graphic tablet, and want to use
119 it as a mouse then the mousedev driver needs to know the X window
120 screen resolution you are using to correctly scale the data. If
121 you're not using a digitizer, this value is ignored.
122
123config INPUT_MOUSEDEV_SCREEN_Y
124 int "Vertical screen resolution"
125 depends on INPUT_MOUSEDEV
126 default "768"
127 help
128 If you're using a digitizer, or a graphic tablet, and want to use
129 it as a mouse then the mousedev driver needs to know the X window
130 screen resolution you are using to correctly scale the data. If
131 you're not using a digitizer, this value is ignored.
132
133config INPUT_JOYDEV
134 tristate "Joystick interface"
135 help
136 Say Y here if you want your joystick or gamepad to be
137 accessible as char device 13:0+ - /dev/input/jsX device.
138
139 If unsure, say Y.
140
141 More information is available: <file:Documentation/input/joydev/joystick.rst>
142
143 To compile this driver as a module, choose M here: the
144 module will be called joydev.
145
146config INPUT_EVDEV
147 tristate "Event interface"
148 help
149 Say Y here if you want your input device events be accessible
150 under char device 13:64+ - /dev/input/eventX in a generic way.
151
152 To compile this driver as a module, choose M here: the
153 module will be called evdev.
154
155config INPUT_EVBUG
156 tristate "Event debugging"
157 help
158 Say Y here if you have a problem with the input subsystem and
159 want all events (keypresses, mouse movements), to be output to
160 the system log. While this is useful for debugging, it's also
161 a security threat - your keypresses include your passwords, of
162 course.
163
164 If unsure, say N.
165
166 To compile this driver as a module, choose M here: the
167 module will be called evbug.
168
169config INPUT_KUNIT_TEST
170 tristate "KUnit tests for Input" if !KUNIT_ALL_TESTS
171 depends on INPUT && KUNIT
172 default KUNIT_ALL_TESTS
173 help
174 Say Y here if you want to build the KUnit tests for the input
175 subsystem.
176
177 If in doubt, say "N".
178
179config INPUT_APMPOWER
180 tristate "Input Power Event -> APM Bridge" if EXPERT
181 depends on INPUT && APM_EMULATION
182 help
183 Say Y here if you want suspend key events to trigger a user
184 requested suspend through APM. This is useful on embedded
185 systems where such behaviour is desired without userspace
186 interaction. If unsure, say N.
187
188 To compile this driver as a module, choose M here: the
189 module will be called apm-power.
190
191comment "Input Device Drivers"
192
193source "drivers/input/keyboard/Kconfig"
194
195source "drivers/input/mouse/Kconfig"
196
197source "drivers/input/joystick/Kconfig"
198
199source "drivers/input/tablet/Kconfig"
200
201source "drivers/input/touchscreen/Kconfig"
202
203source "drivers/input/misc/Kconfig"
204
205source "drivers/input/rmi4/Kconfig"
206
207endif
208
209menu "Hardware I/O ports"
210
211source "drivers/input/serio/Kconfig"
212
213source "drivers/input/gameport/Kconfig"
214
215endmenu
216
217endmenu
218
1#
2# Input device configuration
3#
4
5menu "Input device support"
6 depends on !UML
7
8config INPUT
9 tristate "Generic input layer (needed for keyboard, mouse, ...)" if EXPERT
10 default y
11 help
12 Say Y here if you have any input device (mouse, keyboard, tablet,
13 joystick, steering wheel ...) connected to your system and want
14 it to be available to applications. This includes standard PS/2
15 keyboard and mouse.
16
17 Say N here if you have a headless (no monitor, no keyboard) system.
18
19 More information is available: <file:Documentation/input/input.txt>
20
21 If unsure, say Y.
22
23 To compile this driver as a module, choose M here: the
24 module will be called input.
25
26if INPUT
27
28config INPUT_LEDS
29 tristate "Export input device LEDs in sysfs"
30 depends on LEDS_CLASS
31 default INPUT
32 help
33 Say Y here if you would like to export LEDs on input devices
34 as standard LED class devices in sysfs.
35
36 If unsure, say Y.
37
38 To compile this driver as a module, choose M here: the
39 module will be called input-leds.
40
41config INPUT_FF_MEMLESS
42 tristate "Support for memoryless force-feedback devices"
43 help
44 Say Y here if you have memoryless force-feedback input device
45 such as Logitech WingMan Force 3D, ThrustMaster FireStorm Dual
46 Power 2, or similar. You will also need to enable hardware-specific
47 driver.
48
49 If unsure, say N.
50
51 To compile this driver as a module, choose M here: the
52 module will be called ff-memless.
53
54config INPUT_POLLDEV
55 tristate "Polled input device skeleton"
56 help
57 Say Y here if you are using a driver for an input
58 device that periodically polls hardware state. This
59 option is only useful for out-of-tree drivers since
60 in-tree drivers select it automatically.
61
62 If unsure, say N.
63
64 To compile this driver as a module, choose M here: the
65 module will be called input-polldev.
66
67config INPUT_SPARSEKMAP
68 tristate "Sparse keymap support library"
69 help
70 Say Y here if you are using a driver for an input
71 device that uses sparse keymap. This option is only
72 useful for out-of-tree drivers since in-tree drivers
73 select it automatically.
74
75 If unsure, say N.
76
77 To compile this driver as a module, choose M here: the
78 module will be called sparse-keymap.
79
80config INPUT_MATRIXKMAP
81 tristate "Matrix keymap support library"
82 help
83 Say Y here if you are using a driver for an input
84 device that uses matrix keymap. This option is only
85 useful for out-of-tree drivers since in-tree drivers
86 select it automatically.
87
88 If unsure, say N.
89
90 To compile this driver as a module, choose M here: the
91 module will be called matrix-keymap.
92
93comment "Userland interfaces"
94
95config INPUT_MOUSEDEV
96 tristate "Mouse interface"
97 help
98 Say Y here if you want your mouse to be accessible as char devices
99 13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an
100 emulated IntelliMouse Explorer PS/2 mouse. That way, all user space
101 programs (including SVGAlib, GPM and X) will be able to use your
102 mouse.
103
104 If unsure, say Y.
105
106 To compile this driver as a module, choose M here: the
107 module will be called mousedev.
108
109config INPUT_MOUSEDEV_PSAUX
110 bool "Provide legacy /dev/psaux device"
111 depends on INPUT_MOUSEDEV
112 help
113 Say Y here if you want your mouse also be accessible as char device
114 10:1 - /dev/psaux. The data available through /dev/psaux is exactly
115 the same as the data from /dev/input/mice.
116
117 If unsure, say Y.
118
119config INPUT_MOUSEDEV_SCREEN_X
120 int "Horizontal screen resolution"
121 depends on INPUT_MOUSEDEV
122 default "1024"
123 help
124 If you're using a digitizer, or a graphic tablet, and want to use
125 it as a mouse then the mousedev driver needs to know the X window
126 screen resolution you are using to correctly scale the data. If
127 you're not using a digitizer, this value is ignored.
128
129config INPUT_MOUSEDEV_SCREEN_Y
130 int "Vertical screen resolution"
131 depends on INPUT_MOUSEDEV
132 default "768"
133 help
134 If you're using a digitizer, or a graphic tablet, and want to use
135 it as a mouse then the mousedev driver needs to know the X window
136 screen resolution you are using to correctly scale the data. If
137 you're not using a digitizer, this value is ignored.
138
139config INPUT_JOYDEV
140 tristate "Joystick interface"
141 help
142 Say Y here if you want your joystick or gamepad to be
143 accessible as char device 13:0+ - /dev/input/jsX device.
144
145 If unsure, say Y.
146
147 More information is available: <file:Documentation/input/joystick.txt>
148
149 To compile this driver as a module, choose M here: the
150 module will be called joydev.
151
152config INPUT_EVDEV
153 tristate "Event interface"
154 help
155 Say Y here if you want your input device events be accessible
156 under char device 13:64+ - /dev/input/eventX in a generic way.
157
158 To compile this driver as a module, choose M here: the
159 module will be called evdev.
160
161config INPUT_EVBUG
162 tristate "Event debugging"
163 help
164 Say Y here if you have a problem with the input subsystem and
165 want all events (keypresses, mouse movements), to be output to
166 the system log. While this is useful for debugging, it's also
167 a security threat - your keypresses include your passwords, of
168 course.
169
170 If unsure, say N.
171
172 To compile this driver as a module, choose M here: the
173 module will be called evbug.
174
175config INPUT_APMPOWER
176 tristate "Input Power Event -> APM Bridge" if EXPERT
177 depends on INPUT && APM_EMULATION
178 help
179 Say Y here if you want suspend key events to trigger a user
180 requested suspend through APM. This is useful on embedded
181 systems where such behaviour is desired without userspace
182 interaction. If unsure, say N.
183
184 To compile this driver as a module, choose M here: the
185 module will be called apm-power.
186
187comment "Input Device Drivers"
188
189source "drivers/input/keyboard/Kconfig"
190
191source "drivers/input/mouse/Kconfig"
192
193source "drivers/input/joystick/Kconfig"
194
195source "drivers/input/tablet/Kconfig"
196
197source "drivers/input/touchscreen/Kconfig"
198
199source "drivers/input/misc/Kconfig"
200
201source "drivers/input/rmi4/Kconfig"
202
203endif
204
205menu "Hardware I/O ports"
206
207source "drivers/input/serio/Kconfig"
208
209source "drivers/input/gameport/Kconfig"
210
211endmenu
212
213endmenu
214