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_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 || 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 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 || 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 553config 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 565config 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 576config 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 586config 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 597config 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 608config 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 619config 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 629config 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 641config 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 651config 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 661config 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 671config 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 681config 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 691config 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 701config 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 712config 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 723config 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 735config 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 747config 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 760config 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 770config 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 781config 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 793config 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 802config 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 812endif 813