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 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_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 479config 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 488config KEYBOARD_NOMADIK 489 tristate "ST-Ericsson Nomadik SKE keyboard" 490 depends on (ARCH_NOMADIK || ARCH_U8500) 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 499config 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 509config 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 520config 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 530config 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 543config KEYBOARD_PXA27x 544 tristate "PXA27x/PXA3xx keypad support" 545 depends on PXA27x || PXA3xx || ARCH_MMP 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 553config KEYBOARD_PXA930_ROTARY 554 tristate "PXA930/PXA935 Enhanced Rotary Controller Support" 555 depends on CPU_PXA930 || CPU_PXA935 556 help 557 Enable support for PXA930/PXA935 Enhanced Rotary Controller. 558 559 To compile this driver as a module, choose M here: the 560 module will be called pxa930_rotary. 561 562config KEYBOARD_PMIC8XXX 563 tristate "Qualcomm PMIC8XXX keypad support" 564 depends on MFD_PM8XXX 565 select INPUT_MATRIXKMAP 566 help 567 Say Y here if you want to enable the driver for the PMIC8XXX 568 keypad provided as a reference design from Qualcomm. This is intended 569 to support upto 18x8 matrix based keypad design. 570 571 To compile this driver as a module, choose M here: the module will 572 be called pmic8xxx-keypad. 573 574config KEYBOARD_SAMSUNG 575 tristate "Samsung keypad support" 576 depends on HAS_IOMEM && HAVE_CLK 577 select INPUT_MATRIXKMAP 578 help 579 Say Y here if you want to use the keypad on your Samsung mobile 580 device. 581 582 To compile this driver as a module, choose M here: the 583 module will be called samsung-keypad. 584 585config KEYBOARD_GOLDFISH_EVENTS 586 depends on GOLDFISH || COMPILE_TEST 587 tristate "Generic Input Event device for Goldfish" 588 help 589 Say Y here to get an input event device for the Goldfish virtual 590 device emulator. 591 592 To compile this driver as a module, choose M here: the 593 module will be called goldfish-events. 594 595config KEYBOARD_STOWAWAY 596 tristate "Stowaway keyboard" 597 select SERIO 598 help 599 Say Y here if you have a Stowaway keyboard on a serial port. 600 Stowaway compatible keyboards like Dicota Input-PDA keyboard 601 are also supported by this driver. 602 603 To compile this driver as a module, choose M here: the 604 module will be called stowaway. 605 606config KEYBOARD_ST_KEYSCAN 607 tristate "STMicroelectronics keyscan support" 608 depends on ARCH_STI || COMPILE_TEST 609 select INPUT_MATRIXKMAP 610 help 611 Say Y here if you want to use a keypad attached to the keyscan block 612 on some STMicroelectronics SoC devices. 613 614 To compile this driver as a module, choose M here: the 615 module will be called st-keyscan. 616 617config KEYBOARD_SUNKBD 618 tristate "Sun Type 4 and Type 5 keyboard" 619 select SERIO 620 help 621 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 622 connected either to the Sun keyboard connector or to an serial 623 (RS-232) port via a simple adapter. 624 625 To compile this driver as a module, choose M here: the 626 module will be called sunkbd. 627 628config KEYBOARD_SH_KEYSC 629 tristate "SuperH KEYSC keypad support" 630 depends on ARCH_SHMOBILE || COMPILE_TEST 631 help 632 Say Y here if you want to use a keypad attached to the KEYSC block 633 on SuperH processors such as sh7722 and sh7343. 634 635 To compile this driver as a module, choose M here: the 636 module will be called sh_keysc. 637 638config KEYBOARD_STMPE 639 tristate "STMPE keypad support" 640 depends on MFD_STMPE 641 depends on OF 642 select INPUT_MATRIXKMAP 643 help 644 Say Y here if you want to use the keypad controller on STMPE I/O 645 expanders. 646 647 To compile this driver as a module, choose M here: the module will be 648 called stmpe-keypad. 649 650config KEYBOARD_SUN4I_LRADC 651 tristate "Allwinner sun4i low res adc attached tablet keys support" 652 depends on ARCH_SUNXI 653 help 654 This selects support for the Allwinner low res adc attached tablet 655 keys found on Allwinner sunxi SoCs. 656 657 To compile this driver as a module, choose M here: the 658 module will be called sun4i-lradc-keys. 659 660config KEYBOARD_DAVINCI 661 tristate "TI DaVinci Key Scan" 662 depends on ARCH_DAVINCI_DM365 663 help 664 Say Y to enable keypad module support for the TI DaVinci 665 platforms (DM365). 666 667 To compile this driver as a module, choose M here: the 668 module will be called davinci_keyscan. 669 670config KEYBOARD_IPAQ_MICRO 671 tristate "Buttons on Micro SoC (iPaq h3100,h3600,h3700)" 672 depends on MFD_IPAQ_MICRO 673 help 674 Say Y to enable support for the buttons attached to 675 Micro peripheral controller on iPAQ h3100/h3600/h3700 676 677 To compile this driver as a module, choose M here: the 678 module will be called ipaq-micro-keys. 679 680config KEYBOARD_IQS62X 681 tristate "Azoteq IQS620A/621/622/624/625 keys and switches" 682 depends on MFD_IQS62X 683 help 684 Say Y here to enable key and switch support for the Azoteq IQS620A, 685 IQS621, IQS622, IQS624 and IQS625 multi-function sensors. 686 687 To compile this driver as a module, choose M here: the module will 688 be called iqs62x-keys. 689 690config KEYBOARD_OMAP 691 tristate "TI OMAP keypad support" 692 depends on ARCH_OMAP1 693 select INPUT_MATRIXKMAP 694 help 695 Say Y here if you want to use the OMAP keypad. 696 697 To compile this driver as a module, choose M here: the 698 module will be called omap-keypad. 699 700config KEYBOARD_OMAP4 701 tristate "TI OMAP4+ keypad support" 702 depends on (OF && HAS_IOMEM) || ARCH_OMAP2PLUS 703 select INPUT_MATRIXKMAP 704 help 705 Say Y here if you want to use the OMAP4+ keypad. 706 707 To compile this driver as a module, choose M here: the 708 module will be called omap4-keypad. 709 710config KEYBOARD_SPEAR 711 tristate "ST SPEAR keyboard support" 712 depends on PLAT_SPEAR || COMPILE_TEST 713 select INPUT_MATRIXKMAP 714 help 715 Say Y here if you want to use the SPEAR keyboard. 716 717 To compile this driver as a module, choose M here: the 718 module will be called spear-keyboard. 719 720config KEYBOARD_TC3589X 721 tristate "TC3589X Keypad support" 722 depends on MFD_TC3589X 723 select INPUT_MATRIXKMAP 724 help 725 Say Y here if you want to use the keypad controller on 726 TC35892/3 I/O expander. 727 728 To compile this driver as a module, choose M here: the 729 module will be called tc3589x-keypad. 730 731config KEYBOARD_TM2_TOUCHKEY 732 tristate "TM2 touchkey support" 733 depends on I2C 734 depends on LEDS_CLASS 735 help 736 Say Y here to enable device driver for tm2-touchkey with 737 LED control for the Exynos5433 TM2 board. 738 739 To compile this driver as a module, choose M here. 740 module will be called tm2-touchkey. 741 742config KEYBOARD_TWL4030 743 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 744 depends on TWL4030_CORE 745 select INPUT_MATRIXKMAP 746 help 747 Say Y here if your board use the keypad controller on 748 TWL4030 family chips. It's safe to say enable this 749 even on boards that don't use the keypad controller. 750 751 To compile this driver as a module, choose M here: the 752 module will be called twl4030_keypad. 753 754config KEYBOARD_XTKBD 755 tristate "XT keyboard" 756 select SERIO 757 help 758 Say Y here if you want to use the old IBM PC/XT keyboard (or 759 compatible) on your system. This is only possible with a 760 parallel port keyboard adapter, you cannot connect it to the 761 keyboard port on a PC that runs Linux. 762 763 To compile this driver as a module, choose M here: the 764 module will be called xtkbd. 765 766config KEYBOARD_CROS_EC 767 tristate "ChromeOS EC keyboard" 768 select INPUT_MATRIXKMAP 769 select INPUT_VIVALDIFMAP 770 depends on CROS_EC 771 help 772 Say Y here to enable the matrix keyboard used by ChromeOS devices 773 and implemented on the ChromeOS EC. You must enable one bus option 774 (CROS_EC_I2C or CROS_EC_SPI) to use this. 775 776 To compile this driver as a module, choose M here: the 777 module will be called cros_ec_keyb. 778 779config KEYBOARD_CAP11XX 780 tristate "Microchip CAP11XX based touch sensors" 781 depends on OF && I2C 782 select REGMAP_I2C 783 help 784 Say Y here to enable the CAP11XX touch sensor driver. 785 786 To compile this driver as a module, choose M here: the 787 module will be called cap11xx. 788 789config KEYBOARD_BCM 790 tristate "Broadcom keypad driver" 791 depends on OF && HAVE_CLK && HAS_IOMEM 792 select INPUT_MATRIXKMAP 793 default ARCH_BCM_CYGNUS 794 help 795 Say Y here if you want to use Broadcom keypad. 796 797 To compile this driver as a module, choose M here: the 798 module will be called bcm-keypad. 799 800config KEYBOARD_MT6779 801 tristate "MediaTek Keypad Support" 802 depends on ARCH_MEDIATEK || COMPILE_TEST 803 select REGMAP_MMIO 804 select INPUT_MATRIXKMAP 805 help 806 Say Y here if you want to use the keypad on MediaTek SoCs. 807 If unsure, say N. 808 809 To compile this driver as a module, choose M here: the 810 module will be called mt6779-keypad. 811 812config KEYBOARD_MTK_PMIC 813 tristate "MediaTek PMIC keys support" 814 depends on MFD_MT6397 || COMPILE_TEST 815 help 816 Say Y here if you want to use the pmic keys (powerkey/homekey). 817 818 To compile this driver as a module, choose M here: the 819 module will be called pmic-keys. 820 821config KEYBOARD_CYPRESS_SF 822 tristate "Cypress StreetFighter touchkey support" 823 depends on I2C 824 help 825 Say Y here if you want to enable support for Cypress StreetFighter 826 touchkeys. 827 828 To compile this driver as a module, choose M here: the 829 module will be called cypress-sf. 830 831endif 832