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