xref: /openbmc/linux/drivers/input/keyboard/Kconfig (revision e8e0929d)
1#
2# Input core configuration
3#
4menuconfig INPUT_KEYBOARD
5	bool "Keyboards" if EMBEDDED || !X86
6	default y
7	help
8	  Say Y here, and a list of supported keyboards will be displayed.
9	  This option doesn't affect the kernel.
10
11	  If unsure, say Y.
12
13if INPUT_KEYBOARD
14
15config KEYBOARD_AAED2000
16	tristate "AAED-2000 keyboard"
17	depends on MACH_AAED2000
18	select INPUT_POLLDEV
19	default y
20	help
21	  Say Y here to enable the keyboard on the Agilent AAED-2000
22	  development board.
23
24	  To compile this driver as a module, choose M here: the
25	  module will be called aaed2000_kbd.
26
27config KEYBOARD_ADP5588
28	tristate "ADP5588 I2C QWERTY Keypad and IO Expander"
29	depends on I2C
30	help
31	  Say Y here if you want to use a ADP5588 attached to your
32	  system I2C bus.
33
34	  To compile this driver as a module, choose M here: the
35	  module will be called adp5588-keys.
36
37config KEYBOARD_AMIGA
38	tristate "Amiga keyboard"
39	depends on AMIGA
40	help
41	  Say Y here if you are running Linux on any AMIGA and have a keyboard
42	  attached.
43
44	  To compile this driver as a module, choose M here: the
45	  module will be called amikbd.
46
47config ATARI_KBD_CORE
48	bool
49
50config KEYBOARD_ATARI
51	tristate "Atari keyboard"
52	depends on ATARI
53	select ATARI_KBD_CORE
54	help
55	  Say Y here if you are running Linux on any Atari and have a keyboard
56	  attached.
57
58	  To compile this driver as a module, choose M here: the
59	  module will be called atakbd.
60
61config KEYBOARD_ATKBD
62	tristate "AT keyboard" if EMBEDDED || !X86
63	default y
64	select SERIO
65	select SERIO_LIBPS2
66	select SERIO_I8042 if X86
67	select SERIO_GSCPS2 if GSC
68	help
69	  Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
70	  you'll need this, unless you have a different type keyboard (USB, ADB
71	  or other). This also works for AT and PS/2 keyboards connected over a
72	  PS/2 to serial converter.
73
74	  If unsure, say Y.
75
76	  To compile this driver as a module, choose M here: the
77	  module will be called atkbd.
78
79config KEYBOARD_ATKBD_HP_KEYCODES
80	bool "Use HP keyboard scancodes"
81	depends on PARISC && KEYBOARD_ATKBD
82	default y
83	help
84	  Say Y here if you have a PA-RISC machine and want to use an AT or
85	  PS/2 keyboard, and your keyboard uses keycodes that are specific to
86	  PA-RISC keyboards.
87
88	  Say N if you use a standard keyboard.
89
90config KEYBOARD_ATKBD_RDI_KEYCODES
91	bool "Use PrecisionBook keyboard scancodes"
92	depends on KEYBOARD_ATKBD_HP_KEYCODES
93	default n
94	help
95	  If you have an RDI PrecisionBook, say Y here if you want to use its
96	  built-in keyboard (as opposed to an external keyboard).
97
98	  The PrecisionBook has five keys that conflict with those used by most
99	  AT and PS/2 keyboards. These are as follows:
100
101	    PrecisionBook    Standard AT or PS/2
102
103	    F1               F12
104	    Left Ctrl        Left Alt
105	    Caps Lock        Left Ctrl
106	    Right Ctrl       Caps Lock
107	    Left             102nd key (the key to the right of Left Shift)
108
109	  If you say N here, and use the PrecisionBook keyboard, then each key
110	  in the left-hand column will be interpreted as the corresponding key
111	  in the right-hand column.
112
113	  If you say Y here, and use an external keyboard, then each key in the
114	  right-hand column will be interpreted as the key shown in the
115	  left-hand column.
116
117config QT2160
118	tristate "Atmel AT42QT2160 Touch Sensor Chip"
119	depends on I2C && EXPERIMENTAL
120	help
121	  If you say yes here you get support for Atmel AT42QT2160 Touch
122	  Sensor chip as a keyboard input.
123
124	  This driver can also be built as a module. If so, the module
125	  will be called qt2160.
126
127config KEYBOARD_BFIN
128	tristate "Blackfin BF54x keypad support"
129	depends on (BF54x && !BF544)
130	help
131	  Say Y here if you want to use the BF54x keypad.
132
133	  To compile this driver as a module, choose M here: the
134	  module will be called bf54x-keys.
135
136config KEYBOARD_CORGI
137	tristate "Corgi keyboard"
138	depends on PXA_SHARPSL
139	default y
140	help
141	  Say Y here to enable the keyboard on the Sharp Zaurus SL-C7xx
142	  series of PDAs.
143
144	  To compile this driver as a module, choose M here: the
145	  module will be called corgikbd.
146
147config KEYBOARD_LKKBD
148	tristate "DECstation/VAXstation LK201/LK401 keyboard"
149	select SERIO
150	help
151	  Say Y here if you want to use a LK201 or LK401 style serial
152	  keyboard. This keyboard is also useable on PCs if you attach
153	  it with the inputattach program. The connector pinout is
154	  described within lkkbd.c.
155
156	  To compile this driver as a module, choose M here: the
157	  module will be called lkkbd.
158
159config KEYBOARD_EP93XX
160	tristate "EP93xx Matrix Keypad support"
161	depends on ARCH_EP93XX
162	help
163	  Say Y here to enable the matrix keypad on the Cirrus EP93XX.
164
165	  To compile this driver as a module, choose M here: the
166	  module will be called ep93xx_keypad.
167
168config KEYBOARD_GPIO
169	tristate "GPIO Buttons"
170	depends on GENERIC_GPIO
171	help
172	  This driver implements support for buttons connected
173	  to GPIO pins of various CPUs (and some other chips).
174
175	  Say Y here if your device has buttons connected
176	  directly to such GPIO pins.  Your board-specific
177	  setup logic must also provide a platform device,
178	  with configuration data saying which GPIOs are used.
179
180	  To compile this driver as a module, choose M here: the
181	  module will be called gpio_keys.
182
183config KEYBOARD_MATRIX
184	tristate "GPIO driven matrix keypad support"
185	depends on GENERIC_GPIO
186	help
187	  Enable support for GPIO driven matrix keypad.
188
189	  To compile this driver as a module, choose M here: the
190	  module will be called matrix_keypad.
191
192config KEYBOARD_HIL_OLD
193	tristate "HP HIL keyboard support (simple driver)"
194	depends on GSC || HP300
195	default y
196	help
197	  The "Human Interface Loop" is a older, 8-channel USB-like
198	  controller used in several Hewlett Packard models. This driver
199	  was adapted from the one written for m68k/hp300, and implements
200	  support for a keyboard attached to the HIL port, but not for
201	  any other types of HIL input devices like mice or tablets.
202	  However, it has been thoroughly tested and is stable.
203
204	  If you want full HIL support including support for multiple
205	  keyboards, mice, and tablets, you have to enable the
206	  "HP System Device Controller i8042 Support" in the input/serio
207	  submenu.
208
209config KEYBOARD_HIL
210	tristate "HP HIL keyboard/pointer support"
211	depends on GSC || HP300
212	default y
213	select HP_SDC
214	select HIL_MLC
215	select SERIO
216	help
217	  The "Human Interface Loop" is a older, 8-channel USB-like
218	  controller used in several Hewlett Packard models.
219	  This driver implements support for HIL-keyboards and pointing
220	  devices (mice, tablets, touchscreens) attached
221	  to your machine, so normally you should say Y here.
222
223config KEYBOARD_HP6XX
224	tristate "HP Jornada 6xx keyboard"
225	depends on SH_HP6XX
226	select INPUT_POLLDEV
227	help
228	  Say Y here if you have a HP Jornada 620/660/680/690 and want to
229	  support the built-in keyboard.
230
231	  To compile this driver as a module, choose M here: the
232	  module will be called jornada680_kbd.
233
234config KEYBOARD_HP7XX
235	tristate "HP Jornada 7xx keyboard"
236	depends on SA1100_JORNADA720_SSP && SA1100_SSP
237	help
238	  Say Y here if you have a HP Jornada 710/720/728 and want to
239	  support the built-in keyboard.
240
241	  To compile this driver as a module, choose M here: the
242	  module will be called jornada720_kbd.
243
244config KEYBOARD_LM8323
245	tristate "LM8323 keypad chip"
246	depends on I2C
247	depends on LEDS_CLASS
248	help
249	  If you say yes here you get support for the National Semiconductor
250	  LM8323 keypad controller.
251
252	  To compile this driver as a module, choose M here: the
253	  module will be called lm8323.
254
255config KEYBOARD_LOCOMO
256	tristate "LoCoMo Keyboard Support"
257	depends on SHARP_LOCOMO
258	help
259	  Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA
260
261	  To compile this driver as a module, choose M here: the
262	  module will be called locomokbd.
263
264config KEYBOARD_MAPLE
265	tristate "Maple bus keyboard"
266	depends on SH_DREAMCAST && MAPLE
267	help
268	  Say Y here if you have a Dreamcast console running Linux and have
269	  a keyboard attached to its Maple bus.
270
271	  To compile this driver as a module, choose M here: the
272	  module will be called maple_keyb.
273
274config KEYBOARD_MAX7359
275	tristate "Maxim MAX7359 Key Switch Controller"
276	depends on I2C
277	help
278	  If you say yes here you get support for the Maxim MAX7359 Key
279	  Switch Controller chip. This providers microprocessors with
280	  management of up to 64 key switches
281
282	  To compile this driver as a module, choose M here: the
283	  module will be called max7359_keypad.
284
285config KEYBOARD_NEWTON
286	tristate "Newton keyboard"
287	select SERIO
288	help
289	  Say Y here if you have a Newton keyboard on a serial port.
290
291	  To compile this driver as a module, choose M here: the
292	  module will be called newtonkbd.
293
294config KEYBOARD_OPENCORES
295	tristate "OpenCores Keyboard Controller"
296	help
297	  Say Y here if you want to use the OpenCores Keyboard Controller
298	  http://www.opencores.org/project,keyboardcontroller
299
300	  To compile this driver as a module, choose M here; the
301	  module will be called opencores-kbd.
302
303config KEYBOARD_PXA27x
304	tristate "PXA27x/PXA3xx keypad support"
305	depends on PXA27x || PXA3xx
306	help
307	  Enable support for PXA27x/PXA3xx keypad controller.
308
309	  To compile this driver as a module, choose M here: the
310	  module will be called pxa27x_keypad.
311
312config KEYBOARD_PXA930_ROTARY
313	tristate "PXA930/PXA935 Enhanced Rotary Controller Support"
314	depends on CPU_PXA930 || CPU_PXA935
315	help
316	  Enable support for PXA930/PXA935 Enhanced Rotary Controller.
317
318	  To compile this driver as a module, choose M here: the
319	  module will be called pxa930_rotary.
320
321config KEYBOARD_SPITZ
322	tristate "Spitz keyboard"
323	depends on PXA_SHARPSL
324	default y
325	help
326	  Say Y here to enable the keyboard on the Sharp Zaurus SL-C1000,
327	  SL-C3000 and Sl-C3100 series of PDAs.
328
329	  To compile this driver as a module, choose M here: the
330	  module will be called spitzkbd.
331
332config KEYBOARD_STOWAWAY
333	tristate "Stowaway keyboard"
334	select SERIO
335	help
336	  Say Y here if you have a Stowaway keyboard on a serial port.
337	  Stowaway compatible keyboards like Dicota Input-PDA keyboard
338	  are also supported by this driver.
339
340	  To compile this driver as a module, choose M here: the
341	  module will be called stowaway.
342
343config KEYBOARD_SUNKBD
344	tristate "Sun Type 4 and Type 5 keyboard"
345	select SERIO
346	help
347	  Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
348	  connected either to the Sun keyboard connector or to an serial
349	  (RS-232) port via a simple adapter.
350
351	  To compile this driver as a module, choose M here: the
352	  module will be called sunkbd.
353
354config KEYBOARD_SH_KEYSC
355	tristate "SuperH KEYSC keypad support"
356	depends on SUPERH
357	help
358	  Say Y here if you want to use a keypad attached to the KEYSC block
359	  on SuperH processors such as sh7722 and sh7343.
360
361	  To compile this driver as a module, choose M here: the
362	  module will be called sh_keysc.
363
364config KEYBOARD_OMAP
365	tristate "TI OMAP keypad support"
366	depends on (ARCH_OMAP1 || ARCH_OMAP2)
367	help
368	  Say Y here if you want to use the OMAP keypad.
369
370	  To compile this driver as a module, choose M here: the
371	  module will be called omap-keypad.
372
373config KEYBOARD_TWL4030
374	tristate "TI TWL4030/TWL5030/TPS659x0 keypad support"
375	depends on TWL4030_CORE
376	help
377	  Say Y here if your board use the keypad controller on
378	  TWL4030 family chips.  It's safe to say enable this
379	  even on boards that don't use the keypad controller.
380
381	  To compile this driver as a module, choose M here: the
382	  module will be called twl4030_keypad.
383
384config KEYBOARD_TOSA
385	tristate "Tosa keyboard"
386	depends on MACH_TOSA
387	default y
388	help
389	  Say Y here to enable the keyboard on the Sharp Zaurus SL-6000x (Tosa)
390
391	  To compile this driver as a module, choose M here: the
392	  module will be called tosakbd.
393
394config KEYBOARD_TOSA_USE_EXT_KEYCODES
395	bool "Tosa keyboard: use extended keycodes"
396	depends on KEYBOARD_TOSA
397	help
398	  Say Y here to enable the tosa keyboard driver to generate extended
399	  (>= 127) keycodes. Be aware, that they can't be correctly interpreted
400	  by either console keyboard driver or by Kdrive keybd driver.
401
402	  Say Y only if you know, what you are doing!
403
404config KEYBOARD_XTKBD
405	tristate "XT keyboard"
406	select SERIO
407	help
408	  Say Y here if you want to use the old IBM PC/XT keyboard (or
409	  compatible) on your system. This is only possible with a
410	  parallel port keyboard adapter, you cannot connect it to the
411	  keyboard port on a PC that runs Linux.
412
413	  To compile this driver as a module, choose M here: the
414	  module will be called xtkbd.
415
416config KEYBOARD_W90P910
417	tristate "W90P910 Matrix Keypad support"
418	depends on ARCH_W90X900
419	help
420	  Say Y here to enable the matrix keypad on evaluation board
421	  based on W90P910.
422
423	  To compile this driver as a module, choose M here: the
424	  module will be called w90p910_keypad.
425
426endif
427