Commit | Line | Data |
---|---|---|
ec8f24b7 | 1 | # SPDX-License-Identifier: GPL-2.0-only |
1da177e4 LT |
2 | # |
3 | # Input core configuration | |
4 | # | |
5 | menuconfig INPUT_KEYBOARD | |
bcd26230 | 6 | bool "Keyboards" |
1da177e4 LT |
7 | default y |
8 | help | |
9 | Say Y here, and a list of supported keyboards will be displayed. | |
10 | This option doesn't affect the kernel. | |
11 | ||
12 | If unsure, say Y. | |
13 | ||
14 | if INPUT_KEYBOARD | |
15 | ||
68077264 AB |
16 | config KEYBOARD_ADC |
17 | tristate "ADC Ladder Buttons" | |
18 | depends on IIO | |
68077264 AB |
19 | help |
20 | This driver implements support for buttons connected | |
21 | to an ADC using a resistor ladder. | |
22 | ||
23 | Say Y here if your device has such buttons connected to an ADC. Your | |
24 | board-specific setup logic must also provide a configuration data | |
25 | for mapping voltages to buttons. | |
26 | ||
27 | To compile this driver as a module, choose M here: the | |
28 | module will be called adc_keys. | |
29 | ||
fba65fe0 MH |
30 | config KEYBOARD_ADP5520 |
31 | tristate "Keypad Support for ADP5520 PMIC" | |
32 | depends on PMIC_ADP5520 | |
33 | help | |
34 | This option enables support for the keypad scan matrix | |
35 | on Analog Devices ADP5520 PMICs. | |
36 | ||
37 | To compile this driver as a module, choose M here: the module will | |
38 | be called adp5520-keys. | |
39 | ||
88751dd6 | 40 | config KEYBOARD_ADP5588 |
5a9003db | 41 | tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander" |
88751dd6 | 42 | depends on I2C |
9d2b2e83 NS |
43 | select GPIOLIB |
44 | select GPIOLIB_IRQCHIP | |
6704a862 | 45 | select INPUT_MATRIXKMAP |
88751dd6 | 46 | help |
5a9003db | 47 | Say Y here if you want to use a ADP5588/87 attached to your |
88751dd6 MH |
48 | system I2C bus. |
49 | ||
50 | To compile this driver as a module, choose M here: the | |
51 | module will be called adp5588-keys. | |
52 | ||
9d2e1736 | 53 | config KEYBOARD_ADP5589 |
3f48e735 | 54 | tristate "ADP5585/ADP5589 I2C QWERTY Keypad and IO Expander" |
9d2e1736 MH |
55 | depends on I2C |
56 | help | |
3f48e735 | 57 | Say Y here if you want to use a ADP5585/ADP5589 attached to your |
9d2e1736 MH |
58 | system I2C bus. |
59 | ||
60 | To compile this driver as a module, choose M here: the | |
61 | module will be called adp5589-keys. | |
62 | ||
cb589529 DT |
63 | config KEYBOARD_AMIGA |
64 | tristate "Amiga keyboard" | |
65 | depends on AMIGA | |
66 | help | |
67 | Say Y here if you are running Linux on any AMIGA and have a keyboard | |
68 | attached. | |
69 | ||
70 | To compile this driver as a module, choose M here: the | |
71 | module will be called amikbd. | |
72 | ||
038b1a05 RT |
73 | config KEYBOARD_APPLESPI |
74 | tristate "Apple SPI keyboard and trackpad" | |
75 | depends on ACPI && EFI | |
76 | depends on SPI | |
77 | depends on X86 || COMPILE_TEST | |
e77ff779 | 78 | depends on LEDS_CLASS |
020834be | 79 | select CRC16 |
038b1a05 RT |
80 | help |
81 | Say Y here if you are running Linux on any Apple MacBook8,1 or later, | |
82 | or any MacBookPro13,* or MacBookPro14,*. | |
83 | ||
84 | You will also need to enable appropriate SPI master controllers: | |
85 | spi_pxa2xx_platform and spi_pxa2xx_pci for MacBook8,1, and | |
86 | spi_pxa2xx_platform and intel_lpss_pci for the rest. | |
87 | ||
88 | To compile this driver as a module, choose M here: the | |
89 | module will be called applespi. | |
90 | ||
cb589529 DT |
91 | config KEYBOARD_ATARI |
92 | tristate "Atari keyboard" | |
93 | depends on ATARI | |
94 | select ATARI_KBD_CORE | |
95 | help | |
96 | Say Y here if you are running Linux on any Atari and have a keyboard | |
97 | attached. | |
98 | ||
99 | To compile this driver as a module, choose M here: the | |
100 | module will be called atakbd. | |
101 | ||
1da177e4 | 102 | config KEYBOARD_ATKBD |
bcd26230 | 103 | tristate "AT keyboard" |
1da177e4 LT |
104 | default y |
105 | select SERIO | |
106 | select SERIO_LIBPS2 | |
0a4ac2ea | 107 | select SERIO_I8042 if ARCH_MIGHT_HAVE_PC_SERIO |
1da177e4 | 108 | select SERIO_GSCPS2 if GSC |
45ceaf14 | 109 | select INPUT_VIVALDIFMAP |
1da177e4 LT |
110 | help |
111 | Say Y here if you want to use a standard AT or PS/2 keyboard. Usually | |
112 | you'll need this, unless you have a different type keyboard (USB, ADB | |
113 | or other). This also works for AT and PS/2 keyboards connected over a | |
114 | PS/2 to serial converter. | |
115 | ||
116 | If unsure, say Y. | |
117 | ||
118 | To compile this driver as a module, choose M here: the | |
119 | module will be called atkbd. | |
120 | ||
121 | config KEYBOARD_ATKBD_HP_KEYCODES | |
122 | bool "Use HP keyboard scancodes" | |
123 | depends on PARISC && KEYBOARD_ATKBD | |
124 | default y | |
125 | help | |
126 | Say Y here if you have a PA-RISC machine and want to use an AT or | |
127 | PS/2 keyboard, and your keyboard uses keycodes that are specific to | |
128 | PA-RISC keyboards. | |
129 | ||
130 | Say N if you use a standard keyboard. | |
131 | ||
132 | config KEYBOARD_ATKBD_RDI_KEYCODES | |
133 | bool "Use PrecisionBook keyboard scancodes" | |
134 | depends on KEYBOARD_ATKBD_HP_KEYCODES | |
135 | default n | |
136 | help | |
137 | If you have an RDI PrecisionBook, say Y here if you want to use its | |
138 | built-in keyboard (as opposed to an external keyboard). | |
139 | ||
140 | The PrecisionBook has five keys that conflict with those used by most | |
141 | AT and PS/2 keyboards. These are as follows: | |
142 | ||
143 | PrecisionBook Standard AT or PS/2 | |
144 | ||
145 | F1 F12 | |
146 | Left Ctrl Left Alt | |
147 | Caps Lock Left Ctrl | |
148 | Right Ctrl Caps Lock | |
149 | Left 102nd key (the key to the right of Left Shift) | |
150 | ||
151 | If you say N here, and use the PrecisionBook keyboard, then each key | |
152 | in the left-hand column will be interpreted as the corresponding key | |
153 | in the right-hand column. | |
154 | ||
155 | If you say Y here, and use an external keyboard, then each key in the | |
156 | right-hand column will be interpreted as the key shown in the | |
157 | left-hand column. | |
158 | ||
cbebf5ad MF |
159 | config KEYBOARD_QT1050 |
160 | tristate "Microchip AT42QT1050 Touch Sensor Chip" | |
161 | depends on I2C | |
162 | select REGMAP_I2C | |
163 | help | |
164 | Say Y here if you want to use Microchip AT42QT1050 QTouch | |
165 | Sensor chip as input device. | |
166 | ||
167 | To compile this driver as a module, choose M here: | |
168 | the module will be called qt1050 | |
169 | ||
bd7e4e85 | 170 | config KEYBOARD_QT1070 |
bcf1e034 KK |
171 | tristate "Atmel AT42QT1070 Touch Sensor Chip" |
172 | depends on I2C | |
173 | help | |
174 | Say Y here if you want to use Atmel AT42QT1070 QTouch | |
175 | Sensor chip as input device. | |
176 | ||
177 | To compile this driver as a module, choose M here: | |
178 | the module will be called qt1070 | |
bd7e4e85 | 179 | |
d90d8d5e | 180 | config KEYBOARD_QT2160 |
fde11323 | 181 | tristate "Atmel AT42QT2160 Touch Sensor Chip" |
6828b4bb | 182 | depends on I2C |
fde11323 RDP |
183 | help |
184 | If you say yes here you get support for Atmel AT42QT2160 Touch | |
185 | Sensor chip as a keyboard input. | |
186 | ||
187 | This driver can also be built as a module. If so, the module | |
188 | will be called qt2160. | |
189 | ||
e70f18e1 AS |
190 | config KEYBOARD_CLPS711X |
191 | tristate "CLPS711X Keypad support" | |
c5872d6a | 192 | depends on ARCH_CLPS711X || COMPILE_TEST |
e70f18e1 | 193 | select INPUT_MATRIXKMAP |
e70f18e1 AS |
194 | help |
195 | Say Y here to enable the matrix keypad on the Cirrus Logic | |
196 | CLPS711X CPUs. | |
197 | ||
198 | To compile this driver as a module, choose M here: the | |
199 | module will be called clps711x-keypad. | |
200 | ||
131b3de7 LW |
201 | config KEYBOARD_DLINK_DIR685 |
202 | tristate "D-Link DIR-685 touchkeys support" | |
203 | depends on I2C | |
204 | default ARCH_GEMINI | |
205 | help | |
206 | If you say yes here you get support for the D-Link DIR-685 | |
207 | touchkeys. | |
208 | ||
209 | To compile this driver as a module, choose M here: the | |
210 | module will be called dlink-dir685-touchkeys. | |
211 | ||
cb589529 DT |
212 | config KEYBOARD_LKKBD |
213 | tristate "DECstation/VAXstation LK201/LK401 keyboard" | |
214 | select SERIO | |
fff71312 | 215 | help |
cb589529 | 216 | Say Y here if you want to use a LK201 or LK401 style serial |
7ec7c72f | 217 | keyboard. This keyboard is also usable on PCs if you attach |
cb589529 DT |
218 | it with the inputattach program. The connector pinout is |
219 | described within lkkbd.c. | |
fff71312 RP |
220 | |
221 | To compile this driver as a module, choose M here: the | |
cb589529 | 222 | module will be called lkkbd. |
fff71312 | 223 | |
cb589529 DT |
224 | config KEYBOARD_EP93XX |
225 | tristate "EP93xx Matrix Keypad support" | |
dfb6db00 | 226 | depends on ARCH_EP93XX || COMPILE_TEST |
1932811f | 227 | select INPUT_MATRIXKMAP |
93e9012f | 228 | help |
cb589529 | 229 | Say Y here to enable the matrix keypad on the Cirrus EP93XX. |
93e9012f DB |
230 | |
231 | To compile this driver as a module, choose M here: the | |
cb589529 | 232 | module will be called ep93xx_keypad. |
93e9012f | 233 | |
cb589529 DT |
234 | config KEYBOARD_GPIO |
235 | tristate "GPIO Buttons" | |
7d6548ab | 236 | depends on GPIOLIB || COMPILE_TEST |
1da177e4 | 237 | help |
cb589529 DT |
238 | This driver implements support for buttons connected |
239 | to GPIO pins of various CPUs (and some other chips). | |
0e52d328 | 240 | |
cb589529 DT |
241 | Say Y here if your device has buttons connected |
242 | directly to such GPIO pins. Your board-specific | |
243 | setup logic must also provide a platform device, | |
244 | with configuration data saying which GPIOs are used. | |
c04cb856 MS |
245 | |
246 | To compile this driver as a module, choose M here: the | |
bab7614d EM |
247 | module will be called gpio_keys. |
248 | ||
0e7d0c86 GJ |
249 | config KEYBOARD_GPIO_POLLED |
250 | tristate "Polled GPIO buttons" | |
76ec9d18 | 251 | depends on GPIOLIB |
0e7d0c86 GJ |
252 | help |
253 | This driver implements support for buttons connected | |
254 | to GPIO pins that are not capable of generating interrupts. | |
255 | ||
256 | Say Y here if your device has buttons connected | |
257 | directly to such GPIO pins. Your board-specific | |
258 | setup logic must also provide a platform device, | |
259 | with configuration data saying which GPIOs are used. | |
260 | ||
261 | To compile this driver as a module, choose M here: the | |
262 | module will be called gpio_keys_polled. | |
263 | ||
30ba3ead | 264 | config KEYBOARD_TCA6416 |
b8a3d6bc | 265 | tristate "TCA6416/TCA6408A Keypad Support" |
30ba3ead SG |
266 | depends on I2C |
267 | help | |
268 | This driver implements basic keypad functionality | |
b8a3d6bc | 269 | for keys connected through TCA6416/TCA6408A IO expanders. |
30ba3ead SG |
270 | |
271 | Say Y here if your device has keys connected to | |
b8a3d6bc | 272 | TCA6416/TCA6408A IO expander. Your board-specific setup logic |
30ba3ead SG |
273 | must also provide pin-mask details(of which TCA6416 pins |
274 | are used for keypad). | |
275 | ||
b8a3d6bc | 276 | If enabled the entire TCA6416 device will be managed through |
30ba3ead SG |
277 | this driver. |
278 | ||
b8a3d6bc TS |
279 | To compile this driver as a module, choose M here: the |
280 | module will be called tca6416_keypad. | |
30ba3ead | 281 | |
fb6c721b KM |
282 | config KEYBOARD_TCA8418 |
283 | tristate "TCA8418 Keypad Support" | |
0244ad00 | 284 | depends on I2C |
1932811f | 285 | select INPUT_MATRIXKMAP |
fb6c721b KM |
286 | help |
287 | This driver implements basic keypad functionality | |
288 | for keys connected through TCA8418 keypad decoder. | |
289 | ||
290 | Say Y here if your device has keys connected to | |
291 | TCA8418 keypad decoder. | |
292 | ||
293 | If enabled the complete TCA8418 device will be managed through | |
294 | this driver. | |
295 | ||
296 | To compile this driver as a module, choose M here: the | |
297 | module will be called tca8418_keypad. | |
298 | ||
bab7614d EM |
299 | config KEYBOARD_MATRIX |
300 | tristate "GPIO driven matrix keypad support" | |
7d6548ab | 301 | depends on GPIOLIB || COMPILE_TEST |
1932811f | 302 | select INPUT_MATRIXKMAP |
bab7614d EM |
303 | help |
304 | Enable support for GPIO driven matrix keypad. | |
305 | ||
306 | To compile this driver as a module, choose M here: the | |
307 | module will be called matrix_keypad. | |
c04cb856 | 308 | |
1da177e4 LT |
309 | config KEYBOARD_HIL_OLD |
310 | tristate "HP HIL keyboard support (simple driver)" | |
da96d0b5 | 311 | depends on GSC || HP300 |
1da177e4 LT |
312 | default y |
313 | help | |
314 | The "Human Interface Loop" is a older, 8-channel USB-like | |
315 | controller used in several Hewlett Packard models. This driver | |
316 | was adapted from the one written for m68k/hp300, and implements | |
317 | support for a keyboard attached to the HIL port, but not for | |
318 | any other types of HIL input devices like mice or tablets. | |
319 | However, it has been thoroughly tested and is stable. | |
320 | ||
321 | If you want full HIL support including support for multiple | |
09509603 | 322 | keyboards, mice, and tablets, you have to enable the |
1da177e4 LT |
323 | "HP System Device Controller i8042 Support" in the input/serio |
324 | submenu. | |
325 | ||
326 | config KEYBOARD_HIL | |
fa71c605 | 327 | tristate "HP HIL keyboard/pointer support" |
da96d0b5 | 328 | depends on GSC || HP300 |
1da177e4 LT |
329 | default y |
330 | select HP_SDC | |
331 | select HIL_MLC | |
332 | select SERIO | |
333 | help | |
334 | The "Human Interface Loop" is a older, 8-channel USB-like | |
335 | controller used in several Hewlett Packard models. | |
fa71c605 DT |
336 | This driver implements support for HIL-keyboards and pointing |
337 | devices (mice, tablets, touchscreens) attached | |
1da177e4 LT |
338 | to your machine, so normally you should say Y here. |
339 | ||
2aa2cb9e | 340 | config KEYBOARD_HP6XX |
4ff891eb | 341 | tristate "HP Jornada 6xx keyboard" |
2aa2cb9e | 342 | depends on SH_HP6XX |
2aa2cb9e | 343 | help |
4ff891eb KE |
344 | Say Y here if you have a HP Jornada 620/660/680/690 and want to |
345 | support the built-in keyboard. | |
2aa2cb9e KE |
346 | |
347 | To compile this driver as a module, choose M here: the | |
348 | module will be called jornada680_kbd. | |
349 | ||
b0a4e1aa | 350 | config KEYBOARD_HP7XX |
4ff891eb | 351 | tristate "HP Jornada 7xx keyboard" |
b0a4e1aa KE |
352 | depends on SA1100_JORNADA720_SSP && SA1100_SSP |
353 | help | |
4ff891eb KE |
354 | Say Y here if you have a HP Jornada 710/720/728 and want to |
355 | support the built-in keyboard. | |
b0a4e1aa KE |
356 | |
357 | To compile this driver as a module, choose M here: the | |
358 | module will be called jornada720_kbd. | |
359 | ||
a48b2d4a FB |
360 | config KEYBOARD_LM8323 |
361 | tristate "LM8323 keypad chip" | |
0244ad00 | 362 | depends on I2C |
a48b2d4a FB |
363 | depends on LEDS_CLASS |
364 | help | |
365 | If you say yes here you get support for the National Semiconductor | |
366 | LM8323 keypad controller. | |
367 | ||
368 | To compile this driver as a module, choose M here: the | |
369 | module will be called lm8323. | |
370 | ||
0bf25a45 WS |
371 | config KEYBOARD_LM8333 |
372 | tristate "LM8333 keypad chip" | |
373 | depends on I2C | |
1932811f | 374 | select INPUT_MATRIXKMAP |
0bf25a45 WS |
375 | help |
376 | If you say yes here you get support for the National Semiconductor | |
377 | LM8333 keypad controller. | |
378 | ||
379 | To compile this driver as a module, choose M here: the | |
380 | module will be called lm8333. | |
381 | ||
cb589529 DT |
382 | config KEYBOARD_LOCOMO |
383 | tristate "LoCoMo Keyboard Support" | |
384 | depends on SHARP_LOCOMO | |
ad4e09b1 | 385 | help |
cb589529 | 386 | Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA |
ad4e09b1 KS |
387 | |
388 | To compile this driver as a module, choose M here: the | |
cb589529 DT |
389 | module will be called locomokbd. |
390 | ||
69690bec RS |
391 | config KEYBOARD_LPC32XX |
392 | tristate "LPC32XX matrix key scanner support" | |
393 | depends on ARCH_LPC32XX && OF | |
e07577e1 | 394 | select INPUT_MATRIXKMAP |
69690bec RS |
395 | help |
396 | Say Y here if you want to use NXP LPC32XX SoC key scanner interface, | |
397 | connected to a key matrix. | |
398 | ||
399 | To compile this driver as a module, choose M here: the | |
400 | module will be called lpc32xx-keys. | |
401 | ||
cb589529 DT |
402 | config KEYBOARD_MAPLE |
403 | tristate "Maple bus keyboard" | |
404 | depends on SH_DREAMCAST && MAPLE | |
405 | help | |
406 | Say Y here if you have a Dreamcast console running Linux and have | |
407 | a keyboard attached to its Maple bus. | |
408 | ||
409 | To compile this driver as a module, choose M here: the | |
410 | module will be called maple_keyb. | |
411 | ||
0baf81ba KK |
412 | config KEYBOARD_MAX7359 |
413 | tristate "Maxim MAX7359 Key Switch Controller" | |
68aeee98 | 414 | select INPUT_MATRIXKMAP |
0baf81ba KK |
415 | depends on I2C |
416 | help | |
417 | If you say yes here you get support for the Maxim MAX7359 Key | |
418 | Switch Controller chip. This providers microprocessors with | |
419 | management of up to 64 key switches | |
420 | ||
421 | To compile this driver as a module, choose M here: the | |
422 | module will be called max7359_keypad. | |
423 | ||
312e8e8a JS |
424 | config KEYBOARD_MCS |
425 | tristate "MELFAS MCS Touchkey" | |
426 | depends on I2C | |
427 | help | |
428 | Say Y here if you have the MELFAS MCS5000/5080 touchkey controller | |
429 | chip in your system. | |
430 | ||
431 | If unsure, say N. | |
432 | ||
433 | To compile this driver as a module, choose M here: the | |
434 | module will be called mcs_touchkey. | |
435 | ||
36682b81 ZJ |
436 | config KEYBOARD_MPR121 |
437 | tristate "Freescale MPR121 Touchkey" | |
438 | depends on I2C | |
439 | help | |
440 | Say Y here if you have Freescale MPR121 touchkey controller | |
441 | chip in your system. | |
442 | ||
443 | If unsure, say N. | |
444 | ||
445 | To compile this driver as a module, choose M here: the | |
446 | module will be called mpr121_touchkey. | |
447 | ||
d3dc6e23 RG |
448 | config KEYBOARD_SNVS_PWRKEY |
449 | tristate "IMX SNVS Power Key Driver" | |
f5cace4b | 450 | depends on ARCH_MXC || (COMPILE_TEST && HAS_IOMEM) |
d3dc6e23 RG |
451 | depends on OF |
452 | help | |
453 | This is the snvs powerkey driver for the Freescale i.MX application | |
1a26c920 | 454 | processors. |
d3dc6e23 RG |
455 | |
456 | To compile this driver as a module, choose M here; the | |
457 | module will be called snvs_pwrkey. | |
458 | ||
76cdc083 AP |
459 | config KEYBOARD_IMX |
460 | tristate "IMX keypad support" | |
c8834032 | 461 | depends on ARCH_MXC || COMPILE_TEST |
1932811f | 462 | select INPUT_MATRIXKMAP |
76cdc083 AP |
463 | help |
464 | Enable support for IMX keypad port. | |
465 | ||
466 | To compile this driver as a module, choose M here: the | |
467 | module will be called imx_keypad. | |
468 | ||
688f1dfb AH |
469 | config KEYBOARD_IMX_SC_KEY |
470 | tristate "IMX SCU Key Driver" | |
471 | depends on IMX_SCU | |
472 | help | |
473 | This is the system controller key driver for NXP i.MX SoCs with | |
474 | system controller inside. | |
475 | ||
476 | To compile this driver as a module, choose M here: the | |
477 | module will be called imx_sc_key. | |
478 | ||
cb589529 DT |
479 | config KEYBOARD_NEWTON |
480 | tristate "Newton keyboard" | |
481 | select SERIO | |
482 | help | |
483 | Say Y here if you have a Newton keyboard on a serial port. | |
484 | ||
485 | To compile this driver as a module, choose M here: the | |
486 | module will be called newtonkbd. | |
ad4e09b1 | 487 | |
1158f0f1 SI |
488 | config KEYBOARD_NOMADIK |
489 | tristate "ST-Ericsson Nomadik SKE keyboard" | |
694e33a7 | 490 | depends on (ARCH_NOMADIK || ARCH_U8500) |
1932811f | 491 | select INPUT_MATRIXKMAP |
1158f0f1 SI |
492 | help |
493 | Say Y here if you want to use a keypad provided on the SKE controller | |
494 | used on the Ux500 and Nomadik platforms | |
495 | ||
496 | To compile this driver as a module, choose M here: the | |
497 | module will be called nmk-ske-keypad. | |
498 | ||
fc4f3146 DT |
499 | config KEYBOARD_NSPIRE |
500 | tristate "TI-NSPIRE built-in keyboard" | |
501 | depends on ARCH_NSPIRE && OF | |
502 | select INPUT_MATRIXKMAP | |
503 | help | |
504 | Say Y here if you want to use the built-in keypad on TI-NSPIRE. | |
505 | ||
506 | To compile this driver as a module, choose M here: the | |
507 | module will be called nspire-keypad. | |
508 | ||
11f5b30d RI |
509 | config KEYBOARD_TEGRA |
510 | tristate "NVIDIA Tegra internal matrix keyboard controller support" | |
9eee07d3 | 511 | depends on ARCH_TEGRA && OF |
1932811f | 512 | select INPUT_MATRIXKMAP |
11f5b30d RI |
513 | help |
514 | Say Y here if you want to use a matrix keyboard connected directly | |
515 | to the internal keyboard controller on Tegra SoCs. | |
516 | ||
517 | To compile this driver as a module, choose M here: the | |
518 | module will be called tegra-kbc. | |
519 | ||
422b552d JH |
520 | config KEYBOARD_OPENCORES |
521 | tristate "OpenCores Keyboard Controller" | |
150e5928 | 522 | depends on HAS_IOMEM |
422b552d JH |
523 | help |
524 | Say Y here if you want to use the OpenCores Keyboard Controller | |
525 | http://www.opencores.org/project,keyboardcontroller | |
526 | ||
527 | To compile this driver as a module, choose M here; the | |
528 | module will be called opencores-kbd. | |
529 | ||
17406967 SH |
530 | config KEYBOARD_PINEPHONE |
531 | tristate "Pine64 PinePhone Keyboard" | |
532 | depends on I2C && REGULATOR | |
533 | select CRC8 | |
534 | select INPUT_MATRIXKMAP | |
535 | help | |
536 | Say Y here to enable support for the keyboard in the Pine64 PinePhone | |
537 | keyboard case. This driver supports the FLOSS firmware available at | |
538 | https://megous.com/git/pinephone-keyboard/ | |
539 | ||
540 | To compile this driver as a module, choose M here; the | |
541 | module will be called pinephone-keyboard. | |
542 | ||
5a90e5bc | 543 | config KEYBOARD_PXA27x |
e0f2677f | 544 | tristate "PXA27x/PXA3xx keypad support" |
6d109465 | 545 | depends on PXA27x || PXA3xx || ARCH_MMP |
0a085a94 | 546 | select INPUT_MATRIXKMAP |
5a90e5bc | 547 | help |
bab7614d | 548 | Enable support for PXA27x/PXA3xx keypad controller. |
5a90e5bc RG |
549 | |
550 | To compile this driver as a module, choose M here: the | |
0e5f11aa | 551 | module will be called pxa27x_keypad. |
5a90e5bc | 552 | |
e0ee6298 YY |
553 | config KEYBOARD_PXA930_ROTARY |
554 | tristate "PXA930/PXA935 Enhanced Rotary Controller Support" | |
555 | depends on CPU_PXA930 || CPU_PXA935 | |
556 | help | |
557 | Enable support for PXA930/PXA935 Enhanced Rotary Controller. | |
558 | ||
559 | To compile this driver as a module, choose M here: the | |
560 | module will be called pxa930_rotary. | |
561 | ||
39325b59 TS |
562 | config KEYBOARD_PMIC8XXX |
563 | tristate "Qualcomm PMIC8XXX keypad support" | |
564 | depends on MFD_PM8XXX | |
1932811f | 565 | select INPUT_MATRIXKMAP |
39325b59 TS |
566 | help |
567 | Say Y here if you want to enable the driver for the PMIC8XXX | |
568 | keypad provided as a reference design from Qualcomm. This is intended | |
569 | to support upto 18x8 matrix based keypad design. | |
570 | ||
571 | To compile this driver as a module, choose M here: the module will | |
572 | be called pmic8xxx-keypad. | |
573 | ||
0fffed27 JS |
574 | config KEYBOARD_SAMSUNG |
575 | tristate "Samsung keypad support" | |
ba115adf | 576 | depends on HAS_IOMEM && HAVE_CLK |
1932811f | 577 | select INPUT_MATRIXKMAP |
0fffed27 | 578 | help |
8d964a28 DT |
579 | Say Y here if you want to use the keypad on your Samsung mobile |
580 | device. | |
0fffed27 JS |
581 | |
582 | To compile this driver as a module, choose M here: the | |
583 | module will be called samsung-keypad. | |
584 | ||
6f2ac009 | 585 | config KEYBOARD_GOLDFISH_EVENTS |
aaa59e09 | 586 | depends on GOLDFISH || COMPILE_TEST |
6f2ac009 BS |
587 | tristate "Generic Input Event device for Goldfish" |
588 | help | |
589 | Say Y here to get an input event device for the Goldfish virtual | |
590 | device emulator. | |
591 | ||
592 | To compile this driver as a module, choose M here: the | |
593 | module will be called goldfish-events. | |
594 | ||
cb589529 DT |
595 | config KEYBOARD_STOWAWAY |
596 | tristate "Stowaway keyboard" | |
597 | select SERIO | |
b11d2127 | 598 | help |
cb589529 DT |
599 | Say Y here if you have a Stowaway keyboard on a serial port. |
600 | Stowaway compatible keyboards like Dicota Input-PDA keyboard | |
601 | are also supported by this driver. | |
b11d2127 AM |
602 | |
603 | To compile this driver as a module, choose M here: the | |
cb589529 | 604 | module will be called stowaway. |
b11d2127 | 605 | |
062589b1 GF |
606 | config KEYBOARD_ST_KEYSCAN |
607 | tristate "STMicroelectronics keyscan support" | |
608 | depends on ARCH_STI || COMPILE_TEST | |
609 | select INPUT_MATRIXKMAP | |
610 | help | |
611 | Say Y here if you want to use a keypad attached to the keyscan block | |
612 | on some STMicroelectronics SoC devices. | |
613 | ||
614 | To compile this driver as a module, choose M here: the | |
615 | module will be called st-keyscan. | |
616 | ||
cb589529 DT |
617 | config KEYBOARD_SUNKBD |
618 | tristate "Sun Type 4 and Type 5 keyboard" | |
619 | select SERIO | |
8f740ef3 | 620 | help |
cb589529 DT |
621 | Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, |
622 | connected either to the Sun keyboard connector or to an serial | |
623 | (RS-232) port via a simple adapter. | |
8f740ef3 MH |
624 | |
625 | To compile this driver as a module, choose M here: the | |
cb589529 | 626 | module will be called sunkbd. |
8f740ef3 | 627 | |
795e6bf3 MD |
628 | config KEYBOARD_SH_KEYSC |
629 | tristate "SuperH KEYSC keypad support" | |
5186b8c4 | 630 | depends on ARCH_SHMOBILE || COMPILE_TEST |
795e6bf3 MD |
631 | help |
632 | Say Y here if you want to use a keypad attached to the KEYSC block | |
633 | on SuperH processors such as sh7722 and sh7343. | |
634 | ||
635 | To compile this driver as a module, choose M here: the | |
636 | module will be called sh_keysc. | |
a48b2d4a | 637 | |
76f10845 RV |
638 | config KEYBOARD_STMPE |
639 | tristate "STMPE keypad support" | |
640 | depends on MFD_STMPE | |
a4164863 | 641 | depends on OF |
1932811f | 642 | select INPUT_MATRIXKMAP |
76f10845 RV |
643 | help |
644 | Say Y here if you want to use the keypad controller on STMPE I/O | |
645 | expanders. | |
646 | ||
647 | To compile this driver as a module, choose M here: the module will be | |
648 | called stmpe-keypad. | |
649 | ||
af6a5af8 HG |
650 | config KEYBOARD_SUN4I_LRADC |
651 | tristate "Allwinner sun4i low res adc attached tablet keys support" | |
652 | depends on ARCH_SUNXI | |
653 | help | |
654 | This selects support for the Allwinner low res adc attached tablet | |
655 | keys found on Allwinner sunxi SoCs. | |
656 | ||
657 | To compile this driver as a module, choose M here: the | |
658 | module will be called sun4i-lradc-keys. | |
659 | ||
bc09dcad MA |
660 | config KEYBOARD_DAVINCI |
661 | tristate "TI DaVinci Key Scan" | |
662 | depends on ARCH_DAVINCI_DM365 | |
663 | help | |
664 | Say Y to enable keypad module support for the TI DaVinci | |
665 | platforms (DM365). | |
666 | ||
667 | To compile this driver as a module, choose M here: the | |
668 | module will be called davinci_keyscan. | |
669 | ||
d7535ffa LW |
670 | config KEYBOARD_IPAQ_MICRO |
671 | tristate "Buttons on Micro SoC (iPaq h3100,h3600,h3700)" | |
672 | depends on MFD_IPAQ_MICRO | |
673 | help | |
674 | Say Y to enable support for the buttons attached to | |
675 | Micro peripheral controller on iPAQ h3100/h3600/h3700 | |
676 | ||
677 | To compile this driver as a module, choose M here: the | |
678 | module will be called ipaq-micro-keys. | |
679 | ||
ce1cb0ee JL |
680 | config KEYBOARD_IQS62X |
681 | tristate "Azoteq IQS620A/621/622/624/625 keys and switches" | |
682 | depends on MFD_IQS62X | |
683 | help | |
684 | Say Y here to enable key and switch support for the Azoteq IQS620A, | |
685 | IQS621, IQS622, IQS624 and IQS625 multi-function sensors. | |
686 | ||
687 | To compile this driver as a module, choose M here: the module will | |
688 | be called iqs62x-keys. | |
689 | ||
cb589529 DT |
690 | config KEYBOARD_OMAP |
691 | tristate "TI OMAP keypad support" | |
f799a3d8 | 692 | depends on ARCH_OMAP1 |
1932811f | 693 | select INPUT_MATRIXKMAP |
e06003af | 694 | help |
cb589529 | 695 | Say Y here if you want to use the OMAP keypad. |
e06003af HS |
696 | |
697 | To compile this driver as a module, choose M here: the | |
cb589529 DT |
698 | module will be called omap-keypad. |
699 | ||
a17f7955 | 700 | config KEYBOARD_OMAP4 |
f77621cc | 701 | tristate "TI OMAP4+ keypad support" |
b2e3543b | 702 | depends on (OF && HAS_IOMEM) || ARCH_OMAP2PLUS |
1932811f | 703 | select INPUT_MATRIXKMAP |
a17f7955 | 704 | help |
f77621cc | 705 | Say Y here if you want to use the OMAP4+ keypad. |
a17f7955 AA |
706 | |
707 | To compile this driver as a module, choose M here: the | |
708 | module will be called omap4-keypad. | |
709 | ||
bc95df78 RK |
710 | config KEYBOARD_SPEAR |
711 | tristate "ST SPEAR keyboard support" | |
712 | depends on PLAT_SPEAR | |
1932811f | 713 | select INPUT_MATRIXKMAP |
bc95df78 RK |
714 | help |
715 | Say Y here if you want to use the SPEAR keyboard. | |
716 | ||
717 | To compile this driver as a module, choose M here: the | |
ec4ba6c3 | 718 | module will be called spear-keyboard. |
bc95df78 | 719 | |
09c730a4 SI |
720 | config KEYBOARD_TC3589X |
721 | tristate "TC3589X Keypad support" | |
722 | depends on MFD_TC3589X | |
1932811f | 723 | select INPUT_MATRIXKMAP |
09c730a4 SI |
724 | help |
725 | Say Y here if you want to use the keypad controller on | |
726 | TC35892/3 I/O expander. | |
727 | ||
728 | To compile this driver as a module, choose M here: the | |
729 | module will be called tc3589x-keypad. | |
730 | ||
72d1f234 JL |
731 | config KEYBOARD_TM2_TOUCHKEY |
732 | tristate "TM2 touchkey support" | |
733 | depends on I2C | |
734 | depends on LEDS_CLASS | |
735 | help | |
736 | Say Y here to enable device driver for tm2-touchkey with | |
737 | LED control for the Exynos5433 TM2 board. | |
738 | ||
739 | To compile this driver as a module, choose M here. | |
740 | module will be called tm2-touchkey. | |
741 | ||
9d834068 DB |
742 | config KEYBOARD_TWL4030 |
743 | tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" | |
744 | depends on TWL4030_CORE | |
1932811f | 745 | select INPUT_MATRIXKMAP |
9d834068 DB |
746 | help |
747 | Say Y here if your board use the keypad controller on | |
748 | TWL4030 family chips. It's safe to say enable this | |
749 | even on boards that don't use the keypad controller. | |
750 | ||
751 | To compile this driver as a module, choose M here: the | |
752 | module will be called twl4030_keypad. | |
753 | ||
cb589529 DT |
754 | config KEYBOARD_XTKBD |
755 | tristate "XT keyboard" | |
756 | select SERIO | |
757 | help | |
758 | Say Y here if you want to use the old IBM PC/XT keyboard (or | |
759 | compatible) on your system. This is only possible with a | |
760 | parallel port keyboard adapter, you cannot connect it to the | |
761 | keyboard port on a PC that runs Linux. | |
762 | ||
763 | To compile this driver as a module, choose M here: the | |
764 | module will be called xtkbd. | |
e06003af | 765 | |
6af6dc2d SG |
766 | config KEYBOARD_CROS_EC |
767 | tristate "ChromeOS EC keyboard" | |
768 | select INPUT_MATRIXKMAP | |
45ceaf14 | 769 | select INPUT_VIVALDIFMAP |
47f11e0b | 770 | depends on CROS_EC |
6af6dc2d SG |
771 | help |
772 | Say Y here to enable the matrix keyboard used by ChromeOS devices | |
773 | and implemented on the ChromeOS EC. You must enable one bus option | |
413c9446 | 774 | (CROS_EC_I2C or CROS_EC_SPI) to use this. |
6af6dc2d SG |
775 | |
776 | To compile this driver as a module, choose M here: the | |
777 | module will be called cros_ec_keyb. | |
778 | ||
c77fd0a4 MR |
779 | config KEYBOARD_CAP11XX |
780 | tristate "Microchip CAP11XX based touch sensors" | |
128bb95d DM |
781 | depends on OF && I2C |
782 | select REGMAP_I2C | |
783 | help | |
c77fd0a4 | 784 | Say Y here to enable the CAP11XX touch sensor driver. |
128bb95d DM |
785 | |
786 | To compile this driver as a module, choose M here: the | |
c77fd0a4 | 787 | module will be called cap11xx. |
128bb95d | 788 | |
0c7e67a9 SB |
789 | config KEYBOARD_BCM |
790 | tristate "Broadcom keypad driver" | |
b2e3543b | 791 | depends on OF && HAVE_CLK && HAS_IOMEM |
0c7e67a9 SB |
792 | select INPUT_MATRIXKMAP |
793 | default ARCH_BCM_CYGNUS | |
794 | help | |
795 | Say Y here if you want to use Broadcom keypad. | |
796 | ||
797 | To compile this driver as a module, choose M here: the | |
798 | module will be called bcm-keypad. | |
799 | ||
f28af984 | 800 | config KEYBOARD_MT6779 |
801 | tristate "MediaTek Keypad Support" | |
802 | depends on ARCH_MEDIATEK || COMPILE_TEST | |
803 | select REGMAP_MMIO | |
804 | select INPUT_MATRIXKMAP | |
805 | help | |
806 | Say Y here if you want to use the keypad on MediaTek SoCs. | |
807 | If unsure, say N. | |
808 | ||
809 | To compile this driver as a module, choose M here: the | |
810 | module will be called mt6779-keypad. | |
811 | ||
3e9f0b3e CZ |
812 | config KEYBOARD_MTK_PMIC |
813 | tristate "MediaTek PMIC keys support" | |
d0789070 | 814 | depends on MFD_MT6397 || COMPILE_TEST |
3e9f0b3e CZ |
815 | help |
816 | Say Y here if you want to use the pmic keys (powerkey/homekey). | |
817 | ||
818 | To compile this driver as a module, choose M here: the | |
819 | module will be called pmic-keys. | |
820 | ||
fcc28e0b YO |
821 | config KEYBOARD_CYPRESS_SF |
822 | tristate "Cypress StreetFighter touchkey support" | |
823 | depends on I2C | |
824 | help | |
825 | Say Y here if you want to enable support for Cypress StreetFighter | |
826 | touchkeys. | |
827 | ||
828 | To compile this driver as a module, choose M here: the | |
829 | module will be called cypress-sf. | |
830 | ||
1da177e4 | 831 | endif |