blob: 3a87f3ba5f75ee1f6a94973c2a5414f0653e48a8 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
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
Dmitry Torokhovcb589522009-06-29 00:00:52 -070015config 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
Michael Hennerichfba65fe2009-10-10 13:54:02 -040027config KEYBOARD_ADP5520
28 tristate "Keypad Support for ADP5520 PMIC"
29 depends on PMIC_ADP5520
30 help
31 This option enables support for the keypad scan matrix
32 on Analog Devices ADP5520 PMICs.
33
34 To compile this driver as a module, choose M here: the module will
35 be called adp5520-keys.
36
Michael Hennerich88751dd2009-09-17 22:39:38 -070037config KEYBOARD_ADP5588
Michael Hennerich5a9003d2010-01-19 00:28:44 -080038 tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander"
Michael Hennerich88751dd2009-09-17 22:39:38 -070039 depends on I2C
40 help
Michael Hennerich5a9003d2010-01-19 00:28:44 -080041 Say Y here if you want to use a ADP5588/87 attached to your
Michael Hennerich88751dd2009-09-17 22:39:38 -070042 system I2C bus.
43
44 To compile this driver as a module, choose M here: the
45 module will be called adp5588-keys.
46
Dmitry Torokhovcb589522009-06-29 00:00:52 -070047config KEYBOARD_AMIGA
48 tristate "Amiga keyboard"
49 depends on AMIGA
50 help
51 Say Y here if you are running Linux on any AMIGA and have a keyboard
52 attached.
53
54 To compile this driver as a module, choose M here: the
55 module will be called amikbd.
56
57config ATARI_KBD_CORE
58 bool
59
60config KEYBOARD_ATARI
61 tristate "Atari keyboard"
62 depends on ATARI
63 select ATARI_KBD_CORE
64 help
65 Say Y here if you are running Linux on any Atari and have a keyboard
66 attached.
67
68 To compile this driver as a module, choose M here: the
69 module will be called atakbd.
70
Linus Torvalds1da177e2005-04-16 15:20:36 -070071config KEYBOARD_ATKBD
Feng Tangc9d46f62010-07-05 23:03:21 +080072 tristate "AT keyboard" if EMBEDDED || !X86
Linus Torvalds1da177e2005-04-16 15:20:36 -070073 default y
74 select SERIO
75 select SERIO_LIBPS2
Feng Tang44631ac2010-07-05 23:03:20 +080076 select SERIO_I8042 if X86
Linus Torvalds1da177e2005-04-16 15:20:36 -070077 select SERIO_GSCPS2 if GSC
78 help
79 Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
80 you'll need this, unless you have a different type keyboard (USB, ADB
81 or other). This also works for AT and PS/2 keyboards connected over a
82 PS/2 to serial converter.
83
84 If unsure, say Y.
85
86 To compile this driver as a module, choose M here: the
87 module will be called atkbd.
88
89config KEYBOARD_ATKBD_HP_KEYCODES
90 bool "Use HP keyboard scancodes"
91 depends on PARISC && KEYBOARD_ATKBD
92 default y
93 help
94 Say Y here if you have a PA-RISC machine and want to use an AT or
95 PS/2 keyboard, and your keyboard uses keycodes that are specific to
96 PA-RISC keyboards.
97
98 Say N if you use a standard keyboard.
99
100config KEYBOARD_ATKBD_RDI_KEYCODES
101 bool "Use PrecisionBook keyboard scancodes"
102 depends on KEYBOARD_ATKBD_HP_KEYCODES
103 default n
104 help
105 If you have an RDI PrecisionBook, say Y here if you want to use its
106 built-in keyboard (as opposed to an external keyboard).
107
108 The PrecisionBook has five keys that conflict with those used by most
109 AT and PS/2 keyboards. These are as follows:
110
111 PrecisionBook Standard AT or PS/2
112
113 F1 F12
114 Left Ctrl Left Alt
115 Caps Lock Left Ctrl
116 Right Ctrl Caps Lock
117 Left 102nd key (the key to the right of Left Shift)
118
119 If you say N here, and use the PrecisionBook keyboard, then each key
120 in the left-hand column will be interpreted as the corresponding key
121 in the right-hand column.
122
123 If you say Y here, and use an external keyboard, then each key in the
124 right-hand column will be interpreted as the key shown in the
125 left-hand column.
126
Christoph Fritzd90d8d52010-07-17 14:29:06 -0700127config KEYBOARD_QT2160
Raphael Derosso Pereirafde11322009-09-21 22:24:06 -0700128 tristate "Atmel AT42QT2160 Touch Sensor Chip"
129 depends on I2C && EXPERIMENTAL
130 help
131 If you say yes here you get support for Atmel AT42QT2160 Touch
132 Sensor chip as a keyboard input.
133
134 This driver can also be built as a module. If so, the module
135 will be called qt2160.
136
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700137config KEYBOARD_BFIN
138 tristate "Blackfin BF54x keypad support"
139 depends on (BF54x && !BF544)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700140 help
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700141 Say Y here if you want to use the BF54x keypad.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700142
143 To compile this driver as a module, choose M here: the
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700144 module will be called bf54x-keys.
145
Linus Torvalds1da177e2005-04-16 15:20:36 -0700146config KEYBOARD_LKKBD
147 tristate "DECstation/VAXstation LK201/LK401 keyboard"
148 select SERIO
149 help
150 Say Y here if you want to use a LK201 or LK401 style serial
151 keyboard. This keyboard is also useable on PCs if you attach
152 it with the inputattach program. The connector pinout is
153 described within lkkbd.c.
154
155 To compile this driver as a module, choose M here: the
156 module will be called lkkbd.
157
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700158config KEYBOARD_EP93XX
159 tristate "EP93xx Matrix Keypad support"
160 depends on ARCH_EP93XX
Linus Torvalds1da177e2005-04-16 15:20:36 -0700161 help
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700162 Say Y here to enable the matrix keypad on the Cirrus EP93XX.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700163
164 To compile this driver as a module, choose M here: the
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700165 module will be called ep93xx_keypad.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700166
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700167config KEYBOARD_GPIO
168 tristate "GPIO Buttons"
169 depends on GENERIC_GPIO
Linus Torvalds1da177e2005-04-16 15:20:36 -0700170 help
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700171 This driver implements support for buttons connected
172 to GPIO pins of various CPUs (and some other chips).
173
174 Say Y here if your device has buttons connected
175 directly to such GPIO pins. Your board-specific
176 setup logic must also provide a platform device,
177 with configuration data saying which GPIOs are used.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700178
179 To compile this driver as a module, choose M here: the
Eric Miaobab76142009-06-29 00:20:52 -0700180 module will be called gpio_keys.
181
Gabor Juhos0e7d0c82010-12-06 17:14:47 -0800182config KEYBOARD_GPIO_POLLED
183 tristate "Polled GPIO buttons"
184 depends on GENERIC_GPIO
185 select INPUT_POLLDEV
186 help
187 This driver implements support for buttons connected
188 to GPIO pins that are not capable of generating interrupts.
189
190 Say Y here if your device has buttons connected
191 directly to such GPIO pins. Your board-specific
192 setup logic must also provide a platform device,
193 with configuration data saying which GPIOs are used.
194
195 To compile this driver as a module, choose M here: the
196 module will be called gpio_keys_polled.
197
Sriramakrishnan Govindarajan30ba3ea2010-05-03 23:47:12 -0700198config KEYBOARD_TCA6416
199 tristate "TCA6416 Keypad Support"
200 depends on I2C
201 help
202 This driver implements basic keypad functionality
203 for keys connected through TCA6416 IO expander
204
205 Say Y here if your device has keys connected to
206 TCA6416 IO expander. Your board-specific setup logic
207 must also provide pin-mask details(of which TCA6416 pins
208 are used for keypad).
209
210 If enabled the complete TCA6416 device will be managed through
211 this driver.
212
213
Eric Miaobab76142009-06-29 00:20:52 -0700214config KEYBOARD_MATRIX
215 tristate "GPIO driven matrix keypad support"
216 depends on GENERIC_GPIO
217 help
218 Enable support for GPIO driven matrix keypad.
219
220 To compile this driver as a module, choose M here: the
221 module will be called matrix_keypad.
Michael Schmitzc04cb852007-05-01 22:32:38 +0200222
Linus Torvalds1da177e2005-04-16 15:20:36 -0700223config KEYBOARD_HIL_OLD
224 tristate "HP HIL keyboard support (simple driver)"
Geert Uytterhoevenda96d0b2006-10-09 22:22:37 +0200225 depends on GSC || HP300
Linus Torvalds1da177e2005-04-16 15:20:36 -0700226 default y
227 help
228 The "Human Interface Loop" is a older, 8-channel USB-like
229 controller used in several Hewlett Packard models. This driver
230 was adapted from the one written for m68k/hp300, and implements
231 support for a keyboard attached to the HIL port, but not for
232 any other types of HIL input devices like mice or tablets.
233 However, it has been thoroughly tested and is stable.
234
235 If you want full HIL support including support for multiple
Matt LaPlante09509602006-10-03 22:31:37 +0200236 keyboards, mice, and tablets, you have to enable the
Linus Torvalds1da177e2005-04-16 15:20:36 -0700237 "HP System Device Controller i8042 Support" in the input/serio
238 submenu.
239
240config KEYBOARD_HIL
Dmitry Torokhovfa71c602009-08-07 23:17:47 -0700241 tristate "HP HIL keyboard/pointer support"
Geert Uytterhoevenda96d0b2006-10-09 22:22:37 +0200242 depends on GSC || HP300
Linus Torvalds1da177e2005-04-16 15:20:36 -0700243 default y
244 select HP_SDC
245 select HIL_MLC
246 select SERIO
247 help
248 The "Human Interface Loop" is a older, 8-channel USB-like
249 controller used in several Hewlett Packard models.
Dmitry Torokhovfa71c602009-08-07 23:17:47 -0700250 This driver implements support for HIL-keyboards and pointing
251 devices (mice, tablets, touchscreens) attached
Linus Torvalds1da177e2005-04-16 15:20:36 -0700252 to your machine, so normally you should say Y here.
253
Kristoffer Ericson2aa2cb92007-09-26 00:02:35 -0400254config KEYBOARD_HP6XX
Kristoffer Ericson4ff891e2008-01-14 00:54:23 -0500255 tristate "HP Jornada 6xx keyboard"
Kristoffer Ericson2aa2cb92007-09-26 00:02:35 -0400256 depends on SH_HP6XX
257 select INPUT_POLLDEV
258 help
Kristoffer Ericson4ff891e2008-01-14 00:54:23 -0500259 Say Y here if you have a HP Jornada 620/660/680/690 and want to
260 support the built-in keyboard.
Kristoffer Ericson2aa2cb92007-09-26 00:02:35 -0400261
262 To compile this driver as a module, choose M here: the
263 module will be called jornada680_kbd.
264
Kristoffer Ericsonb0a4e1a2007-09-26 00:02:49 -0400265config KEYBOARD_HP7XX
Kristoffer Ericson4ff891e2008-01-14 00:54:23 -0500266 tristate "HP Jornada 7xx keyboard"
Kristoffer Ericsonb0a4e1a2007-09-26 00:02:49 -0400267 depends on SA1100_JORNADA720_SSP && SA1100_SSP
268 help
Kristoffer Ericson4ff891e2008-01-14 00:54:23 -0500269 Say Y here if you have a HP Jornada 710/720/728 and want to
270 support the built-in keyboard.
Kristoffer Ericsonb0a4e1a2007-09-26 00:02:49 -0400271
272 To compile this driver as a module, choose M here: the
273 module will be called jornada720_kbd.
274
Felipe Balbia48b2d42009-05-15 20:12:47 -0700275config KEYBOARD_LM8323
276 tristate "LM8323 keypad chip"
277 depends on I2C
278 depends on LEDS_CLASS
279 help
280 If you say yes here you get support for the National Semiconductor
281 LM8323 keypad controller.
282
283 To compile this driver as a module, choose M here: the
284 module will be called lm8323.
285
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700286config KEYBOARD_LOCOMO
287 tristate "LoCoMo Keyboard Support"
288 depends on SHARP_LOCOMO
Komal Shahad4e09b2006-09-29 01:59:19 -0700289 help
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700290 Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA
Komal Shahad4e09b2006-09-29 01:59:19 -0700291
292 To compile this driver as a module, choose M here: the
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700293 module will be called locomokbd.
294
295config KEYBOARD_MAPLE
296 tristate "Maple bus keyboard"
297 depends on SH_DREAMCAST && MAPLE
298 help
299 Say Y here if you have a Dreamcast console running Linux and have
300 a keyboard attached to its Maple bus.
301
302 To compile this driver as a module, choose M here: the
303 module will be called maple_keyb.
304
Kim Kyuwon0baf81b2009-09-21 22:17:04 -0700305config KEYBOARD_MAX7359
306 tristate "Maxim MAX7359 Key Switch Controller"
307 depends on I2C
308 help
309 If you say yes here you get support for the Maxim MAX7359 Key
310 Switch Controller chip. This providers microprocessors with
311 management of up to 64 key switches
312
313 To compile this driver as a module, choose M here: the
314 module will be called max7359_keypad.
315
Joonyoung Shim312e8e82010-07-04 01:21:25 -0700316config KEYBOARD_MCS
317 tristate "MELFAS MCS Touchkey"
318 depends on I2C
319 help
320 Say Y here if you have the MELFAS MCS5000/5080 touchkey controller
321 chip in your system.
322
323 If unsure, say N.
324
325 To compile this driver as a module, choose M here: the
326 module will be called mcs_touchkey.
327
Alberto Panizzo76cdc082010-01-31 17:52:07 -0800328config KEYBOARD_IMX
329 tristate "IMX keypad support"
330 depends on ARCH_MXC
331 help
332 Enable support for IMX keypad port.
333
334 To compile this driver as a module, choose M here: the
335 module will be called imx_keypad.
336
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700337config KEYBOARD_NEWTON
338 tristate "Newton keyboard"
339 select SERIO
340 help
341 Say Y here if you have a Newton keyboard on a serial port.
342
343 To compile this driver as a module, choose M here: the
344 module will be called newtonkbd.
Komal Shahad4e09b2006-09-29 01:59:19 -0700345
Sundar Iyer1158f0f2010-09-29 19:42:14 -0700346config KEYBOARD_NOMADIK
347 tristate "ST-Ericsson Nomadik SKE keyboard"
348 depends on PLAT_NOMADIK
349 help
350 Say Y here if you want to use a keypad provided on the SKE controller
351 used on the Ux500 and Nomadik platforms
352
353 To compile this driver as a module, choose M here: the
354 module will be called nmk-ske-keypad.
355
Javier Herrero422b5522009-09-16 01:06:42 -0700356config KEYBOARD_OPENCORES
357 tristate "OpenCores Keyboard Controller"
358 help
359 Say Y here if you want to use the OpenCores Keyboard Controller
360 http://www.opencores.org/project,keyboardcontroller
361
362 To compile this driver as a module, choose M here; the
363 module will be called opencores-kbd.
364
Rodolfo Giometti5a90e5b2007-03-16 00:58:52 -0400365config KEYBOARD_PXA27x
Eric Miaoe0f26772008-01-31 00:59:31 -0500366 tristate "PXA27x/PXA3xx keypad support"
Mark F. Brown6d109462010-09-03 18:28:07 -0400367 depends on PXA27x || PXA3xx || ARCH_MMP
Rodolfo Giometti5a90e5b2007-03-16 00:58:52 -0400368 help
Eric Miaobab76142009-06-29 00:20:52 -0700369 Enable support for PXA27x/PXA3xx keypad controller.
Rodolfo Giometti5a90e5b2007-03-16 00:58:52 -0400370
371 To compile this driver as a module, choose M here: the
Eric Miao0e5f11a2008-01-31 00:56:46 -0500372 module will be called pxa27x_keypad.
Rodolfo Giometti5a90e5b2007-03-16 00:58:52 -0400373
Yong Yaoe0ee6292008-12-29 04:00:02 -0800374config KEYBOARD_PXA930_ROTARY
375 tristate "PXA930/PXA935 Enhanced Rotary Controller Support"
376 depends on CPU_PXA930 || CPU_PXA935
377 help
378 Enable support for PXA930/PXA935 Enhanced Rotary Controller.
379
380 To compile this driver as a module, choose M here: the
381 module will be called pxa930_rotary.
382
Joonyoung Shim0fffed22010-07-21 00:45:10 -0700383config KEYBOARD_SAMSUNG
384 tristate "Samsung keypad support"
385 depends on SAMSUNG_DEV_KEYPAD
386 help
387 Say Y here if you want to use the Samsung keypad.
388
389 To compile this driver as a module, choose M here: the
390 module will be called samsung-keypad.
391
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700392config KEYBOARD_STOWAWAY
393 tristate "Stowaway keyboard"
394 select SERIO
Phil Blundell78a56aa2007-01-18 00:44:09 -0500395 help
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700396 Say Y here if you have a Stowaway keyboard on a serial port.
397 Stowaway compatible keyboards like Dicota Input-PDA keyboard
398 are also supported by this driver.
Phil Blundell78a56aa2007-01-18 00:44:09 -0500399
400 To compile this driver as a module, choose M here: the
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700401 module will be called stowaway.
Phil Blundell78a56aa2007-01-18 00:44:09 -0500402
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700403config KEYBOARD_SUNKBD
404 tristate "Sun Type 4 and Type 5 keyboard"
405 select SERIO
Adrian McMenaminb11d2122007-10-12 20:36:13 -0400406 help
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700407 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
408 connected either to the Sun keyboard connector or to an serial
409 (RS-232) port via a simple adapter.
Adrian McMenaminb11d2122007-10-12 20:36:13 -0400410
411 To compile this driver as a module, choose M here: the
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700412 module will be called sunkbd.
Michael Hennerich8f740ef2007-10-13 00:36:46 -0400413
Magnus Damm795e6bf2008-03-04 15:23:45 -0800414config KEYBOARD_SH_KEYSC
415 tristate "SuperH KEYSC keypad support"
Magnus Damm4e45ad52010-02-16 21:50:58 -0800416 depends on SUPERH || ARCH_SHMOBILE
Magnus Damm795e6bf2008-03-04 15:23:45 -0800417 help
418 Say Y here if you want to use a keypad attached to the KEYSC block
419 on SuperH processors such as sh7722 and sh7343.
420
421 To compile this driver as a module, choose M here: the
422 module will be called sh_keysc.
Felipe Balbia48b2d42009-05-15 20:12:47 -0700423
Rabin Vincent76f10842010-07-02 16:52:10 +0530424config KEYBOARD_STMPE
425 tristate "STMPE keypad support"
426 depends on MFD_STMPE
427 help
428 Say Y here if you want to use the keypad controller on STMPE I/O
429 expanders.
430
431 To compile this driver as a module, choose M here: the module will be
432 called stmpe-keypad.
433
Miguel Aguilarbc09dca2009-10-13 23:37:32 -0700434config KEYBOARD_DAVINCI
435 tristate "TI DaVinci Key Scan"
436 depends on ARCH_DAVINCI_DM365
437 help
438 Say Y to enable keypad module support for the TI DaVinci
439 platforms (DM365).
440
441 To compile this driver as a module, choose M here: the
442 module will be called davinci_keyscan.
443
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700444config KEYBOARD_OMAP
445 tristate "TI OMAP keypad support"
446 depends on (ARCH_OMAP1 || ARCH_OMAP2)
H Hartley Sweetene06003a2009-04-18 23:43:57 -0700447 help
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700448 Say Y here if you want to use the OMAP keypad.
H Hartley Sweetene06003a2009-04-18 23:43:57 -0700449
450 To compile this driver as a module, choose M here: the
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700451 module will be called omap-keypad.
452
Abraham Arcea17f7952010-08-31 17:05:27 -0700453config KEYBOARD_OMAP4
454 tristate "TI OMAP4 keypad support"
455 depends on ARCH_OMAP4
456 help
457 Say Y here if you want to use the OMAP4 keypad.
458
459 To compile this driver as a module, choose M here: the
460 module will be called omap4-keypad.
461
Cyril Chemparathy70614082010-09-20 12:26:40 -0400462config KEYBOARD_TNETV107X
463 tristate "TI TNETV107X keypad support"
464 depends on ARCH_DAVINCI_TNETV107X
465 help
466 Say Y here if you want to use the TNETV107X keypad.
467
468 To compile this driver as a module, choose M here: the
469 module will be called tnetv107x-keypad.
470
David Brownell9d834062009-08-25 19:24:14 -0700471config KEYBOARD_TWL4030
472 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support"
473 depends on TWL4030_CORE
474 help
475 Say Y here if your board use the keypad controller on
476 TWL4030 family chips. It's safe to say enable this
477 even on boards that don't use the keypad controller.
478
479 To compile this driver as a module, choose M here: the
480 module will be called twl4030_keypad.
481
Dmitry Torokhovcb589522009-06-29 00:00:52 -0700482config KEYBOARD_XTKBD
483 tristate "XT keyboard"
484 select SERIO
485 help
486 Say Y here if you want to use the old IBM PC/XT keyboard (or
487 compatible) on your system. This is only possible with a
488 parallel port keyboard adapter, you cannot connect it to the
489 keyboard port on a PC that runs Linux.
490
491 To compile this driver as a module, choose M here: the
492 module will be called xtkbd.
H Hartley Sweetene06003a2009-04-18 23:43:57 -0700493
Wan ZongShun4a152352009-08-09 21:22:22 -0700494config KEYBOARD_W90P910
495 tristate "W90P910 Matrix Keypad support"
496 depends on ARCH_W90X900
497 help
498 Say Y here to enable the matrix keypad on evaluation board
499 based on W90P910.
500
501 To compile this driver as a module, choose M here: the
502 module will be called w90p910_keypad.
503
Linus Torvalds1da177e2005-04-16 15:20:36 -0700504endif