]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - drivers/input/keyboard/Kconfig
kconfig: rename CONFIG_EMBEDDED to CONFIG_EXPERT
[mirror_ubuntu-bionic-kernel.git] / drivers / input / keyboard / Kconfig
CommitLineData
1da177e4
LT
1#
2# Input core configuration
3#
4menuconfig INPUT_KEYBOARD
6a108a14 5 bool "Keyboards" if EXPERT || !X86
1da177e4
LT
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
fba65fe0
MH
15config KEYBOARD_ADP5520
16 tristate "Keypad Support for ADP5520 PMIC"
17 depends on PMIC_ADP5520
18 help
19 This option enables support for the keypad scan matrix
20 on Analog Devices ADP5520 PMICs.
21
22 To compile this driver as a module, choose M here: the module will
23 be called adp5520-keys.
24
88751dd6 25config KEYBOARD_ADP5588
5a9003db 26 tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander"
88751dd6
MH
27 depends on I2C
28 help
5a9003db 29 Say Y here if you want to use a ADP5588/87 attached to your
88751dd6
MH
30 system I2C bus.
31
32 To compile this driver as a module, choose M here: the
33 module will be called adp5588-keys.
34
cb589529
DT
35config KEYBOARD_AMIGA
36 tristate "Amiga keyboard"
37 depends on AMIGA
38 help
39 Say Y here if you are running Linux on any AMIGA and have a keyboard
40 attached.
41
42 To compile this driver as a module, choose M here: the
43 module will be called amikbd.
44
45config ATARI_KBD_CORE
46 bool
47
48config KEYBOARD_ATARI
49 tristate "Atari keyboard"
50 depends on ATARI
51 select ATARI_KBD_CORE
52 help
53 Say Y here if you are running Linux on any Atari and have a keyboard
54 attached.
55
56 To compile this driver as a module, choose M here: the
57 module will be called atakbd.
58
1da177e4 59config KEYBOARD_ATKBD
6a108a14 60 tristate "AT keyboard" if EXPERT || !X86
1da177e4
LT
61 default y
62 select SERIO
63 select SERIO_LIBPS2
44631ac6 64 select SERIO_I8042 if X86
1da177e4
LT
65 select SERIO_GSCPS2 if GSC
66 help
67 Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
68 you'll need this, unless you have a different type keyboard (USB, ADB
69 or other). This also works for AT and PS/2 keyboards connected over a
70 PS/2 to serial converter.
71
72 If unsure, say Y.
73
74 To compile this driver as a module, choose M here: the
75 module will be called atkbd.
76
77config KEYBOARD_ATKBD_HP_KEYCODES
78 bool "Use HP keyboard scancodes"
79 depends on PARISC && KEYBOARD_ATKBD
80 default y
81 help
82 Say Y here if you have a PA-RISC machine and want to use an AT or
83 PS/2 keyboard, and your keyboard uses keycodes that are specific to
84 PA-RISC keyboards.
85
86 Say N if you use a standard keyboard.
87
88config KEYBOARD_ATKBD_RDI_KEYCODES
89 bool "Use PrecisionBook keyboard scancodes"
90 depends on KEYBOARD_ATKBD_HP_KEYCODES
91 default n
92 help
93 If you have an RDI PrecisionBook, say Y here if you want to use its
94 built-in keyboard (as opposed to an external keyboard).
95
96 The PrecisionBook has five keys that conflict with those used by most
97 AT and PS/2 keyboards. These are as follows:
98
99 PrecisionBook Standard AT or PS/2
100
101 F1 F12
102 Left Ctrl Left Alt
103 Caps Lock Left Ctrl
104 Right Ctrl Caps Lock
105 Left 102nd key (the key to the right of Left Shift)
106
107 If you say N here, and use the PrecisionBook keyboard, then each key
108 in the left-hand column will be interpreted as the corresponding key
109 in the right-hand column.
110
111 If you say Y here, and use an external keyboard, then each key in the
112 right-hand column will be interpreted as the key shown in the
113 left-hand column.
114
d90d8d5e 115config KEYBOARD_QT2160
fde11323
RDP
116 tristate "Atmel AT42QT2160 Touch Sensor Chip"
117 depends on I2C && EXPERIMENTAL
118 help
119 If you say yes here you get support for Atmel AT42QT2160 Touch
120 Sensor chip as a keyboard input.
121
122 This driver can also be built as a module. If so, the module
123 will be called qt2160.
124
cb589529
DT
125config KEYBOARD_BFIN
126 tristate "Blackfin BF54x keypad support"
127 depends on (BF54x && !BF544)
f35d0616 128 help
cb589529 129 Say Y here if you want to use the BF54x keypad.
f35d0616
MV
130
131 To compile this driver as a module, choose M here: the
cb589529 132 module will be called bf54x-keys.
f35d0616 133
cb589529
DT
134config KEYBOARD_LKKBD
135 tristate "DECstation/VAXstation LK201/LK401 keyboard"
136 select SERIO
fff71312 137 help
cb589529
DT
138 Say Y here if you want to use a LK201 or LK401 style serial
139 keyboard. This keyboard is also useable on PCs if you attach
140 it with the inputattach program. The connector pinout is
141 described within lkkbd.c.
fff71312
RP
142
143 To compile this driver as a module, choose M here: the
cb589529 144 module will be called lkkbd.
fff71312 145
cb589529
DT
146config KEYBOARD_EP93XX
147 tristate "EP93xx Matrix Keypad support"
148 depends on ARCH_EP93XX
93e9012f 149 help
cb589529 150 Say Y here to enable the matrix keypad on the Cirrus EP93XX.
93e9012f
DES
151
152 To compile this driver as a module, choose M here: the
cb589529 153 module will be called ep93xx_keypad.
93e9012f 154
cb589529
DT
155config KEYBOARD_GPIO
156 tristate "GPIO Buttons"
157 depends on GENERIC_GPIO
1da177e4 158 help
cb589529
DT
159 This driver implements support for buttons connected
160 to GPIO pins of various CPUs (and some other chips).
0e52d328 161
cb589529
DT
162 Say Y here if your device has buttons connected
163 directly to such GPIO pins. Your board-specific
164 setup logic must also provide a platform device,
165 with configuration data saying which GPIOs are used.
c04cb856
MS
166
167 To compile this driver as a module, choose M here: the
bab7614d
EM
168 module will be called gpio_keys.
169
0e7d0c86
GJ
170config KEYBOARD_GPIO_POLLED
171 tristate "Polled GPIO buttons"
172 depends on GENERIC_GPIO
173 select INPUT_POLLDEV
174 help
175 This driver implements support for buttons connected
176 to GPIO pins that are not capable of generating interrupts.
177
178 Say Y here if your device has buttons connected
179 directly to such GPIO pins. Your board-specific
180 setup logic must also provide a platform device,
181 with configuration data saying which GPIOs are used.
182
183 To compile this driver as a module, choose M here: the
184 module will be called gpio_keys_polled.
185
30ba3ead 186config KEYBOARD_TCA6416
b8a3d6bc 187 tristate "TCA6416/TCA6408A Keypad Support"
30ba3ead
SG
188 depends on I2C
189 help
190 This driver implements basic keypad functionality
b8a3d6bc 191 for keys connected through TCA6416/TCA6408A IO expanders.
30ba3ead
SG
192
193 Say Y here if your device has keys connected to
b8a3d6bc 194 TCA6416/TCA6408A IO expander. Your board-specific setup logic
30ba3ead
SG
195 must also provide pin-mask details(of which TCA6416 pins
196 are used for keypad).
197
b8a3d6bc 198 If enabled the entire TCA6416 device will be managed through
30ba3ead
SG
199 this driver.
200
b8a3d6bc
TS
201 To compile this driver as a module, choose M here: the
202 module will be called tca6416_keypad.
30ba3ead 203
bab7614d
EM
204config KEYBOARD_MATRIX
205 tristate "GPIO driven matrix keypad support"
206 depends on GENERIC_GPIO
207 help
208 Enable support for GPIO driven matrix keypad.
209
210 To compile this driver as a module, choose M here: the
211 module will be called matrix_keypad.
c04cb856 212
1da177e4
LT
213config KEYBOARD_HIL_OLD
214 tristate "HP HIL keyboard support (simple driver)"
da96d0b5 215 depends on GSC || HP300
1da177e4
LT
216 default y
217 help
218 The "Human Interface Loop" is a older, 8-channel USB-like
219 controller used in several Hewlett Packard models. This driver
220 was adapted from the one written for m68k/hp300, and implements
221 support for a keyboard attached to the HIL port, but not for
222 any other types of HIL input devices like mice or tablets.
223 However, it has been thoroughly tested and is stable.
224
225 If you want full HIL support including support for multiple
09509603 226 keyboards, mice, and tablets, you have to enable the
1da177e4
LT
227 "HP System Device Controller i8042 Support" in the input/serio
228 submenu.
229
230config KEYBOARD_HIL
fa71c605 231 tristate "HP HIL keyboard/pointer support"
da96d0b5 232 depends on GSC || HP300
1da177e4
LT
233 default y
234 select HP_SDC
235 select HIL_MLC
236 select SERIO
237 help
238 The "Human Interface Loop" is a older, 8-channel USB-like
239 controller used in several Hewlett Packard models.
fa71c605
DT
240 This driver implements support for HIL-keyboards and pointing
241 devices (mice, tablets, touchscreens) attached
1da177e4
LT
242 to your machine, so normally you should say Y here.
243
2aa2cb9e 244config KEYBOARD_HP6XX
4ff891eb 245 tristate "HP Jornada 6xx keyboard"
2aa2cb9e
KE
246 depends on SH_HP6XX
247 select INPUT_POLLDEV
248 help
4ff891eb
KE
249 Say Y here if you have a HP Jornada 620/660/680/690 and want to
250 support the built-in keyboard.
2aa2cb9e
KE
251
252 To compile this driver as a module, choose M here: the
253 module will be called jornada680_kbd.
254
b0a4e1aa 255config KEYBOARD_HP7XX
4ff891eb 256 tristate "HP Jornada 7xx keyboard"
b0a4e1aa
KE
257 depends on SA1100_JORNADA720_SSP && SA1100_SSP
258 help
4ff891eb
KE
259 Say Y here if you have a HP Jornada 710/720/728 and want to
260 support the built-in keyboard.
b0a4e1aa
KE
261
262 To compile this driver as a module, choose M here: the
263 module will be called jornada720_kbd.
264
a48b2d4a
FB
265config KEYBOARD_LM8323
266 tristate "LM8323 keypad chip"
267 depends on I2C
268 depends on LEDS_CLASS
269 help
270 If you say yes here you get support for the National Semiconductor
271 LM8323 keypad controller.
272
273 To compile this driver as a module, choose M here: the
274 module will be called lm8323.
275
cb589529
DT
276config KEYBOARD_LOCOMO
277 tristate "LoCoMo Keyboard Support"
278 depends on SHARP_LOCOMO
ad4e09b1 279 help
cb589529 280 Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA
ad4e09b1
KS
281
282 To compile this driver as a module, choose M here: the
cb589529
DT
283 module will be called locomokbd.
284
285config KEYBOARD_MAPLE
286 tristate "Maple bus keyboard"
287 depends on SH_DREAMCAST && MAPLE
288 help
289 Say Y here if you have a Dreamcast console running Linux and have
290 a keyboard attached to its Maple bus.
291
292 To compile this driver as a module, choose M here: the
293 module will be called maple_keyb.
294
0baf81ba
KK
295config KEYBOARD_MAX7359
296 tristate "Maxim MAX7359 Key Switch Controller"
297 depends on I2C
298 help
299 If you say yes here you get support for the Maxim MAX7359 Key
300 Switch Controller chip. This providers microprocessors with
301 management of up to 64 key switches
302
303 To compile this driver as a module, choose M here: the
304 module will be called max7359_keypad.
305
312e8e8a
JS
306config KEYBOARD_MCS
307 tristate "MELFAS MCS Touchkey"
308 depends on I2C
309 help
310 Say Y here if you have the MELFAS MCS5000/5080 touchkey controller
311 chip in your system.
312
313 If unsure, say N.
314
315 To compile this driver as a module, choose M here: the
316 module will be called mcs_touchkey.
317
76cdc083
AP
318config KEYBOARD_IMX
319 tristate "IMX keypad support"
320 depends on ARCH_MXC
321 help
322 Enable support for IMX keypad port.
323
324 To compile this driver as a module, choose M here: the
325 module will be called imx_keypad.
326
cb589529
DT
327config KEYBOARD_NEWTON
328 tristate "Newton keyboard"
329 select SERIO
330 help
331 Say Y here if you have a Newton keyboard on a serial port.
332
333 To compile this driver as a module, choose M here: the
334 module will be called newtonkbd.
ad4e09b1 335
1158f0f1
SI
336config KEYBOARD_NOMADIK
337 tristate "ST-Ericsson Nomadik SKE keyboard"
338 depends on PLAT_NOMADIK
339 help
340 Say Y here if you want to use a keypad provided on the SKE controller
341 used on the Ux500 and Nomadik platforms
342
343 To compile this driver as a module, choose M here: the
344 module will be called nmk-ske-keypad.
345
422b552d
JH
346config KEYBOARD_OPENCORES
347 tristate "OpenCores Keyboard Controller"
348 help
349 Say Y here if you want to use the OpenCores Keyboard Controller
350 http://www.opencores.org/project,keyboardcontroller
351
352 To compile this driver as a module, choose M here; the
353 module will be called opencores-kbd.
354
5a90e5bc 355config KEYBOARD_PXA27x
e0f2677f 356 tristate "PXA27x/PXA3xx keypad support"
6d109465 357 depends on PXA27x || PXA3xx || ARCH_MMP
5a90e5bc 358 help
bab7614d 359 Enable support for PXA27x/PXA3xx keypad controller.
5a90e5bc
RG
360
361 To compile this driver as a module, choose M here: the
0e5f11aa 362 module will be called pxa27x_keypad.
5a90e5bc 363
e0ee6298
YY
364config KEYBOARD_PXA930_ROTARY
365 tristate "PXA930/PXA935 Enhanced Rotary Controller Support"
366 depends on CPU_PXA930 || CPU_PXA935
367 help
368 Enable support for PXA930/PXA935 Enhanced Rotary Controller.
369
370 To compile this driver as a module, choose M here: the
371 module will be called pxa930_rotary.
372
0fffed27
JS
373config KEYBOARD_SAMSUNG
374 tristate "Samsung keypad support"
375 depends on SAMSUNG_DEV_KEYPAD
376 help
377 Say Y here if you want to use the Samsung keypad.
378
379 To compile this driver as a module, choose M here: the
380 module will be called samsung-keypad.
381
cb589529
DT
382config KEYBOARD_STOWAWAY
383 tristate "Stowaway keyboard"
384 select SERIO
b11d2127 385 help
cb589529
DT
386 Say Y here if you have a Stowaway keyboard on a serial port.
387 Stowaway compatible keyboards like Dicota Input-PDA keyboard
388 are also supported by this driver.
b11d2127
AM
389
390 To compile this driver as a module, choose M here: the
cb589529 391 module will be called stowaway.
b11d2127 392
cb589529
DT
393config KEYBOARD_SUNKBD
394 tristate "Sun Type 4 and Type 5 keyboard"
395 select SERIO
8f740ef3 396 help
cb589529
DT
397 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
398 connected either to the Sun keyboard connector or to an serial
399 (RS-232) port via a simple adapter.
8f740ef3
MH
400
401 To compile this driver as a module, choose M here: the
cb589529 402 module will be called sunkbd.
8f740ef3 403
795e6bf3
MD
404config KEYBOARD_SH_KEYSC
405 tristate "SuperH KEYSC keypad support"
4e45ad5e 406 depends on SUPERH || ARCH_SHMOBILE
795e6bf3
MD
407 help
408 Say Y here if you want to use a keypad attached to the KEYSC block
409 on SuperH processors such as sh7722 and sh7343.
410
411 To compile this driver as a module, choose M here: the
412 module will be called sh_keysc.
a48b2d4a 413
76f10845
RV
414config KEYBOARD_STMPE
415 tristate "STMPE keypad support"
416 depends on MFD_STMPE
417 help
418 Say Y here if you want to use the keypad controller on STMPE I/O
419 expanders.
420
421 To compile this driver as a module, choose M here: the module will be
422 called stmpe-keypad.
423
bc09dcad
MA
424config KEYBOARD_DAVINCI
425 tristate "TI DaVinci Key Scan"
426 depends on ARCH_DAVINCI_DM365
427 help
428 Say Y to enable keypad module support for the TI DaVinci
429 platforms (DM365).
430
431 To compile this driver as a module, choose M here: the
432 module will be called davinci_keyscan.
433
cb589529
DT
434config KEYBOARD_OMAP
435 tristate "TI OMAP keypad support"
436 depends on (ARCH_OMAP1 || ARCH_OMAP2)
e06003af 437 help
cb589529 438 Say Y here if you want to use the OMAP keypad.
e06003af
HS
439
440 To compile this driver as a module, choose M here: the
cb589529
DT
441 module will be called omap-keypad.
442
a17f7955
AA
443config KEYBOARD_OMAP4
444 tristate "TI OMAP4 keypad support"
445 depends on ARCH_OMAP4
446 help
447 Say Y here if you want to use the OMAP4 keypad.
448
449 To compile this driver as a module, choose M here: the
450 module will be called omap4-keypad.
451
bc95df78
RK
452config KEYBOARD_SPEAR
453 tristate "ST SPEAR keyboard support"
454 depends on PLAT_SPEAR
455 help
456 Say Y here if you want to use the SPEAR keyboard.
457
458 To compile this driver as a module, choose M here: the
459 module will be called spear-keboard.
460
09c730a4
SI
461config KEYBOARD_TC3589X
462 tristate "TC3589X Keypad support"
463 depends on MFD_TC3589X
464 help
465 Say Y here if you want to use the keypad controller on
466 TC35892/3 I/O expander.
467
468 To compile this driver as a module, choose M here: the
469 module will be called tc3589x-keypad.
470
70614084
CC
471config KEYBOARD_TNETV107X
472 tristate "TI TNETV107X keypad support"
473 depends on ARCH_DAVINCI_TNETV107X
474 help
475 Say Y here if you want to use the TNETV107X keypad.
476
477 To compile this driver as a module, choose M here: the
478 module will be called tnetv107x-keypad.
479
9d834068
DB
480config KEYBOARD_TWL4030
481 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support"
482 depends on TWL4030_CORE
483 help
484 Say Y here if your board use the keypad controller on
485 TWL4030 family chips. It's safe to say enable this
486 even on boards that don't use the keypad controller.
487
488 To compile this driver as a module, choose M here: the
489 module will be called twl4030_keypad.
490
cb589529
DT
491config KEYBOARD_XTKBD
492 tristate "XT keyboard"
493 select SERIO
494 help
495 Say Y here if you want to use the old IBM PC/XT keyboard (or
496 compatible) on your system. This is only possible with a
497 parallel port keyboard adapter, you cannot connect it to the
498 keyboard port on a PC that runs Linux.
499
500 To compile this driver as a module, choose M here: the
501 module will be called xtkbd.
e06003af 502
4a15235e
WZ
503config KEYBOARD_W90P910
504 tristate "W90P910 Matrix Keypad support"
505 depends on ARCH_W90X900
506 help
507 Say Y here to enable the matrix keypad on evaluation board
508 based on W90P910.
509
510 To compile this driver as a module, choose M here: the
511 module will be called w90p910_keypad.
512
1da177e4 513endif