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