GNU Linux-libre 5.4.200-gnu1
[releases.git] / drivers / input / keyboard / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Input core configuration
4 #
5 menuconfig INPUT_KEYBOARD
6         bool "Keyboards"
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
16 config KEYBOARD_ADC
17         tristate "ADC Ladder Buttons"
18         depends on IIO
19         select INPUT_POLLDEV
20         help
21           This driver implements support for buttons connected
22           to an ADC using a resistor ladder.
23
24           Say Y here if your device has such buttons connected to an ADC.  Your
25           board-specific setup logic must also provide a configuration data
26           for mapping voltages to buttons.
27
28           To compile this driver as a module, choose M here: the
29           module will be called adc_keys.
30
31 config KEYBOARD_ADP5520
32         tristate "Keypad Support for ADP5520 PMIC"
33         depends on PMIC_ADP5520
34         help
35           This option enables support for the keypad scan matrix
36           on Analog Devices ADP5520 PMICs.
37
38           To compile this driver as a module, choose M here: the module will
39           be called adp5520-keys.
40
41 config KEYBOARD_ADP5588
42         tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander"
43         depends on I2C
44         help
45           Say Y here if you want to use a ADP5588/87 attached to your
46           system I2C bus.
47
48           To compile this driver as a module, choose M here: the
49           module will be called adp5588-keys.
50
51 config KEYBOARD_ADP5589
52         tristate "ADP5585/ADP5589 I2C QWERTY Keypad and IO Expander"
53         depends on I2C
54         help
55           Say Y here if you want to use a ADP5585/ADP5589 attached to your
56           system I2C bus.
57
58           To compile this driver as a module, choose M here: the
59           module will be called adp5589-keys.
60
61 config KEYBOARD_AMIGA
62         tristate "Amiga keyboard"
63         depends on AMIGA
64         help
65           Say Y here if you are running Linux on any AMIGA and have a keyboard
66           attached.
67
68           To compile this driver as a module, choose M here: the
69           module will be called amikbd.
70
71 config KEYBOARD_APPLESPI
72         tristate "Apple SPI keyboard and trackpad"
73         depends on ACPI && EFI
74         depends on SPI
75         depends on X86 || COMPILE_TEST
76         depends on LEDS_CLASS
77         select CRC16
78         help
79           Say Y here if you are running Linux on any Apple MacBook8,1 or later,
80           or any MacBookPro13,* or MacBookPro14,*.
81
82           You will also need to enable appropriate SPI master controllers:
83           spi_pxa2xx_platform and spi_pxa2xx_pci for MacBook8,1, and
84           spi_pxa2xx_platform and intel_lpss_pci for the rest.
85
86           To compile this driver as a module, choose M here: the
87           module will be called applespi.
88
89 config KEYBOARD_ATARI
90         tristate "Atari keyboard"
91         depends on ATARI
92         select ATARI_KBD_CORE
93         help
94           Say Y here if you are running Linux on any Atari and have a keyboard
95           attached.
96
97           To compile this driver as a module, choose M here: the
98           module will be called atakbd.
99
100 config KEYBOARD_ATKBD
101         tristate "AT keyboard"
102         default y
103         select SERIO
104         select SERIO_LIBPS2
105         select SERIO_I8042 if ARCH_MIGHT_HAVE_PC_SERIO
106         select SERIO_GSCPS2 if GSC
107         help
108           Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
109           you'll need this, unless you have a different type keyboard (USB, ADB
110           or other). This also works for AT and PS/2 keyboards connected over a
111           PS/2 to serial converter.
112
113           If unsure, say Y.
114
115           To compile this driver as a module, choose M here: the
116           module will be called atkbd.
117
118 config KEYBOARD_ATKBD_HP_KEYCODES
119         bool "Use HP keyboard scancodes"
120         depends on PARISC && KEYBOARD_ATKBD
121         default y
122         help
123           Say Y here if you have a PA-RISC machine and want to use an AT or
124           PS/2 keyboard, and your keyboard uses keycodes that are specific to
125           PA-RISC keyboards.
126
127           Say N if you use a standard keyboard.
128
129 config KEYBOARD_ATKBD_RDI_KEYCODES
130         bool "Use PrecisionBook keyboard scancodes"
131         depends on KEYBOARD_ATKBD_HP_KEYCODES
132         default n
133         help
134           If you have an RDI PrecisionBook, say Y here if you want to use its
135           built-in keyboard (as opposed to an external keyboard).
136
137           The PrecisionBook has five keys that conflict with those used by most
138           AT and PS/2 keyboards. These are as follows:
139
140             PrecisionBook    Standard AT or PS/2
141
142             F1               F12
143             Left Ctrl        Left Alt
144             Caps Lock        Left Ctrl
145             Right Ctrl       Caps Lock
146             Left             102nd key (the key to the right of Left Shift)
147
148           If you say N here, and use the PrecisionBook keyboard, then each key
149           in the left-hand column will be interpreted as the corresponding key
150           in the right-hand column.
151
152           If you say Y here, and use an external keyboard, then each key in the
153           right-hand column will be interpreted as the key shown in the
154           left-hand column.
155
156 config KEYBOARD_QT1050
157         tristate "Microchip AT42QT1050 Touch Sensor Chip"
158         depends on I2C
159         select REGMAP_I2C
160         help
161           Say Y here if you want to use Microchip AT42QT1050 QTouch
162           Sensor chip as input device.
163
164           To compile this driver as a module, choose M here:
165           the module will be called qt1050
166
167 config KEYBOARD_QT1070
168        tristate "Atmel AT42QT1070 Touch Sensor Chip"
169        depends on I2C
170        help
171          Say Y here if you want to use Atmel AT42QT1070 QTouch
172          Sensor chip as input device.
173
174          To compile this driver as a module, choose M here:
175          the module will be called qt1070
176
177 config KEYBOARD_QT2160
178         tristate "Atmel AT42QT2160 Touch Sensor Chip"
179         depends on I2C
180         help
181           If you say yes here you get support for Atmel AT42QT2160 Touch
182           Sensor chip as a keyboard input.
183
184           This driver can also be built as a module. If so, the module
185           will be called qt2160.
186
187 config KEYBOARD_CLPS711X
188         tristate "CLPS711X Keypad support"
189         depends on OF_GPIO && (ARCH_CLPS711X || COMPILE_TEST)
190         select INPUT_MATRIXKMAP
191         select INPUT_POLLDEV
192         help
193           Say Y here to enable the matrix keypad on the Cirrus Logic
194           CLPS711X CPUs.
195
196           To compile this driver as a module, choose M here: the
197           module will be called clps711x-keypad.
198
199 config KEYBOARD_DLINK_DIR685
200         tristate "D-Link DIR-685 touchkeys support"
201         depends on I2C
202         default ARCH_GEMINI
203         help
204           If you say yes here you get support for the D-Link DIR-685
205           touchkeys.
206
207           To compile this driver as a module, choose M here: the
208           module will be called dlink-dir685-touchkeys.
209
210 config KEYBOARD_LKKBD
211         tristate "DECstation/VAXstation LK201/LK401 keyboard"
212         select SERIO
213         help
214           Say Y here if you want to use a LK201 or LK401 style serial
215           keyboard. This keyboard is also useable on PCs if you attach
216           it with the inputattach program. The connector pinout is
217           described within lkkbd.c.
218
219           To compile this driver as a module, choose M here: the
220           module will be called lkkbd.
221
222 config KEYBOARD_EP93XX
223         tristate "EP93xx Matrix Keypad support"
224         depends on ARCH_EP93XX || COMPILE_TEST
225         select INPUT_MATRIXKMAP
226         help
227           Say Y here to enable the matrix keypad on the Cirrus EP93XX.
228
229           To compile this driver as a module, choose M here: the
230           module will be called ep93xx_keypad.
231
232 config KEYBOARD_GPIO
233         tristate "GPIO Buttons"
234         depends on GPIOLIB || COMPILE_TEST
235         help
236           This driver implements support for buttons connected
237           to GPIO pins of various CPUs (and some other chips).
238
239           Say Y here if your device has buttons connected
240           directly to such GPIO pins.  Your board-specific
241           setup logic must also provide a platform device,
242           with configuration data saying which GPIOs are used.
243
244           To compile this driver as a module, choose M here: the
245           module will be called gpio_keys.
246
247 config KEYBOARD_GPIO_POLLED
248         tristate "Polled GPIO buttons"
249         depends on GPIOLIB
250         select INPUT_POLLDEV
251         help
252           This driver implements support for buttons connected
253           to GPIO pins that are not capable of generating interrupts.
254
255           Say Y here if your device has buttons connected
256           directly to such GPIO pins.  Your board-specific
257           setup logic must also provide a platform device,
258           with configuration data saying which GPIOs are used.
259
260           To compile this driver as a module, choose M here: the
261           module will be called gpio_keys_polled.
262
263 config KEYBOARD_TCA6416
264         tristate "TCA6416/TCA6408A Keypad Support"
265         depends on I2C
266         help
267           This driver implements basic keypad functionality
268           for keys connected through TCA6416/TCA6408A IO expanders.
269
270           Say Y here if your device has keys connected to
271           TCA6416/TCA6408A IO expander. Your board-specific setup logic
272           must also provide pin-mask details(of which TCA6416 pins
273           are used for keypad).
274
275           If enabled the entire TCA6416 device will be managed through
276           this driver.
277
278           To compile this driver as a module, choose M here: the
279           module will be called tca6416_keypad.
280
281 config KEYBOARD_TCA8418
282         tristate "TCA8418 Keypad Support"
283         depends on I2C
284         select INPUT_MATRIXKMAP
285         help
286           This driver implements basic keypad functionality
287           for keys connected through TCA8418 keypad decoder.
288
289           Say Y here if your device has keys connected to
290           TCA8418 keypad decoder.
291
292           If enabled the complete TCA8418 device will be managed through
293           this driver.
294
295           To compile this driver as a module, choose M here: the
296           module will be called tca8418_keypad.
297
298 config KEYBOARD_MATRIX
299         tristate "GPIO driven matrix keypad support"
300         depends on GPIOLIB || COMPILE_TEST
301         select INPUT_MATRIXKMAP
302         help
303           Enable support for GPIO driven matrix keypad.
304
305           To compile this driver as a module, choose M here: the
306           module will be called matrix_keypad.
307
308 config KEYBOARD_HIL_OLD
309         tristate "HP HIL keyboard support (simple driver)"
310         depends on GSC || HP300
311         default y
312         help
313           The "Human Interface Loop" is a older, 8-channel USB-like
314           controller used in several Hewlett Packard models. This driver
315           was adapted from the one written for m68k/hp300, and implements
316           support for a keyboard attached to the HIL port, but not for
317           any other types of HIL input devices like mice or tablets.
318           However, it has been thoroughly tested and is stable.
319
320           If you want full HIL support including support for multiple
321           keyboards, mice, and tablets, you have to enable the
322           "HP System Device Controller i8042 Support" in the input/serio
323           submenu.
324
325 config KEYBOARD_HIL
326         tristate "HP HIL keyboard/pointer support"
327         depends on GSC || HP300
328         default y
329         select HP_SDC
330         select HIL_MLC
331         select SERIO
332         help
333           The "Human Interface Loop" is a older, 8-channel USB-like
334           controller used in several Hewlett Packard models.
335           This driver implements support for HIL-keyboards and pointing
336           devices (mice, tablets, touchscreens) attached
337           to your machine, so normally you should say Y here.
338
339 config KEYBOARD_HP6XX
340         tristate "HP Jornada 6xx keyboard"
341         depends on SH_HP6XX
342         select INPUT_POLLDEV
343         help
344           Say Y here if you have a HP Jornada 620/660/680/690 and want to
345           support the built-in keyboard.
346
347           To compile this driver as a module, choose M here: the
348           module will be called jornada680_kbd.
349
350 config KEYBOARD_HP7XX
351         tristate "HP Jornada 7xx keyboard"
352         depends on SA1100_JORNADA720_SSP && SA1100_SSP
353         help
354           Say Y here if you have a HP Jornada 710/720/728 and want to
355           support the built-in keyboard.
356
357           To compile this driver as a module, choose M here: the
358           module will be called jornada720_kbd.
359
360 config KEYBOARD_LM8323
361         tristate "LM8323 keypad chip"
362         depends on I2C
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
371 config KEYBOARD_LM8333
372         tristate "LM8333 keypad chip"
373         depends on I2C
374         select INPUT_MATRIXKMAP
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
382 config KEYBOARD_LOCOMO
383         tristate "LoCoMo Keyboard Support"
384         depends on SHARP_LOCOMO
385         help
386           Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA
387
388           To compile this driver as a module, choose M here: the
389           module will be called locomokbd.
390
391 config KEYBOARD_LPC32XX
392         tristate "LPC32XX matrix key scanner support"
393         depends on ARCH_LPC32XX && OF
394         select INPUT_MATRIXKMAP
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
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
412 config KEYBOARD_MAX7359
413         tristate "Maxim MAX7359 Key Switch Controller"
414         select INPUT_MATRIXKMAP
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
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
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
448 config KEYBOARD_SNVS_PWRKEY
449         tristate "IMX SNVS Power Key Driver"
450         depends on ARCH_MXC || COMPILE_TEST
451         depends on OF
452         help
453           This is the snvs powerkey driver for the Freescale i.MX application
454           processors that are newer than i.MX6 SX.
455
456           To compile this driver as a module, choose M here; the
457           module will be called snvs_pwrkey.
458
459 config KEYBOARD_IMX
460         tristate "IMX keypad support"
461         depends on ARCH_MXC
462         select INPUT_MATRIXKMAP
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
469 config KEYBOARD_NEWTON
470         tristate "Newton keyboard"
471         select SERIO
472         help
473           Say Y here if you have a Newton keyboard on a serial port.
474
475           To compile this driver as a module, choose M here: the
476           module will be called newtonkbd.
477
478 config KEYBOARD_NOMADIK
479         tristate "ST-Ericsson Nomadik SKE keyboard"
480         depends on (ARCH_NOMADIK || ARCH_U8500)
481         select INPUT_MATRIXKMAP
482         help
483           Say Y here if you want to use a keypad provided on the SKE controller
484           used on the Ux500 and Nomadik platforms
485
486           To compile this driver as a module, choose M here: the
487           module will be called nmk-ske-keypad.
488
489 config KEYBOARD_NSPIRE
490         tristate "TI-NSPIRE built-in keyboard"
491         depends on ARCH_NSPIRE && OF
492         select INPUT_MATRIXKMAP
493         help
494           Say Y here if you want to use the built-in keypad on TI-NSPIRE.
495
496           To compile this driver as a module, choose M here: the
497           module will be called nspire-keypad.
498
499 config KEYBOARD_TEGRA
500         tristate "NVIDIA Tegra internal matrix keyboard controller support"
501         depends on ARCH_TEGRA && OF
502         select INPUT_MATRIXKMAP
503         help
504           Say Y here if you want to use a matrix keyboard connected directly
505           to the internal keyboard controller on Tegra SoCs.
506
507           To compile this driver as a module, choose M here: the
508           module will be called tegra-kbc.
509
510 config KEYBOARD_OPENCORES
511         tristate "OpenCores Keyboard Controller"
512         depends on HAS_IOMEM
513         help
514           Say Y here if you want to use the OpenCores Keyboard Controller
515           http://www.opencores.org/project,keyboardcontroller
516
517           To compile this driver as a module, choose M here; the
518           module will be called opencores-kbd.
519
520 config KEYBOARD_PXA27x
521         tristate "PXA27x/PXA3xx keypad support"
522         depends on PXA27x || PXA3xx || ARCH_MMP
523         select INPUT_MATRIXKMAP
524         help
525           Enable support for PXA27x/PXA3xx keypad controller.
526
527           To compile this driver as a module, choose M here: the
528           module will be called pxa27x_keypad.
529
530 config KEYBOARD_PXA930_ROTARY
531         tristate "PXA930/PXA935 Enhanced Rotary Controller Support"
532         depends on CPU_PXA930 || CPU_PXA935
533         help
534           Enable support for PXA930/PXA935 Enhanced Rotary Controller.
535
536           To compile this driver as a module, choose M here: the
537           module will be called pxa930_rotary.
538
539 config KEYBOARD_PMIC8XXX
540         tristate "Qualcomm PMIC8XXX keypad support"
541         depends on MFD_PM8XXX
542         select INPUT_MATRIXKMAP
543         help
544           Say Y here if you want to enable the driver for the PMIC8XXX
545           keypad provided as a reference design from Qualcomm. This is intended
546           to support upto 18x8 matrix based keypad design.
547
548           To compile this driver as a module, choose M here: the module will
549           be called pmic8xxx-keypad.
550
551 config KEYBOARD_SAMSUNG
552         tristate "Samsung keypad support"
553         depends on HAVE_CLK
554         select INPUT_MATRIXKMAP
555         help
556           Say Y here if you want to use the keypad on your Samsung mobile
557           device.
558
559           To compile this driver as a module, choose M here: the
560           module will be called samsung-keypad.
561
562 config KEYBOARD_GOLDFISH_EVENTS
563         depends on GOLDFISH || COMPILE_TEST
564         tristate "Generic Input Event device for Goldfish"
565         help
566           Say Y here to get an input event device for the Goldfish virtual
567           device emulator.
568
569           To compile this driver as a module, choose M here: the
570           module will be called goldfish-events.
571
572 config KEYBOARD_STOWAWAY
573         tristate "Stowaway keyboard"
574         select SERIO
575         help
576           Say Y here if you have a Stowaway keyboard on a serial port.
577           Stowaway compatible keyboards like Dicota Input-PDA keyboard
578           are also supported by this driver.
579
580           To compile this driver as a module, choose M here: the
581           module will be called stowaway.
582
583 config KEYBOARD_ST_KEYSCAN
584         tristate "STMicroelectronics keyscan support"
585         depends on ARCH_STI || COMPILE_TEST
586         select INPUT_MATRIXKMAP
587         help
588           Say Y here if you want to use a keypad attached to the keyscan block
589           on some STMicroelectronics SoC devices.
590
591           To compile this driver as a module, choose M here: the
592           module will be called st-keyscan.
593
594 config KEYBOARD_SUNKBD
595         tristate "Sun Type 4 and Type 5 keyboard"
596         select SERIO
597         help
598           Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
599           connected either to the Sun keyboard connector or to an serial
600           (RS-232) port via a simple adapter.
601
602           To compile this driver as a module, choose M here: the
603           module will be called sunkbd.
604
605 config KEYBOARD_SH_KEYSC
606         tristate "SuperH KEYSC keypad support"
607         depends on ARCH_SHMOBILE || COMPILE_TEST
608         help
609           Say Y here if you want to use a keypad attached to the KEYSC block
610           on SuperH processors such as sh7722 and sh7343.
611
612           To compile this driver as a module, choose M here: the
613           module will be called sh_keysc.
614
615 config KEYBOARD_STMPE
616         tristate "STMPE keypad support"
617         depends on MFD_STMPE
618         depends on OF
619         select INPUT_MATRIXKMAP
620         help
621           Say Y here if you want to use the keypad controller on STMPE I/O
622           expanders.
623
624           To compile this driver as a module, choose M here: the module will be
625           called stmpe-keypad.
626
627 config KEYBOARD_SUN4I_LRADC
628         tristate "Allwinner sun4i low res adc attached tablet keys support"
629         depends on ARCH_SUNXI
630         help
631           This selects support for the Allwinner low res adc attached tablet
632           keys found on Allwinner sunxi SoCs.
633
634           To compile this driver as a module, choose M here: the
635           module will be called sun4i-lradc-keys.
636
637 config KEYBOARD_DAVINCI
638         tristate "TI DaVinci Key Scan"
639         depends on ARCH_DAVINCI_DM365
640         help
641           Say Y to enable keypad module support for the TI DaVinci
642           platforms (DM365).
643
644           To compile this driver as a module, choose M here: the
645           module will be called davinci_keyscan.
646
647 config KEYBOARD_IPAQ_MICRO
648         tristate "Buttons on Micro SoC (iPaq h3100,h3600,h3700)"
649         depends on MFD_IPAQ_MICRO
650         help
651           Say Y to enable support for the buttons attached to
652           Micro peripheral controller on iPAQ h3100/h3600/h3700
653
654           To compile this driver as a module, choose M here: the
655           module will be called ipaq-micro-keys.
656
657 config KEYBOARD_OMAP
658         tristate "TI OMAP keypad support"
659         depends on ARCH_OMAP1
660         select INPUT_MATRIXKMAP
661         help
662           Say Y here if you want to use the OMAP keypad.
663
664           To compile this driver as a module, choose M here: the
665           module will be called omap-keypad.
666
667 config KEYBOARD_OMAP4
668         tristate "TI OMAP4+ keypad support"
669         depends on OF || ARCH_OMAP2PLUS
670         select INPUT_MATRIXKMAP
671         help
672           Say Y here if you want to use the OMAP4+ keypad.
673
674           To compile this driver as a module, choose M here: the
675           module will be called omap4-keypad.
676
677 config KEYBOARD_SPEAR
678         tristate "ST SPEAR keyboard support"
679         depends on PLAT_SPEAR
680         select INPUT_MATRIXKMAP
681         help
682           Say Y here if you want to use the SPEAR keyboard.
683
684           To compile this driver as a module, choose M here: the
685           module will be called spear-keboard.
686
687 config KEYBOARD_TC3589X
688         tristate "TC3589X Keypad support"
689         depends on MFD_TC3589X
690         select INPUT_MATRIXKMAP
691         help
692           Say Y here if you want to use the keypad controller on
693           TC35892/3 I/O expander.
694
695           To compile this driver as a module, choose M here: the
696           module will be called tc3589x-keypad.
697
698 config KEYBOARD_TM2_TOUCHKEY
699         tristate "TM2 touchkey support"
700         depends on I2C
701         depends on LEDS_CLASS
702         help
703           Say Y here to enable device driver for tm2-touchkey with
704           LED control for the Exynos5433 TM2 board.
705
706           To compile this driver as a module, choose M here.
707           module will be called tm2-touchkey.
708
709 config KEYBOARD_TWL4030
710         tristate "TI TWL4030/TWL5030/TPS659x0 keypad support"
711         depends on TWL4030_CORE
712         select INPUT_MATRIXKMAP
713         help
714           Say Y here if your board use the keypad controller on
715           TWL4030 family chips.  It's safe to say enable this
716           even on boards that don't use the keypad controller.
717
718           To compile this driver as a module, choose M here: the
719           module will be called twl4030_keypad.
720
721 config KEYBOARD_XTKBD
722         tristate "XT keyboard"
723         select SERIO
724         help
725           Say Y here if you want to use the old IBM PC/XT keyboard (or
726           compatible) on your system. This is only possible with a
727           parallel port keyboard adapter, you cannot connect it to the
728           keyboard port on a PC that runs Linux.
729
730           To compile this driver as a module, choose M here: the
731           module will be called xtkbd.
732
733 config KEYBOARD_CROS_EC
734         tristate "ChromeOS EC keyboard"
735         select INPUT_MATRIXKMAP
736         depends on CROS_EC
737         help
738           Say Y here to enable the matrix keyboard used by ChromeOS devices
739           and implemented on the ChromeOS EC. You must enable one bus option
740           (CROS_EC_I2C or CROS_EC_SPI) to use this.
741
742           To compile this driver as a module, choose M here: the
743           module will be called cros_ec_keyb.
744
745 config KEYBOARD_CAP11XX
746         tristate "Microchip CAP11XX based touch sensors"
747         depends on OF && I2C
748         select REGMAP_I2C
749         help
750           Say Y here to enable the CAP11XX touch sensor driver.
751
752           To compile this driver as a module, choose M here: the
753           module will be called cap11xx.
754
755 config KEYBOARD_BCM
756         tristate "Broadcom keypad driver"
757         depends on OF && HAVE_CLK
758         select INPUT_MATRIXKMAP
759         default ARCH_BCM_CYGNUS
760         help
761           Say Y here if you want to use Broadcom keypad.
762
763           To compile this driver as a module, choose M here: the
764           module will be called bcm-keypad.
765
766 config KEYBOARD_MTK_PMIC
767         tristate "MediaTek PMIC keys support"
768         depends on MFD_MT6397
769         help
770           Say Y here if you want to use the pmic keys (powerkey/homekey).
771
772           To compile this driver as a module, choose M here: the
773           module will be called pmic-keys.
774
775 endif