1# SPDX-License-Identifier: GPL-2.0-only 2# 3# Input core configuration 4# 5menuconfig 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 14if INPUT_KEYBOARD 15 16config 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 30config 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 40config 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 53config 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 63config 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 73config 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 91config 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 102config 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 121config 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 132config 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 159config 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 170config 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 180config 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 190config 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 201config 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 212config 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 224config 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 234config 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 249config 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 264config 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 282config 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 299config 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 309config 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 326config 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 340config 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 350config 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 360config 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 371config 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 382config 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 391config 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 402config 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 412config 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 424config 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 436config 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 448config 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 459config 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 469config KEYBOARD_IMX_BBM_SCMI 470 tristate "IMX BBM SCMI Key Driver" 471 depends on IMX_SCMI_BBM_EXT || COMPILE_TEST 472 default y if ARCH_MXC 473 help 474 This is the BBM key driver for NXP i.MX SoCs managed through 475 SCMI protocol. 476 477 To compile this driver as a module, choose M here: the 478 module will be called scmi-imx-bbm-key. 479 480config KEYBOARD_IMX_SC_KEY 481 tristate "IMX SCU Key Driver" 482 depends on IMX_SCU 483 help 484 This is the system controller key driver for NXP i.MX SoCs with 485 system controller inside. 486 487 To compile this driver as a module, choose M here: the 488 module will be called imx_sc_key. 489 490config KEYBOARD_NEWTON 491 tristate "Newton keyboard" 492 select SERIO 493 help 494 Say Y here if you have a Newton keyboard on a serial port. 495 496 To compile this driver as a module, choose M here: the 497 module will be called newtonkbd. 498 499config KEYBOARD_NOMADIK 500 tristate "ST-Ericsson Nomadik SKE keyboard" 501 depends on (ARCH_NOMADIK || ARCH_U8500 || COMPILE_TEST) 502 select INPUT_MATRIXKMAP 503 help 504 Say Y here if you want to use a keypad provided on the SKE controller 505 used on the Ux500 and Nomadik platforms 506 507 To compile this driver as a module, choose M here: the 508 module will be called nmk-ske-keypad. 509 510config KEYBOARD_NSPIRE 511 tristate "TI-NSPIRE built-in keyboard" 512 depends on ARCH_NSPIRE && OF 513 select INPUT_MATRIXKMAP 514 help 515 Say Y here if you want to use the built-in keypad on TI-NSPIRE. 516 517 To compile this driver as a module, choose M here: the 518 module will be called nspire-keypad. 519 520config KEYBOARD_TEGRA 521 tristate "NVIDIA Tegra internal matrix keyboard controller support" 522 depends on (ARCH_TEGRA && OF) || COMPILE_TEST 523 select INPUT_MATRIXKMAP 524 help 525 Say Y here if you want to use a matrix keyboard connected directly 526 to the internal keyboard controller on Tegra SoCs. 527 528 To compile this driver as a module, choose M here: the 529 module will be called tegra-kbc. 530 531config KEYBOARD_OPENCORES 532 tristate "OpenCores Keyboard Controller" 533 depends on HAS_IOMEM 534 help 535 Say Y here if you want to use the OpenCores Keyboard Controller 536 http://www.opencores.org/project,keyboardcontroller 537 538 To compile this driver as a module, choose M here; the 539 module will be called opencores-kbd. 540 541config KEYBOARD_PINEPHONE 542 tristate "Pine64 PinePhone Keyboard" 543 depends on I2C && REGULATOR 544 select CRC8 545 select INPUT_MATRIXKMAP 546 help 547 Say Y here to enable support for the keyboard in the Pine64 PinePhone 548 keyboard case. This driver supports the FLOSS firmware available at 549 https://megous.com/git/pinephone-keyboard/ 550 551 To compile this driver as a module, choose M here; the 552 module will be called pinephone-keyboard. 553 554config KEYBOARD_PXA27x 555 tristate "PXA27x/PXA3xx keypad support" 556 depends on PXA27x || PXA3xx || ARCH_MMP || COMPILE_TEST 557 select INPUT_MATRIXKMAP 558 help 559 Enable support for PXA27x/PXA3xx keypad controller. 560 561 To compile this driver as a module, choose M here: the 562 module will be called pxa27x_keypad. 563 564config KEYBOARD_PMIC8XXX 565 tristate "Qualcomm PMIC8XXX keypad support" 566 depends on MFD_PM8XXX 567 select INPUT_MATRIXKMAP 568 help 569 Say Y here if you want to enable the driver for the PMIC8XXX 570 keypad provided as a reference design from Qualcomm. This is intended 571 to support up to 18x8 matrix-based keypad design. 572 573 To compile this driver as a module, choose M here: the module will 574 be called pmic8xxx-keypad. 575 576config KEYBOARD_SAMSUNG 577 tristate "Samsung keypad support" 578 depends on HAS_IOMEM && HAVE_CLK 579 select INPUT_MATRIXKMAP 580 help 581 Say Y here if you want to use the keypad on your Samsung mobile 582 device. 583 584 To compile this driver as a module, choose M here: the 585 module will be called samsung-keypad. 586 587config KEYBOARD_GOLDFISH_EVENTS 588 depends on GOLDFISH || COMPILE_TEST 589 tristate "Generic Input Event device for Goldfish" 590 help 591 Say Y here to get an input event device for the Goldfish virtual 592 device emulator. 593 594 To compile this driver as a module, choose M here: the 595 module will be called goldfish-events. 596 597config KEYBOARD_STOWAWAY 598 tristate "Stowaway keyboard" 599 select SERIO 600 help 601 Say Y here if you have a Stowaway keyboard on a serial port. 602 Stowaway compatible keyboards like Dicota Input-PDA keyboard 603 are also supported by this driver. 604 605 To compile this driver as a module, choose M here: the 606 module will be called stowaway. 607 608config KEYBOARD_ST_KEYSCAN 609 tristate "STMicroelectronics keyscan support" 610 depends on ARCH_STI || COMPILE_TEST 611 select INPUT_MATRIXKMAP 612 help 613 Say Y here if you want to use a keypad attached to the keyscan block 614 on some STMicroelectronics SoC devices. 615 616 To compile this driver as a module, choose M here: the 617 module will be called st-keyscan. 618 619config KEYBOARD_SUNKBD 620 tristate "Sun Type 4 and Type 5 keyboard" 621 select SERIO 622 help 623 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 624 connected either to the Sun keyboard connector or to an serial 625 (RS-232) port via a simple adapter. 626 627 To compile this driver as a module, choose M here: the 628 module will be called sunkbd. 629 630config KEYBOARD_SH_KEYSC 631 tristate "SuperH KEYSC keypad support" 632 depends on ARCH_SHMOBILE || COMPILE_TEST 633 help 634 Say Y here if you want to use a keypad attached to the KEYSC block 635 on SuperH processors such as sh7722 and sh7343. 636 637 To compile this driver as a module, choose M here: the 638 module will be called sh_keysc. 639 640config KEYBOARD_STMPE 641 tristate "STMPE keypad support" 642 depends on MFD_STMPE 643 depends on OF 644 select INPUT_MATRIXKMAP 645 help 646 Say Y here if you want to use the keypad controller on STMPE I/O 647 expanders. 648 649 To compile this driver as a module, choose M here: the module will be 650 called stmpe-keypad. 651 652config KEYBOARD_SUN4I_LRADC 653 tristate "Allwinner sun4i low res adc attached tablet keys support" 654 depends on ARCH_SUNXI 655 help 656 This selects support for the Allwinner low res adc attached tablet 657 keys found on Allwinner sunxi SoCs. 658 659 To compile this driver as a module, choose M here: the 660 module will be called sun4i-lradc-keys. 661 662config KEYBOARD_IPAQ_MICRO 663 tristate "Buttons on Micro SoC (iPaq h3100,h3600,h3700)" 664 depends on MFD_IPAQ_MICRO 665 help 666 Say Y to enable support for the buttons attached to 667 Micro peripheral controller on iPAQ h3100/h3600/h3700 668 669 To compile this driver as a module, choose M here: the 670 module will be called ipaq-micro-keys. 671 672config KEYBOARD_IQS62X 673 tristate "Azoteq IQS620A/621/622/624/625 keys and switches" 674 depends on MFD_IQS62X 675 help 676 Say Y here to enable key and switch support for the Azoteq IQS620A, 677 IQS621, IQS622, IQS624 and IQS625 multi-function sensors. 678 679 To compile this driver as a module, choose M here: the module will 680 be called iqs62x-keys. 681 682config KEYBOARD_OMAP 683 tristate "TI OMAP keypad support" 684 depends on ARCH_OMAP1 685 select INPUT_MATRIXKMAP 686 help 687 Say Y here if you want to use the OMAP keypad. 688 689 To compile this driver as a module, choose M here: the 690 module will be called omap-keypad. 691 692config KEYBOARD_OMAP4 693 tristate "TI OMAP4+ keypad support" 694 depends on (OF && HAS_IOMEM) || ARCH_OMAP2PLUS 695 select INPUT_MATRIXKMAP 696 help 697 Say Y here if you want to use the OMAP4+ keypad. 698 699 To compile this driver as a module, choose M here: the 700 module will be called omap4-keypad. 701 702config KEYBOARD_SPEAR 703 tristate "ST SPEAR keyboard support" 704 depends on PLAT_SPEAR || COMPILE_TEST 705 select INPUT_MATRIXKMAP 706 help 707 Say Y here if you want to use the SPEAR keyboard. 708 709 To compile this driver as a module, choose M here: the 710 module will be called spear-keyboard. 711 712config KEYBOARD_TC3589X 713 tristate "TC3589X Keypad support" 714 depends on MFD_TC3589X 715 select INPUT_MATRIXKMAP 716 help 717 Say Y here if you want to use the keypad controller on 718 TC35892/3 I/O expander. 719 720 To compile this driver as a module, choose M here: the 721 module will be called tc3589x-keypad. 722 723config KEYBOARD_TM2_TOUCHKEY 724 tristate "TM2 touchkey support" 725 depends on I2C 726 depends on LEDS_CLASS 727 help 728 Say Y here to enable device driver for tm2-touchkey with 729 LED control for the Exynos5433 TM2 board. 730 731 To compile this driver as a module, choose M here. 732 module will be called tm2-touchkey. 733 734config KEYBOARD_TWL4030 735 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 736 depends on TWL4030_CORE 737 select INPUT_MATRIXKMAP 738 help 739 Say Y here if your board use the keypad controller on 740 TWL4030 family chips. It's safe to say enable this 741 even on boards that don't use the keypad controller. 742 743 To compile this driver as a module, choose M here: the 744 module will be called twl4030_keypad. 745 746config KEYBOARD_XTKBD 747 tristate "XT keyboard" 748 select SERIO 749 help 750 Say Y here if you want to use the old IBM PC/XT keyboard (or 751 compatible) on your system. This is only possible with a 752 parallel port keyboard adapter, you cannot connect it to the 753 keyboard port on a PC that runs Linux. 754 755 To compile this driver as a module, choose M here: the 756 module will be called xtkbd. 757 758config KEYBOARD_CROS_EC 759 tristate "ChromeOS EC keyboard" 760 select INPUT_MATRIXKMAP 761 select INPUT_VIVALDIFMAP 762 depends on CROS_EC 763 help 764 Say Y here to enable the matrix keyboard used by ChromeOS devices 765 and implemented on the ChromeOS EC. You must enable one bus option 766 (CROS_EC_I2C or CROS_EC_SPI) to use this. 767 768 To compile this driver as a module, choose M here: the 769 module will be called cros_ec_keyb. 770 771config KEYBOARD_CAP11XX 772 tristate "Microchip CAP11XX based touch sensors" 773 depends on OF && I2C 774 select REGMAP_I2C 775 help 776 Say Y here to enable the CAP11XX touch sensor driver. 777 778 To compile this driver as a module, choose M here: the 779 module will be called cap11xx. 780 781config KEYBOARD_BCM 782 tristate "Broadcom keypad driver" 783 depends on OF && HAVE_CLK && HAS_IOMEM 784 select INPUT_MATRIXKMAP 785 default ARCH_BCM_CYGNUS 786 help 787 Say Y here if you want to use Broadcom keypad. 788 789 To compile this driver as a module, choose M here: the 790 module will be called bcm-keypad. 791 792config KEYBOARD_MT6779 793 tristate "MediaTek Keypad Support" 794 depends on ARCH_MEDIATEK || COMPILE_TEST 795 select REGMAP_MMIO 796 select INPUT_MATRIXKMAP 797 help 798 Say Y here if you want to use the keypad on MediaTek SoCs. 799 If unsure, say N. 800 801 To compile this driver as a module, choose M here: the 802 module will be called mt6779-keypad. 803 804config KEYBOARD_MTK_PMIC 805 tristate "MediaTek PMIC keys support" 806 depends on MFD_MT6397 || COMPILE_TEST 807 help 808 Say Y here if you want to use the pmic keys (powerkey/homekey). 809 810 To compile this driver as a module, choose M here: the 811 module will be called pmic-keys. 812 813config KEYBOARD_CYPRESS_SF 814 tristate "Cypress StreetFighter touchkey support" 815 depends on I2C 816 help 817 Say Y here if you want to enable support for Cypress StreetFighter 818 touchkeys. 819 820 To compile this driver as a module, choose M here: the 821 module will be called cypress-sf. 822 823endif 824