Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Input core configuration
4#
5config SERIO
6 tristate "Serial I/O support"
7 default y
8 help
9 Say Yes here if you have any input device that uses serial I/O to
10 communicate with the system. This includes the
11 * standard AT keyboard and PS/2 mouse *
12 as well as serial mice, Sun keyboards, some joysticks and 6dof
13 devices and more.
14
15 If unsure, say Y.
16
17 To compile this driver as a module, choose M here: the
18 module will be called serio.
19
20config ARCH_MIGHT_HAVE_PC_SERIO
21 bool
22 help
23 Select this config option from the architecture Kconfig if
24 the architecture might use a PC serio device (i8042) to
25 communicate with keyboard, mouse, etc.
26
27if SERIO
28
29config SERIO_I8042
30 tristate "i8042 PC Keyboard controller"
31 default y
32 depends on ARCH_MIGHT_HAVE_PC_SERIO
33 help
34 i8042 is the chip over which the standard AT keyboard and PS/2
35 mouse are connected to the computer. If you use these devices,
36 you'll need to say Y here.
37
38 If unsure, say Y.
39
40 To compile this driver as a module, choose M here: the
41 module will be called i8042.
42
43config SERIO_SERPORT
44 tristate "Serial port line discipline"
45 default y
46 depends on TTY
47 help
48 Say Y here if you plan to use an input device (mouse, joystick,
49 tablet, 6dof) that communicates over the RS232 serial (COM) port.
50
51 More information is available: <file:Documentation/input/input.rst>
52
53 If unsure, say Y.
54
55 To compile this driver as a module, choose M here: the
56 module will be called serport.
57
58config SERIO_CT82C710
59 tristate "ct82c710 Aux port controller"
60 depends on X86
61 help
62 Say Y here if you have a Texas Instruments TravelMate notebook
63 equipped with the ct82c710 chip and want to use a mouse connected
64 to the "QuickPort".
65
66 If unsure, say N.
67
68 To compile this driver as a module, choose M here: the
69 module will be called ct82c710.
70
71config SERIO_Q40KBD
72 tristate "Q40 keyboard controller"
73 depends on Q40
74
75config SERIO_PARKBD
76 tristate "Parallel port keyboard adapter"
77 depends on PARPORT
78 help
79 Say Y here if you built a simple parallel port adapter to attach
80 an additional AT keyboard, XT keyboard or PS/2 mouse.
81
82 More information is available: <file:Documentation/input/input.rst>
83
84 If unsure, say N.
85
86 To compile this driver as a module, choose M here: the
87 module will be called parkbd.
88
89config SERIO_RPCKBD
90 tristate "Acorn RiscPC keyboard controller"
91 depends on ARCH_ACORN
92 default y
93 help
94 Say Y here if you have the Acorn RiscPC and want to use an AT
95 keyboard connected to its keyboard controller.
96
97 To compile this driver as a module, choose M here: the
98 module will be called rpckbd.
99
100config SERIO_AMBAKMI
101 tristate "AMBA KMI keyboard controller"
102 depends on ARM_AMBA
103
104config SERIO_SA1111
105 tristate "Intel SA1111 keyboard controller"
106 depends on SA1111
107
108config SERIO_GSCPS2
109 tristate "HP GSC PS/2 keyboard and PS/2 mouse controller"
110 depends on GSC
111 default y
112 help
113 This driver provides support for the PS/2 ports on PA-RISC machines
114 over which HP PS/2 keyboards and PS/2 mice may be connected.
115 If you use these devices, you'll need to say Y here.
116
117 It's safe to enable this driver, so if unsure, say Y.
118
119 To compile this driver as a module, choose M here: the
120 module will be called gscps2.
121
122config HP_SDC
123 tristate "HP System Device Controller i8042 Support"
124 depends on (GSC || HP300) && SERIO
125 default y
126 help
127 This option enables support for the "System Device
128 Controller", an i8042 carrying microcode to manage a
129 few miscellaneous devices on some Hewlett Packard systems.
130 The SDC itself contains a 10ms resolution timer/clock capable
131 of delivering interrupts on a periodic and one-shot basis.
132 The SDC may also be connected to a battery-backed real-time
133 clock, a basic audio waveform generator, and an HP-HIL Master
134 Link Controller serving up to seven input devices.
135
136 By itself this option is rather useless, but enabling it will
137 enable selection of drivers for the abovementioned devices.
138 It is, however, incompatible with the old, reliable HIL keyboard
139 driver, and the new HIL driver is experimental, so if you plan
140 to use a HIL keyboard as your primary keyboard, you may wish
141 to keep using that driver until the new HIL drivers have had
142 more testing.
143
144config HIL_MLC
145 tristate "HIL MLC Support (needed for HIL input devices)"
146 depends on HP_SDC
147
148config SERIO_PCIPS2
149 tristate "PCI PS/2 keyboard and PS/2 mouse controller"
150 depends on PCI
151 help
152 Say Y here if you have a Mobility Docking station with PS/2
153 keyboard and mice ports.
154
155 To compile this driver as a module, choose M here: the
156 module will be called pcips2.
157
158config SERIO_MACEPS2
159 tristate "SGI O2 MACE PS/2 controller"
160 depends on SGI_IP32
161 help
162 Say Y here if you have SGI O2 workstation and want to use its
163 PS/2 ports.
164
165 To compile this driver as a module, choose M here: the
166 module will be called maceps2.
167
168config SERIO_SGI_IOC3
169 tristate "SGI IOC3 PS/2 controller"
170 depends on SGI_MFD_IOC3
171 help
172 Say Y here if you have an SGI Onyx2, SGI Octane or IOC3 PCI card
173 and you want to attach and use a keyboard, mouse, or both.
174
175 To compile this driver as a module, choose M here: the
176 module will be called ioc3kbd.
177
178config SERIO_LIBPS2
179 tristate "PS/2 driver library"
180 depends on SERIO_I8042 || SERIO_I8042=n
181 help
182 Say Y here if you are using a driver for device connected
183 to a PS/2 port, such as PS/2 mouse or standard AT keyboard.
184
185 To compile this driver as a module, choose M here: the
186 module will be called libps2.
187
188config SERIO_RAW
189 tristate "Raw access to serio ports"
190 help
191 Say Y here if you want to have raw access to serio ports, such as
192 AUX ports on i8042 keyboard controller. Each serio port that is
193 bound to this driver will be accessible via a char device with
194 major 10 and dynamically allocated minor. The driver will try
195 allocating minor 1 (that historically corresponds to /dev/psaux)
196 first. To bind this driver to a serio port use sysfs interface:
197
198 echo -n "serio_raw" > /sys/bus/serio/devices/serioX/drvctl
199
200 To compile this driver as a module, choose M here: the
201 module will be called serio_raw.
202
203config SERIO_XILINX_XPS_PS2
204 tristate "Xilinx XPS PS/2 Controller Support"
205 depends on PPC || MICROBLAZE
206 help
207 This driver supports XPS PS/2 IP from the Xilinx EDK on
208 PowerPC platform.
209
210 To compile this driver as a module, choose M here: the
211 module will be called xilinx_ps2.
212
213config SERIO_ALTERA_PS2
214 tristate "Altera UP PS/2 controller"
215 depends on HAS_IOMEM
216 help
217 Say Y here if you have Altera University Program PS/2 ports.
218
219 To compile this driver as a module, choose M here: the
220 module will be called altera_ps2.
221
222config SERIO_AMS_DELTA
223 tristate "Amstrad Delta (E3) mailboard support"
224 depends on MACH_AMS_DELTA
225 default y
226 help
227 Say Y here if you have an E3 and want to use its mailboard,
228 or any standard AT keyboard connected to the mailboard port.
229
230 When used for the E3 mailboard, a non-standard key table
231 must be loaded from userspace, possibly using udev extras
232 provided keymap helper utility.
233
234 To compile this driver as a module, choose M here;
235 the module will be called ams_delta_serio.
236
237config SERIO_PS2MULT
238 tristate "TQC PS/2 multiplexer"
239 help
240 Say Y here if you have the PS/2 line multiplexer like the one
241 present on TQC boards.
242
243 To compile this driver as a module, choose M here: the
244 module will be called ps2mult.
245
246config SERIO_ARC_PS2
247 tristate "ARC PS/2 support"
248 depends on HAS_IOMEM
249 help
250 Say Y here if you have an ARC FPGA platform with a PS/2
251 controller in it.
252
253 To compile this driver as a module, choose M here; the module
254 will be called arc_ps2.
255
256config SERIO_APBPS2
257 tristate "GRLIB APBPS2 PS/2 keyboard/mouse controller"
258 depends on OF && HAS_IOMEM
259 help
260 Say Y here if you want support for GRLIB APBPS2 peripherals used
261 to connect to PS/2 keyboard and/or mouse.
262
263 To compile this driver as a module, choose M here: the module will
264 be called apbps2.
265
266config SERIO_OLPC_APSP
267 tristate "OLPC AP-SP input support"
268 depends on ARCH_MMP || COMPILE_TEST
269 help
270 Say Y here if you want support for the keyboard and touchpad included
271 in the OLPC XO-1.75 and XO-4 laptops.
272
273 To compile this driver as a module, choose M here: the module will
274 be called olpc_apsp.
275
276config HYPERV_KEYBOARD
277 tristate "Microsoft Synthetic Keyboard driver"
278 depends on HYPERV
279 default HYPERV
280 help
281 Select this option to enable the Hyper-V Keyboard driver.
282
283 To compile this driver as a module, choose M here: the module will
284 be called hyperv_keyboard.
285
286config SERIO_SUN4I_PS2
287 tristate "Allwinner A10 PS/2 controller support"
288 depends on ARCH_SUNXI || COMPILE_TEST
289 help
290 This selects support for the PS/2 Host Controller on
291 Allwinner A10.
292
293 To compile this driver as a module, choose M here: the
294 module will be called sun4i-ps2.
295
296config SERIO_GPIO_PS2
297 tristate "GPIO PS/2 bit banging driver"
298 depends on GPIOLIB
299 help
300 Say Y here if you want PS/2 bit banging support via GPIO.
301
302 To compile this driver as a module, choose M here: the
303 module will be called ps2-gpio.
304
305 If you are unsure, say N.
306
307config USERIO
308 tristate "User space serio port driver support"
309 help
310 Say Y here if you want to support user level drivers for serio
311 subsystem accessible under char device 10:240 - /dev/userio. Using
312 this facility userspace programs can implement serio ports that
313 will be used by the standard in-kernel serio consumer drivers,
314 such as psmouse and atkbd.
315
316 To compile this driver as a module, choose M here: the module will be
317 called userio.
318
319 If you are unsure, say N.
320
321endif