Merge tag 'mips_fixes_5.3_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips...
[sfrench/cifs-2.6.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 ATARI_KBD_CORE
72         bool
73
74 config KEYBOARD_APPLESPI
75         tristate "Apple SPI keyboard and trackpad"
76         depends on ACPI && EFI
77         depends on SPI
78         depends on X86 || COMPILE_TEST
79         help
80           Say Y here if you are running Linux on any Apple MacBook8,1 or later,
81           or any MacBookPro13,* or MacBookPro14,*.
82
83           You will also need to enable appropriate SPI master controllers:
84           spi_pxa2xx_platform and spi_pxa2xx_pci for MacBook8,1, and
85           spi_pxa2xx_platform and intel_lpss_pci for the rest.
86
87           To compile this driver as a module, choose M here: the
88           module will be called applespi.
89
90 config KEYBOARD_ATARI
91         tristate "Atari keyboard"
92         depends on ATARI
93         select ATARI_KBD_CORE
94         help
95           Say Y here if you are running Linux on any Atari and have a keyboard
96           attached.
97
98           To compile this driver as a module, choose M here: the
99           module will be called atakbd.
100
101 config KEYBOARD_ATKBD
102         tristate "AT keyboard"
103         default y
104         select SERIO
105         select SERIO_LIBPS2
106         select SERIO_I8042 if ARCH_MIGHT_HAVE_PC_SERIO
107         select SERIO_GSCPS2 if GSC
108         help
109           Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
110           you'll need this, unless you have a different type keyboard (USB, ADB
111           or other). This also works for AT and PS/2 keyboards connected over a
112           PS/2 to serial converter.
113
114           If unsure, say Y.
115
116           To compile this driver as a module, choose M here: the
117           module will be called atkbd.
118
119 config KEYBOARD_ATKBD_HP_KEYCODES
120         bool "Use HP keyboard scancodes"
121         depends on PARISC && KEYBOARD_ATKBD
122         default y
123         help
124           Say Y here if you have a PA-RISC machine and want to use an AT or
125           PS/2 keyboard, and your keyboard uses keycodes that are specific to
126           PA-RISC keyboards.
127
128           Say N if you use a standard keyboard.
129
130 config KEYBOARD_ATKBD_RDI_KEYCODES
131         bool "Use PrecisionBook keyboard scancodes"
132         depends on KEYBOARD_ATKBD_HP_KEYCODES
133         default n
134         help
135           If you have an RDI PrecisionBook, say Y here if you want to use its
136           built-in keyboard (as opposed to an external keyboard).
137
138           The PrecisionBook has five keys that conflict with those used by most
139           AT and PS/2 keyboards. These are as follows:
140
141             PrecisionBook    Standard AT or PS/2
142
143             F1               F12
144             Left Ctrl        Left Alt
145             Caps Lock        Left Ctrl
146             Right Ctrl       Caps Lock
147             Left             102nd key (the key to the right of Left Shift)
148
149           If you say N here, and use the PrecisionBook keyboard, then each key
150           in the left-hand column will be interpreted as the corresponding key
151           in the right-hand column.
152
153           If you say Y here, and use an external keyboard, then each key in the
154           right-hand column will be interpreted as the key shown in the
155           left-hand column.
156
157 config KEYBOARD_QT1050
158         tristate "Microchip AT42QT1050 Touch Sensor Chip"
159         depends on I2C
160         select REGMAP_I2C
161         help
162           Say Y here if you want to use Microchip AT42QT1050 QTouch
163           Sensor chip as input device.
164
165           To compile this driver as a module, choose M here:
166           the module will be called qt1050
167
168 config KEYBOARD_QT1070
169        tristate "Atmel AT42QT1070 Touch Sensor Chip"
170        depends on I2C
171        help
172          Say Y here if you want to use Atmel AT42QT1070 QTouch
173          Sensor chip as input device.
174
175          To compile this driver as a module, choose M here:
176          the module will be called qt1070
177
178 config KEYBOARD_QT2160
179         tristate "Atmel AT42QT2160 Touch Sensor Chip"
180         depends on I2C
181         help
182           If you say yes here you get support for Atmel AT42QT2160 Touch
183           Sensor chip as a keyboard input.
184
185           This driver can also be built as a module. If so, the module
186           will be called qt2160.
187
188 config KEYBOARD_CLPS711X
189         tristate "CLPS711X Keypad support"
190         depends on OF_GPIO && (ARCH_CLPS711X || COMPILE_TEST)
191         select INPUT_MATRIXKMAP
192         select INPUT_POLLDEV
193         help
194           Say Y here to enable the matrix keypad on the Cirrus Logic
195           CLPS711X CPUs.
196
197           To compile this driver as a module, choose M here: the
198           module will be called clps711x-keypad.
199
200 config KEYBOARD_DLINK_DIR685
201         tristate "D-Link DIR-685 touchkeys support"
202         depends on I2C
203         default ARCH_GEMINI
204         help
205           If you say yes here you get support for the D-Link DIR-685
206           touchkeys.
207
208           To compile this driver as a module, choose M here: the
209           module will be called dlink-dir685-touchkeys.
210
211 config KEYBOARD_LKKBD
212         tristate "DECstation/VAXstation LK201/LK401 keyboard"
213         select SERIO
214         help
215           Say Y here if you want to use a LK201 or LK401 style serial
216           keyboard. This keyboard is also useable on PCs if you attach
217           it with the inputattach program. The connector pinout is
218           described within lkkbd.c.
219
220           To compile this driver as a module, choose M here: the
221           module will be called lkkbd.
222
223 config KEYBOARD_EP93XX
224         tristate "EP93xx Matrix Keypad support"
225         depends on ARCH_EP93XX || COMPILE_TEST
226         select INPUT_MATRIXKMAP
227         help
228           Say Y here to enable the matrix keypad on the Cirrus EP93XX.
229
230           To compile this driver as a module, choose M here: the
231           module will be called ep93xx_keypad.
232
233 config KEYBOARD_GPIO
234         tristate "GPIO Buttons"
235         depends on GPIOLIB || COMPILE_TEST
236         help
237           This driver implements support for buttons connected
238           to GPIO pins of various CPUs (and some other chips).
239
240           Say Y here if your device has buttons connected
241           directly to such GPIO pins.  Your board-specific
242           setup logic must also provide a platform device,
243           with configuration data saying which GPIOs are used.
244
245           To compile this driver as a module, choose M here: the
246           module will be called gpio_keys.
247
248 config KEYBOARD_GPIO_POLLED
249         tristate "Polled GPIO buttons"
250         depends on GPIOLIB
251         select INPUT_POLLDEV
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         select INPUT_POLLDEV
344         help
345           Say Y here if you have a HP Jornada 620/660/680/690 and want to
346           support the built-in keyboard.
347
348           To compile this driver as a module, choose M here: the
349           module will be called jornada680_kbd.
350
351 config KEYBOARD_HP7XX
352         tristate "HP Jornada 7xx keyboard"
353         depends on SA1100_JORNADA720_SSP && SA1100_SSP
354         help
355           Say Y here if you have a HP Jornada 710/720/728 and want to
356           support the built-in keyboard.
357
358           To compile this driver as a module, choose M here: the
359           module will be called jornada720_kbd.
360
361 config KEYBOARD_LM8323
362         tristate "LM8323 keypad chip"
363         depends on I2C
364         depends on LEDS_CLASS
365         help
366           If you say yes here you get support for the National Semiconductor
367           LM8323 keypad controller.
368
369           To compile this driver as a module, choose M here: the
370           module will be called lm8323.
371
372 config KEYBOARD_LM8333
373         tristate "LM8333 keypad chip"
374         depends on I2C
375         select INPUT_MATRIXKMAP
376         help
377           If you say yes here you get support for the National Semiconductor
378           LM8333 keypad controller.
379
380           To compile this driver as a module, choose M here: the
381           module will be called lm8333.
382
383 config KEYBOARD_LOCOMO
384         tristate "LoCoMo Keyboard Support"
385         depends on SHARP_LOCOMO
386         help
387           Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA
388
389           To compile this driver as a module, choose M here: the
390           module will be called locomokbd.
391
392 config KEYBOARD_LPC32XX
393         tristate "LPC32XX matrix key scanner support"
394         depends on ARCH_LPC32XX && OF
395         select INPUT_MATRIXKMAP
396         help
397           Say Y here if you want to use NXP LPC32XX SoC key scanner interface,
398           connected to a key matrix.
399
400           To compile this driver as a module, choose M here: the
401           module will be called lpc32xx-keys.
402
403 config KEYBOARD_MAPLE
404         tristate "Maple bus keyboard"
405         depends on SH_DREAMCAST && MAPLE
406         help
407           Say Y here if you have a Dreamcast console running Linux and have
408           a keyboard attached to its Maple bus.
409
410           To compile this driver as a module, choose M here: the
411           module will be called maple_keyb.
412
413 config KEYBOARD_MAX7359
414         tristate "Maxim MAX7359 Key Switch Controller"
415         select INPUT_MATRIXKMAP
416         depends on I2C
417         help
418           If you say yes here you get support for the Maxim MAX7359 Key
419           Switch Controller chip. This providers microprocessors with
420           management of up to 64 key switches
421
422           To compile this driver as a module, choose M here: the
423           module will be called max7359_keypad.
424
425 config KEYBOARD_MCS
426         tristate "MELFAS MCS Touchkey"
427         depends on I2C
428         help
429           Say Y here if you have the MELFAS MCS5000/5080 touchkey controller
430           chip in your system.
431
432           If unsure, say N.
433
434           To compile this driver as a module, choose M here: the
435           module will be called mcs_touchkey.
436
437 config KEYBOARD_MPR121
438         tristate "Freescale MPR121 Touchkey"
439         depends on I2C
440         help
441           Say Y here if you have Freescale MPR121 touchkey controller
442           chip in your system.
443
444           If unsure, say N.
445
446           To compile this driver as a module, choose M here: the
447           module will be called mpr121_touchkey.
448
449 config KEYBOARD_SNVS_PWRKEY
450         tristate "IMX SNVS Power Key Driver"
451         depends on ARCH_MXC || COMPILE_TEST
452         depends on OF
453         help
454           This is the snvs powerkey driver for the Freescale i.MX application
455           processors that are newer than i.MX6 SX.
456
457           To compile this driver as a module, choose M here; the
458           module will be called snvs_pwrkey.
459
460 config KEYBOARD_IMX
461         tristate "IMX keypad support"
462         depends on ARCH_MXC
463         select INPUT_MATRIXKMAP
464         help
465           Enable support for IMX keypad port.
466
467           To compile this driver as a module, choose M here: the
468           module will be called imx_keypad.
469
470 config KEYBOARD_NEWTON
471         tristate "Newton keyboard"
472         select SERIO
473         help
474           Say Y here if you have a Newton keyboard on a serial port.
475
476           To compile this driver as a module, choose M here: the
477           module will be called newtonkbd.
478
479 config KEYBOARD_NOMADIK
480         tristate "ST-Ericsson Nomadik SKE keyboard"
481         depends on (ARCH_NOMADIK || ARCH_U8500)
482         select INPUT_MATRIXKMAP
483         help
484           Say Y here if you want to use a keypad provided on the SKE controller
485           used on the Ux500 and Nomadik platforms
486
487           To compile this driver as a module, choose M here: the
488           module will be called nmk-ske-keypad.
489
490 config KEYBOARD_NSPIRE
491         tristate "TI-NSPIRE built-in keyboard"
492         depends on ARCH_NSPIRE && OF
493         select INPUT_MATRIXKMAP
494         help
495           Say Y here if you want to use the built-in keypad on TI-NSPIRE.
496
497           To compile this driver as a module, choose M here: the
498           module will be called nspire-keypad.
499
500 config KEYBOARD_TEGRA
501         tristate "NVIDIA Tegra internal matrix keyboard controller support"
502         depends on ARCH_TEGRA && OF
503         select INPUT_MATRIXKMAP
504         help
505           Say Y here if you want to use a matrix keyboard connected directly
506           to the internal keyboard controller on Tegra SoCs.
507
508           To compile this driver as a module, choose M here: the
509           module will be called tegra-kbc.
510
511 config KEYBOARD_OPENCORES
512         tristate "OpenCores Keyboard Controller"
513         depends on HAS_IOMEM
514         help
515           Say Y here if you want to use the OpenCores Keyboard Controller
516           http://www.opencores.org/project,keyboardcontroller
517
518           To compile this driver as a module, choose M here; the
519           module will be called opencores-kbd.
520
521 config KEYBOARD_PXA27x
522         tristate "PXA27x/PXA3xx keypad support"
523         depends on PXA27x || PXA3xx || ARCH_MMP
524         select INPUT_MATRIXKMAP
525         help
526           Enable support for PXA27x/PXA3xx keypad controller.
527
528           To compile this driver as a module, choose M here: the
529           module will be called pxa27x_keypad.
530
531 config KEYBOARD_PXA930_ROTARY
532         tristate "PXA930/PXA935 Enhanced Rotary Controller Support"
533         depends on CPU_PXA930 || CPU_PXA935
534         help
535           Enable support for PXA930/PXA935 Enhanced Rotary Controller.
536
537           To compile this driver as a module, choose M here: the
538           module will be called pxa930_rotary.
539
540 config KEYBOARD_PMIC8XXX
541         tristate "Qualcomm PMIC8XXX keypad support"
542         depends on MFD_PM8XXX
543         select INPUT_MATRIXKMAP
544         help
545           Say Y here if you want to enable the driver for the PMIC8XXX
546           keypad provided as a reference design from Qualcomm. This is intended
547           to support upto 18x8 matrix based keypad design.
548
549           To compile this driver as a module, choose M here: the module will
550           be called pmic8xxx-keypad.
551
552 config KEYBOARD_SAMSUNG
553         tristate "Samsung keypad support"
554         depends on HAVE_CLK
555         select INPUT_MATRIXKMAP
556         help
557           Say Y here if you want to use the keypad on your Samsung mobile
558           device.
559
560           To compile this driver as a module, choose M here: the
561           module will be called samsung-keypad.
562
563 config KEYBOARD_GOLDFISH_EVENTS
564         depends on GOLDFISH || COMPILE_TEST
565         tristate "Generic Input Event device for Goldfish"
566         help
567           Say Y here to get an input event device for the Goldfish virtual
568           device emulator.
569
570           To compile this driver as a module, choose M here: the
571           module will be called goldfish-events.
572
573 config KEYBOARD_STOWAWAY
574         tristate "Stowaway keyboard"
575         select SERIO
576         help
577           Say Y here if you have a Stowaway keyboard on a serial port.
578           Stowaway compatible keyboards like Dicota Input-PDA keyboard
579           are also supported by this driver.
580
581           To compile this driver as a module, choose M here: the
582           module will be called stowaway.
583
584 config KEYBOARD_ST_KEYSCAN
585         tristate "STMicroelectronics keyscan support"
586         depends on ARCH_STI || COMPILE_TEST
587         select INPUT_MATRIXKMAP
588         help
589           Say Y here if you want to use a keypad attached to the keyscan block
590           on some STMicroelectronics SoC devices.
591
592           To compile this driver as a module, choose M here: the
593           module will be called st-keyscan.
594
595 config KEYBOARD_SUNKBD
596         tristate "Sun Type 4 and Type 5 keyboard"
597         select SERIO
598         help
599           Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
600           connected either to the Sun keyboard connector or to an serial
601           (RS-232) port via a simple adapter.
602
603           To compile this driver as a module, choose M here: the
604           module will be called sunkbd.
605
606 config KEYBOARD_SH_KEYSC
607         tristate "SuperH KEYSC keypad support"
608         depends on ARCH_SHMOBILE || COMPILE_TEST
609         help
610           Say Y here if you want to use a keypad attached to the KEYSC block
611           on SuperH processors such as sh7722 and sh7343.
612
613           To compile this driver as a module, choose M here: the
614           module will be called sh_keysc.
615
616 config KEYBOARD_STMPE
617         tristate "STMPE keypad support"
618         depends on MFD_STMPE
619         depends on OF
620         select INPUT_MATRIXKMAP
621         help
622           Say Y here if you want to use the keypad controller on STMPE I/O
623           expanders.
624
625           To compile this driver as a module, choose M here: the module will be
626           called stmpe-keypad.
627
628 config KEYBOARD_SUN4I_LRADC
629         tristate "Allwinner sun4i low res adc attached tablet keys support"
630         depends on ARCH_SUNXI
631         help
632           This selects support for the Allwinner low res adc attached tablet
633           keys found on Allwinner sunxi SoCs.
634
635           To compile this driver as a module, choose M here: the
636           module will be called sun4i-lradc-keys.
637
638 config KEYBOARD_DAVINCI
639         tristate "TI DaVinci Key Scan"
640         depends on ARCH_DAVINCI_DM365
641         help
642           Say Y to enable keypad module support for the TI DaVinci
643           platforms (DM365).
644
645           To compile this driver as a module, choose M here: the
646           module will be called davinci_keyscan.
647
648 config KEYBOARD_IPAQ_MICRO
649         tristate "Buttons on Micro SoC (iPaq h3100,h3600,h3700)"
650         depends on MFD_IPAQ_MICRO
651         help
652           Say Y to enable support for the buttons attached to
653           Micro peripheral controller on iPAQ h3100/h3600/h3700
654
655           To compile this driver as a module, choose M here: the
656           module will be called ipaq-micro-keys.
657
658 config KEYBOARD_OMAP
659         tristate "TI OMAP keypad support"
660         depends on ARCH_OMAP1
661         select INPUT_MATRIXKMAP
662         help
663           Say Y here if you want to use the OMAP keypad.
664
665           To compile this driver as a module, choose M here: the
666           module will be called omap-keypad.
667
668 config KEYBOARD_OMAP4
669         tristate "TI OMAP4+ keypad support"
670         depends on OF || ARCH_OMAP2PLUS
671         select INPUT_MATRIXKMAP
672         help
673           Say Y here if you want to use the OMAP4+ keypad.
674
675           To compile this driver as a module, choose M here: the
676           module will be called omap4-keypad.
677
678 config KEYBOARD_SPEAR
679         tristate "ST SPEAR keyboard support"
680         depends on PLAT_SPEAR
681         select INPUT_MATRIXKMAP
682         help
683           Say Y here if you want to use the SPEAR keyboard.
684
685           To compile this driver as a module, choose M here: the
686           module will be called spear-keboard.
687
688 config KEYBOARD_TC3589X
689         tristate "TC3589X Keypad support"
690         depends on MFD_TC3589X
691         select INPUT_MATRIXKMAP
692         help
693           Say Y here if you want to use the keypad controller on
694           TC35892/3 I/O expander.
695
696           To compile this driver as a module, choose M here: the
697           module will be called tc3589x-keypad.
698
699 config KEYBOARD_TM2_TOUCHKEY
700         tristate "TM2 touchkey support"
701         depends on I2C
702         depends on LEDS_CLASS
703         help
704           Say Y here to enable device driver for tm2-touchkey with
705           LED control for the Exynos5433 TM2 board.
706
707           To compile this driver as a module, choose M here.
708           module will be called tm2-touchkey.
709
710 config KEYBOARD_TWL4030
711         tristate "TI TWL4030/TWL5030/TPS659x0 keypad support"
712         depends on TWL4030_CORE
713         select INPUT_MATRIXKMAP
714         help
715           Say Y here if your board use the keypad controller on
716           TWL4030 family chips.  It's safe to say enable this
717           even on boards that don't use the keypad controller.
718
719           To compile this driver as a module, choose M here: the
720           module will be called twl4030_keypad.
721
722 config KEYBOARD_XTKBD
723         tristate "XT keyboard"
724         select SERIO
725         help
726           Say Y here if you want to use the old IBM PC/XT keyboard (or
727           compatible) on your system. This is only possible with a
728           parallel port keyboard adapter, you cannot connect it to the
729           keyboard port on a PC that runs Linux.
730
731           To compile this driver as a module, choose M here: the
732           module will be called xtkbd.
733
734 config KEYBOARD_W90P910
735         tristate "W90P910 Matrix Keypad support"
736         depends on ARCH_W90X900
737         select INPUT_MATRIXKMAP
738         help
739           Say Y here to enable the matrix keypad on evaluation board
740           based on W90P910.
741
742           To compile this driver as a module, choose M here: the
743           module will be called w90p910_keypad.
744
745 config KEYBOARD_CROS_EC
746         tristate "ChromeOS EC keyboard"
747         select INPUT_MATRIXKMAP
748         depends on MFD_CROS_EC
749         help
750           Say Y here to enable the matrix keyboard used by ChromeOS devices
751           and implemented on the ChromeOS EC. You must enable one bus option
752           (CROS_EC_I2C or CROS_EC_SPI) to use this.
753
754           To compile this driver as a module, choose M here: the
755           module will be called cros_ec_keyb.
756
757 config KEYBOARD_CAP11XX
758         tristate "Microchip CAP11XX based touch sensors"
759         depends on OF && I2C
760         select REGMAP_I2C
761         help
762           Say Y here to enable the CAP11XX touch sensor driver.
763
764           To compile this driver as a module, choose M here: the
765           module will be called cap11xx.
766
767 config KEYBOARD_BCM
768         tristate "Broadcom keypad driver"
769         depends on OF && HAVE_CLK
770         select INPUT_MATRIXKMAP
771         default ARCH_BCM_CYGNUS
772         help
773           Say Y here if you want to use Broadcom keypad.
774
775           To compile this driver as a module, choose M here: the
776           module will be called bcm-keypad.
777
778 config KEYBOARD_MTK_PMIC
779         tristate "MediaTek PMIC keys support"
780         depends on MFD_MT6397
781         help
782           Say Y here if you want to use the pmic keys (powerkey/homekey).
783
784           To compile this driver as a module, choose M here: the
785           module will be called pmic-keys.
786
787 endif