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