Linux 6.9-rc1
[linux-2.6-microblaze.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         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
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
40 config KEYBOARD_ADP5588
41         tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander"
42         depends on I2C
43         select GPIOLIB
44         select GPIOLIB_IRQCHIP
45         select INPUT_MATRIXKMAP
46         help
47           Say Y here if you want to use a ADP5588/87 attached to your
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
53 config KEYBOARD_ADP5589
54         tristate "ADP5585/ADP5589 I2C QWERTY Keypad and IO Expander"
55         depends on I2C
56         help
57           Say Y here if you want to use a ADP5585/ADP5589 attached to your
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
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
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
78         depends on LEDS_CLASS
79         select CRC16
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
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
102 config KEYBOARD_ATKBD
103         tristate "AT keyboard"
104         default y
105         select SERIO
106         select SERIO_LIBPS2
107         select SERIO_I8042 if ARCH_MIGHT_HAVE_PC_SERIO
108         select SERIO_GSCPS2 if GSC
109         select INPUT_VIVALDIFMAP
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
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
170 config KEYBOARD_QT1070
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
179
180 config KEYBOARD_QT2160
181         tristate "Atmel AT42QT2160 Touch Sensor Chip"
182         depends on I2C
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
190 config KEYBOARD_CLPS711X
191         tristate "CLPS711X Keypad support"
192         depends on ARCH_CLPS711X || COMPILE_TEST
193         select INPUT_MATRIXKMAP
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
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
212 config KEYBOARD_LKKBD
213         tristate "DECstation/VAXstation LK201/LK401 keyboard"
214         select SERIO
215         help
216           Say Y here if you want to use a LK201 or LK401 style serial
217           keyboard. This keyboard is also usable on PCs if you attach
218           it with the inputattach program. The connector pinout is
219           described within lkkbd.c.
220
221           To compile this driver as a module, choose M here: the
222           module will be called lkkbd.
223
224 config KEYBOARD_EP93XX
225         tristate "EP93xx Matrix Keypad support"
226         depends on ARCH_EP93XX || COMPILE_TEST
227         select INPUT_MATRIXKMAP
228         help
229           Say Y here to enable the matrix keypad on the Cirrus EP93XX.
230
231           To compile this driver as a module, choose M here: the
232           module will be called ep93xx_keypad.
233
234 config KEYBOARD_GPIO
235         tristate "GPIO Buttons"
236         depends on GPIOLIB || COMPILE_TEST
237         help
238           This driver implements support for buttons connected
239           to GPIO pins of various CPUs (and some other chips).
240
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.
245
246           To compile this driver as a module, choose M here: the
247           module will be called gpio_keys.
248
249 config KEYBOARD_GPIO_POLLED
250         tristate "Polled GPIO buttons"
251         depends on GPIOLIB
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
264 config KEYBOARD_TCA6416
265         tristate "TCA6416/TCA6408A Keypad Support"
266         depends on I2C
267         help
268           This driver implements basic keypad functionality
269           for keys connected through TCA6416/TCA6408A IO expanders.
270
271           Say Y here if your device has keys connected to
272           TCA6416/TCA6408A IO expander. Your board-specific setup logic
273           must also provide pin-mask details(of which TCA6416 pins
274           are used for keypad).
275
276           If enabled the entire TCA6416 device will be managed through
277           this driver.
278
279           To compile this driver as a module, choose M here: the
280           module will be called tca6416_keypad.
281
282 config KEYBOARD_TCA8418
283         tristate "TCA8418 Keypad Support"
284         depends on I2C
285         select INPUT_MATRIXKMAP
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
299 config KEYBOARD_MATRIX
300         tristate "GPIO driven matrix keypad support"
301         depends on GPIOLIB || COMPILE_TEST
302         select INPUT_MATRIXKMAP
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.
308
309 config KEYBOARD_HIL_OLD
310         tristate "HP HIL keyboard support (simple driver)"
311         depends on GSC || HP300
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
322           keyboards, mice, and tablets, you have to enable the
323           "HP System Device Controller i8042 Support" in the input/serio
324           submenu.
325
326 config KEYBOARD_HIL
327         tristate "HP HIL keyboard/pointer support"
328         depends on GSC || HP300
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.
336           This driver implements support for HIL-keyboards and pointing
337           devices (mice, tablets, touchscreens) attached
338           to your machine, so normally you should say Y here.
339
340 config KEYBOARD_HP6XX
341         tristate "HP Jornada 6xx keyboard"
342         depends on SH_HP6XX
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) || COMPILE_TEST
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 && HAS_IOMEM)
451         depends on OF
452         help
453           This is the snvs powerkey driver for the Freescale i.MX application
454           processors.
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 || COMPILE_TEST
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_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
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.
487
488 config KEYBOARD_NOMADIK
489         tristate "ST-Ericsson Nomadik SKE keyboard"
490         depends on (ARCH_NOMADIK || ARCH_U8500 || COMPILE_TEST)
491         select INPUT_MATRIXKMAP
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
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
509 config KEYBOARD_TEGRA
510         tristate "NVIDIA Tegra internal matrix keyboard controller support"
511         depends on (ARCH_TEGRA && OF) || COMPILE_TEST
512         select INPUT_MATRIXKMAP
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
520 config KEYBOARD_OPENCORES
521         tristate "OpenCores Keyboard Controller"
522         depends on HAS_IOMEM
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
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
543 config KEYBOARD_PXA27x
544         tristate "PXA27x/PXA3xx keypad support"
545         depends on PXA27x || PXA3xx || ARCH_MMP || COMPILE_TEST
546         select INPUT_MATRIXKMAP
547         help
548           Enable support for PXA27x/PXA3xx keypad controller.
549
550           To compile this driver as a module, choose M here: the
551           module will be called pxa27x_keypad.
552
553 config KEYBOARD_PMIC8XXX
554         tristate "Qualcomm PMIC8XXX keypad support"
555         depends on MFD_PM8XXX
556         select INPUT_MATRIXKMAP
557         help
558           Say Y here if you want to enable the driver for the PMIC8XXX
559           keypad provided as a reference design from Qualcomm. This is intended
560           to support up to 18x8 matrix-based keypad design.
561
562           To compile this driver as a module, choose M here: the module will
563           be called pmic8xxx-keypad.
564
565 config KEYBOARD_SAMSUNG
566         tristate "Samsung keypad support"
567         depends on HAS_IOMEM && HAVE_CLK
568         select INPUT_MATRIXKMAP
569         help
570           Say Y here if you want to use the keypad on your Samsung mobile
571           device.
572
573           To compile this driver as a module, choose M here: the
574           module will be called samsung-keypad.
575
576 config KEYBOARD_GOLDFISH_EVENTS
577         depends on GOLDFISH || COMPILE_TEST
578         tristate "Generic Input Event device for Goldfish"
579         help
580           Say Y here to get an input event device for the Goldfish virtual
581           device emulator.
582
583           To compile this driver as a module, choose M here: the
584           module will be called goldfish-events.
585
586 config KEYBOARD_STOWAWAY
587         tristate "Stowaway keyboard"
588         select SERIO
589         help
590           Say Y here if you have a Stowaway keyboard on a serial port.
591           Stowaway compatible keyboards like Dicota Input-PDA keyboard
592           are also supported by this driver.
593
594           To compile this driver as a module, choose M here: the
595           module will be called stowaway.
596
597 config KEYBOARD_ST_KEYSCAN
598         tristate "STMicroelectronics keyscan support"
599         depends on ARCH_STI || COMPILE_TEST
600         select INPUT_MATRIXKMAP
601         help
602           Say Y here if you want to use a keypad attached to the keyscan block
603           on some STMicroelectronics SoC devices.
604
605           To compile this driver as a module, choose M here: the
606           module will be called st-keyscan.
607
608 config KEYBOARD_SUNKBD
609         tristate "Sun Type 4 and Type 5 keyboard"
610         select SERIO
611         help
612           Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
613           connected either to the Sun keyboard connector or to an serial
614           (RS-232) port via a simple adapter.
615
616           To compile this driver as a module, choose M here: the
617           module will be called sunkbd.
618
619 config KEYBOARD_SH_KEYSC
620         tristate "SuperH KEYSC keypad support"
621         depends on ARCH_SHMOBILE || COMPILE_TEST
622         help
623           Say Y here if you want to use a keypad attached to the KEYSC block
624           on SuperH processors such as sh7722 and sh7343.
625
626           To compile this driver as a module, choose M here: the
627           module will be called sh_keysc.
628
629 config KEYBOARD_STMPE
630         tristate "STMPE keypad support"
631         depends on MFD_STMPE
632         depends on OF
633         select INPUT_MATRIXKMAP
634         help
635           Say Y here if you want to use the keypad controller on STMPE I/O
636           expanders.
637
638           To compile this driver as a module, choose M here: the module will be
639           called stmpe-keypad.
640
641 config KEYBOARD_SUN4I_LRADC
642         tristate "Allwinner sun4i low res adc attached tablet keys support"
643         depends on ARCH_SUNXI
644         help
645           This selects support for the Allwinner low res adc attached tablet
646           keys found on Allwinner sunxi SoCs.
647
648           To compile this driver as a module, choose M here: the
649           module will be called sun4i-lradc-keys.
650
651 config KEYBOARD_IPAQ_MICRO
652         tristate "Buttons on Micro SoC (iPaq h3100,h3600,h3700)"
653         depends on MFD_IPAQ_MICRO
654         help
655           Say Y to enable support for the buttons attached to
656           Micro peripheral controller on iPAQ h3100/h3600/h3700
657
658           To compile this driver as a module, choose M here: the
659           module will be called ipaq-micro-keys.
660
661 config KEYBOARD_IQS62X
662         tristate "Azoteq IQS620A/621/622/624/625 keys and switches"
663         depends on MFD_IQS62X
664         help
665           Say Y here to enable key and switch support for the Azoteq IQS620A,
666           IQS621, IQS622, IQS624 and IQS625 multi-function sensors.
667
668           To compile this driver as a module, choose M here: the module will
669           be called iqs62x-keys.
670
671 config KEYBOARD_OMAP
672         tristate "TI OMAP keypad support"
673         depends on ARCH_OMAP1
674         select INPUT_MATRIXKMAP
675         help
676           Say Y here if you want to use the OMAP keypad.
677
678           To compile this driver as a module, choose M here: the
679           module will be called omap-keypad.
680
681 config KEYBOARD_OMAP4
682         tristate "TI OMAP4+ keypad support"
683         depends on (OF && HAS_IOMEM) || ARCH_OMAP2PLUS
684         select INPUT_MATRIXKMAP
685         help
686           Say Y here if you want to use the OMAP4+ keypad.
687
688           To compile this driver as a module, choose M here: the
689           module will be called omap4-keypad.
690
691 config KEYBOARD_SPEAR
692         tristate "ST SPEAR keyboard support"
693         depends on PLAT_SPEAR || COMPILE_TEST
694         select INPUT_MATRIXKMAP
695         help
696           Say Y here if you want to use the SPEAR keyboard.
697
698           To compile this driver as a module, choose M here: the
699           module will be called spear-keyboard.
700
701 config KEYBOARD_TC3589X
702         tristate "TC3589X Keypad support"
703         depends on MFD_TC3589X
704         select INPUT_MATRIXKMAP
705         help
706           Say Y here if you want to use the keypad controller on
707           TC35892/3 I/O expander.
708
709           To compile this driver as a module, choose M here: the
710           module will be called tc3589x-keypad.
711
712 config KEYBOARD_TM2_TOUCHKEY
713         tristate "TM2 touchkey support"
714         depends on I2C
715         depends on LEDS_CLASS
716         help
717           Say Y here to enable device driver for tm2-touchkey with
718           LED control for the Exynos5433 TM2 board.
719
720           To compile this driver as a module, choose M here.
721           module will be called tm2-touchkey.
722
723 config KEYBOARD_TWL4030
724         tristate "TI TWL4030/TWL5030/TPS659x0 keypad support"
725         depends on TWL4030_CORE
726         select INPUT_MATRIXKMAP
727         help
728           Say Y here if your board use the keypad controller on
729           TWL4030 family chips.  It's safe to say enable this
730           even on boards that don't use the keypad controller.
731
732           To compile this driver as a module, choose M here: the
733           module will be called twl4030_keypad.
734
735 config KEYBOARD_XTKBD
736         tristate "XT keyboard"
737         select SERIO
738         help
739           Say Y here if you want to use the old IBM PC/XT keyboard (or
740           compatible) on your system. This is only possible with a
741           parallel port keyboard adapter, you cannot connect it to the
742           keyboard port on a PC that runs Linux.
743
744           To compile this driver as a module, choose M here: the
745           module will be called xtkbd.
746
747 config KEYBOARD_CROS_EC
748         tristate "ChromeOS EC keyboard"
749         select INPUT_MATRIXKMAP
750         select INPUT_VIVALDIFMAP
751         depends on CROS_EC
752         help
753           Say Y here to enable the matrix keyboard used by ChromeOS devices
754           and implemented on the ChromeOS EC. You must enable one bus option
755           (CROS_EC_I2C or CROS_EC_SPI) to use this.
756
757           To compile this driver as a module, choose M here: the
758           module will be called cros_ec_keyb.
759
760 config KEYBOARD_CAP11XX
761         tristate "Microchip CAP11XX based touch sensors"
762         depends on OF && I2C
763         select REGMAP_I2C
764         help
765           Say Y here to enable the CAP11XX touch sensor driver.
766
767           To compile this driver as a module, choose M here: the
768           module will be called cap11xx.
769
770 config KEYBOARD_BCM
771         tristate "Broadcom keypad driver"
772         depends on OF && HAVE_CLK && HAS_IOMEM
773         select INPUT_MATRIXKMAP
774         default ARCH_BCM_CYGNUS
775         help
776           Say Y here if you want to use Broadcom keypad.
777
778           To compile this driver as a module, choose M here: the
779           module will be called bcm-keypad.
780
781 config KEYBOARD_MT6779
782         tristate "MediaTek Keypad Support"
783         depends on ARCH_MEDIATEK || COMPILE_TEST
784         select REGMAP_MMIO
785         select INPUT_MATRIXKMAP
786         help
787           Say Y here if you want to use the keypad on MediaTek SoCs.
788           If unsure, say N.
789
790           To compile this driver as a module, choose M here: the
791           module will be called mt6779-keypad.
792
793 config KEYBOARD_MTK_PMIC
794         tristate "MediaTek PMIC keys support"
795         depends on MFD_MT6397 || COMPILE_TEST
796         help
797           Say Y here if you want to use the pmic keys (powerkey/homekey).
798
799           To compile this driver as a module, choose M here: the
800           module will be called pmic-keys.
801
802 config KEYBOARD_CYPRESS_SF
803         tristate "Cypress StreetFighter touchkey support"
804         depends on I2C
805         help
806           Say Y here if you want to enable support for Cypress StreetFighter
807           touchkeys.
808
809           To compile this driver as a module, choose M here: the
810           module will be called cypress-sf.
811
812 endif