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 !S390
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_FF_MEMLESS
29 tristate "Support for memoryless force-feedback devices"
30 help
31 Say Y here if you have memoryless force-feedback input device
32 such as Logitech WingMan Force 3D, ThrustMaster FireStorm Dual
33 Power 2, or similar. You will also need to enable hardware-specific
34 driver.
35
36 If unsure, say N.
37
38 To compile this driver as a module, choose M here: the
39 module will be called ff-memless.
40
41config INPUT_POLLDEV
42 tristate "Polled input device skeleton"
43 help
44 Say Y here if you are using a driver for an input
45 device that periodically polls hardware state. This
46 option is only useful for out-of-tree drivers since
47 in-tree drivers select it automatically.
48
49 If unsure, say N.
50
51 To compile this driver as a module, choose M here: the
52 module will be called input-polldev.
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
67comment "Userland interfaces"
68
69config INPUT_MOUSEDEV
70 tristate "Mouse interface" if EXPERT
71 default y
72 help
73 Say Y here if you want your mouse to be accessible as char devices
74 13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an
75 emulated IntelliMouse Explorer PS/2 mouse. That way, all user space
76 programs (including SVGAlib, GPM and X) will be able to use your
77 mouse.
78
79 If unsure, say Y.
80
81 To compile this driver as a module, choose M here: the
82 module will be called mousedev.
83
84config INPUT_MOUSEDEV_PSAUX
85 bool "Provide legacy /dev/psaux device"
86 default y
87 depends on INPUT_MOUSEDEV
88 help
89 Say Y here if you want your mouse also be accessible as char device
90 10:1 - /dev/psaux. The data available through /dev/psaux is exactly
91 the same as the data from /dev/input/mice.
92
93 If unsure, say Y.
94
95
96config INPUT_MOUSEDEV_SCREEN_X
97 int "Horizontal screen resolution"
98 depends on INPUT_MOUSEDEV
99 default "1024"
100 help
101 If you're using a digitizer, or a graphic tablet, and want to use
102 it as a mouse then the mousedev driver needs to know the X window
103 screen resolution you are using to correctly scale the data. If
104 you're not using a digitizer, this value is ignored.
105
106config INPUT_MOUSEDEV_SCREEN_Y
107 int "Vertical screen resolution"
108 depends on INPUT_MOUSEDEV
109 default "768"
110 help
111 If you're using a digitizer, or a graphic tablet, and want to use
112 it as a mouse then the mousedev driver needs to know the X window
113 screen resolution you are using to correctly scale the data. If
114 you're not using a digitizer, this value is ignored.
115
116config INPUT_JOYDEV
117 tristate "Joystick interface"
118 help
119 Say Y here if you want your joystick or gamepad to be
120 accessible as char device 13:0+ - /dev/input/jsX device.
121
122 If unsure, say Y.
123
124 More information is available: <file:Documentation/input/joystick.txt>
125
126 To compile this driver as a module, choose M here: the
127 module will be called joydev.
128
129config INPUT_EVDEV
130 tristate "Event interface"
131 help
132 Say Y here if you want your input device events be accessible
133 under char device 13:64+ - /dev/input/eventX in a generic way.
134
135 To compile this driver as a module, choose M here: the
136 module will be called evdev.
137
138config INPUT_EVBUG
139 tristate "Event debugging"
140 help
141 Say Y here if you have a problem with the input subsystem and
142 want all events (keypresses, mouse movements), to be output to
143 the system log. While this is useful for debugging, it's also
144 a security threat - your keypresses include your passwords, of
145 course.
146
147 If unsure, say N.
148
149 To compile this driver as a module, choose M here: the
150 module will be called evbug.
151
152config INPUT_APMPOWER
153 tristate "Input Power Event -> APM Bridge" if EXPERT
154 depends on INPUT && APM_EMULATION
155 help
156 Say Y here if you want suspend key events to trigger a user
157 requested suspend through APM. This is useful on embedded
158 systems where such behaviour is desired without userspace
159 interaction. If unsure, say N.
160
161 To compile this driver as a module, choose M here: the
162 module will be called apm-power.
163
164comment "Input Device Drivers"
165
166source "drivers/input/keyboard/Kconfig"
167
168source "drivers/input/mouse/Kconfig"
169
170source "drivers/input/joystick/Kconfig"
171
172source "drivers/input/tablet/Kconfig"
173
174source "drivers/input/touchscreen/Kconfig"
175
176source "drivers/input/misc/Kconfig"
177
178endif
179
180menu "Hardware I/O ports"
181
182source "drivers/input/serio/Kconfig"
183
184source "drivers/input/gameport/Kconfig"
185
186endmenu
187
188endmenu
189