2 # Input core configuration
5 tristate "Serial I/O support"
8 Say Yes here if you have any input device that uses serial I/O to
9 communicate with the system. This includes the
10 * standard AT keyboard and PS/2 mouse *
11 as well as serial mice, Sun keyboards, some joysticks and 6dof
16 To compile this driver as a module, choose M here: the
17 module will be called serio.
19 config ARCH_MIGHT_HAVE_PC_SERIO
22 Select this config option from the architecture Kconfig if
23 the architecture might use a PC serio device (i8042) to
24 communicate with keyboard, mouse, etc.
29 tristate "i8042 PC Keyboard controller"
31 depends on ARCH_MIGHT_HAVE_PC_SERIO
33 i8042 is the chip over which the standard AT keyboard and PS/2
34 mouse are connected to the computer. If you use these devices,
35 you'll need to say Y here.
39 To compile this driver as a module, choose M here: the
40 module will be called i8042.
43 tristate "Serial port line discipline"
47 Say Y here if you plan to use an input device (mouse, joystick,
48 tablet, 6dof) that communicates over the RS232 serial (COM) port.
50 More information is available: <file:Documentation/input/input.rst>
54 To compile this driver as a module, choose M here: the
55 module will be called serport.
58 tristate "ct82c710 Aux port controller"
61 Say Y here if you have a Texas Instruments TravelMate notebook
62 equipped with the ct82c710 chip and want to use a mouse connected
67 To compile this driver as a module, choose M here: the
68 module will be called ct82c710.
71 tristate "Q40 keyboard controller"
75 tristate "Parallel port keyboard adapter"
78 Say Y here if you built a simple parallel port adapter to attach
79 an additional AT keyboard, XT keyboard or PS/2 mouse.
81 More information is available: <file:Documentation/input/input.rst>
85 To compile this driver as a module, choose M here: the
86 module will be called parkbd.
89 tristate "Acorn RiscPC keyboard controller"
93 Say Y here if you have the Acorn RiscPC and want to use an AT
94 keyboard connected to its keyboard controller.
96 To compile this driver as a module, choose M here: the
97 module will be called rpckbd.
100 tristate "AMBA KMI keyboard controller"
104 tristate "Intel SA1111 keyboard controller"
108 tristate "HP GSC PS/2 keyboard and PS/2 mouse controller"
112 This driver provides support for the PS/2 ports on PA-RISC machines
113 over which HP PS/2 keyboards and PS/2 mice may be connected.
114 If you use these devices, you'll need to say Y here.
116 It's safe to enable this driver, so if unsure, say Y.
118 To compile this driver as a module, choose M here: the
119 module will be called gscps2.
122 tristate "HP System Device Controller i8042 Support"
123 depends on (GSC || HP300) && SERIO
126 This option enables support for the "System Device
127 Controller", an i8042 carrying microcode to manage a
128 few miscellaneous devices on some Hewlett Packard systems.
129 The SDC itself contains a 10ms resolution timer/clock capable
130 of delivering interrupts on a periodic and one-shot basis.
131 The SDC may also be connected to a battery-backed real-time
132 clock, a basic audio waveform generator, and an HP-HIL Master
133 Link Controller serving up to seven input devices.
135 By itself this option is rather useless, but enabling it will
136 enable selection of drivers for the abovementioned devices.
137 It is, however, incompatible with the old, reliable HIL keyboard
138 driver, and the new HIL driver is experimental, so if you plan
139 to use a HIL keyboard as your primary keyboard, you may wish
140 to keep using that driver until the new HIL drivers have had
144 tristate "HIL MLC Support (needed for HIL input devices)"
148 tristate "PCI PS/2 keyboard and PS/2 mouse controller"
151 Say Y here if you have a Mobility Docking station with PS/2
152 keyboard and mice ports.
154 To compile this driver as a module, choose M here: the
155 module will be called pcips2.
158 tristate "SGI O2 MACE PS/2 controller"
161 Say Y here if you have SGI O2 workstation and want to use its
164 To compile this driver as a module, choose M here: the
165 module will be called maceps2.
168 tristate "PS/2 driver library"
169 depends on SERIO_I8042 || SERIO_I8042=n
171 Say Y here if you are using a driver for device connected
172 to a PS/2 port, such as PS/2 mouse or standard AT keyboard.
174 To compile this driver as a module, choose M here: the
175 module will be called libps2.
178 tristate "Raw access to serio ports"
180 Say Y here if you want to have raw access to serio ports, such as
181 AUX ports on i8042 keyboard controller. Each serio port that is
182 bound to this driver will be accessible via a char device with
183 major 10 and dynamically allocated minor. The driver will try
184 allocating minor 1 (that historically corresponds to /dev/psaux)
185 first. To bind this driver to a serio port use sysfs interface:
187 echo -n "serio_raw" > /sys/bus/serio/devices/serioX/drvctl
189 To compile this driver as a module, choose M here: the
190 module will be called serio_raw.
192 config SERIO_XILINX_XPS_PS2
193 tristate "Xilinx XPS PS/2 Controller Support"
194 depends on PPC || MICROBLAZE
196 This driver supports XPS PS/2 IP from the Xilinx EDK on
199 To compile this driver as a module, choose M here: the
200 module will be called xilinx_ps2.
202 config SERIO_ALTERA_PS2
203 tristate "Altera UP PS/2 controller"
206 Say Y here if you have Altera University Program PS/2 ports.
208 To compile this driver as a module, choose M here: the
209 module will be called altera_ps2.
211 config SERIO_AMS_DELTA
212 tristate "Amstrad Delta (E3) mailboard support"
213 depends on MACH_AMS_DELTA
216 Say Y here if you have an E3 and want to use its mailboard,
217 or any standard AT keyboard connected to the mailboard port.
219 When used for the E3 mailboard, a non-standard key table
220 must be loaded from userspace, possibly using udev extras
221 provided keymap helper utility.
223 To compile this driver as a module, choose M here;
224 the module will be called ams_delta_serio.
227 tristate "TQC PS/2 multiplexer"
229 Say Y here if you have the PS/2 line multiplexer like the one
230 present on TQC boards.
232 To compile this driver as a module, choose M here: the
233 module will be called ps2mult.
236 tristate "ARC PS/2 support"
239 Say Y here if you have an ARC FPGA platform with a PS/2
242 To compile this driver as a module, choose M here; the module
243 will be called arc_ps2.
246 tristate "GRLIB APBPS2 PS/2 keyboard/mouse controller"
249 Say Y here if you want support for GRLIB APBPS2 peripherals used
250 to connect to PS/2 keyboard and/or mouse.
252 To compile this driver as a module, choose M here: the module will
255 config SERIO_OLPC_APSP
256 tristate "OLPC AP-SP input support"
258 Say Y here if you want support for the keyboard and touchpad included
259 in the OLPC XO-1.75 and XO-4 laptops.
261 To compile this driver as a module, choose M here: the module will
264 config HYPERV_KEYBOARD
265 tristate "Microsoft Synthetic Keyboard driver"
269 Select this option to enable the Hyper-V Keyboard driver.
271 To compile this driver as a module, choose M here: the module will
272 be called hyperv_keyboard.
274 config SERIO_SUN4I_PS2
275 tristate "Allwinner A10 PS/2 controller support"
276 depends on ARCH_SUNXI || COMPILE_TEST
278 This selects support for the PS/2 Host Controller on
281 To compile this driver as a module, choose M here: the
282 module will be called sun4i-ps2.
284 config SERIO_GPIO_PS2
285 tristate "GPIO PS/2 bit banging driver"
288 Say Y here if you want PS/2 bit banging support via GPIO.
290 To compile this driver as a module, choose M here: the
291 module will be called ps2-gpio.
293 If you are unsure, say N.
296 tristate "User space serio port driver support"
298 Say Y here if you want to support user level drivers for serio
299 subsystem accessible under char device 10:240 - /dev/userio. Using
300 this facility userspace programs can implement serio ports that
301 will be used by the standard in-kernel serio consumer drivers,
302 such as psmouse and atkbd.
304 To compile this driver as a module, choose M here: the module will be
307 If you are unsure, say N.