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_ADP5585 41 tristate "ADP558x keypad support" 42 depends on MFD_ADP5585 43 select INPUT_MATRIXKMAP 44 help 45 This option enables support for the KEYPAD function found in the Analog 46 Devices ADP5585 and similar devices. 47 48 To compile this driver as a module, choose M here: the 49 module will be called adp5585-keys. 50 51config KEYBOARD_ADP5588 52 tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander" 53 depends on I2C 54 select GPIOLIB 55 select GPIOLIB_IRQCHIP 56 select INPUT_MATRIXKMAP 57 help 58 Say Y here if you want to use a ADP5588/87 attached to your 59 system I2C bus. 60 61 To compile this driver as a module, choose M here: the 62 module will be called adp5588-keys. 63 64config KEYBOARD_AMIGA 65 tristate "Amiga keyboard" 66 depends on AMIGA 67 help 68 Say Y here if you are running Linux on any AMIGA and have a keyboard 69 attached. 70 71 To compile this driver as a module, choose M here: the 72 module will be called amikbd. 73 74config KEYBOARD_APPLESPI 75 tristate "Apple SPI keyboard and trackpad" 76 depends on ACPI && EFI 77 depends on SPI 78 depends on X86 || COMPILE_TEST 79 depends on LEDS_CLASS 80 select CRC16 81 help 82 Say Y here if you are running Linux on any Apple MacBook8,1 or later, 83 or any MacBookPro13,* or MacBookPro14,*. 84 85 You will also need to enable appropriate SPI master controllers: 86 spi_pxa2xx_platform and spi_pxa2xx_pci for MacBook8,1, and 87 spi_pxa2xx_platform and intel_lpss_pci for the rest. 88 89 To compile this driver as a module, choose M here: the 90 module will be called applespi. 91 92config KEYBOARD_ATARI 93 tristate "Atari keyboard" 94 depends on ATARI 95 select ATARI_KBD_CORE 96 help 97 Say Y here if you are running Linux on any Atari and have a keyboard 98 attached. 99 100 To compile this driver as a module, choose M here: the 101 module will be called atakbd. 102 103config KEYBOARD_ATKBD 104 tristate "AT keyboard" 105 default y 106 select SERIO 107 select SERIO_LIBPS2 108 select SERIO_I8042 if ARCH_MIGHT_HAVE_PC_SERIO 109 select SERIO_GSCPS2 if GSC 110 select INPUT_VIVALDIFMAP 111 help 112 Say Y here if you want to use a standard AT or PS/2 keyboard. Usually 113 you'll need this, unless you have a different type keyboard (USB, ADB 114 or other). This also works for AT and PS/2 keyboards connected over a 115 PS/2 to serial converter. 116 117 If unsure, say Y. 118 119 To compile this driver as a module, choose M here: the 120 module will be called atkbd. 121 122config KEYBOARD_ATKBD_HP_KEYCODES 123 bool "Use HP keyboard scancodes" 124 depends on PARISC && KEYBOARD_ATKBD 125 default y 126 help 127 Say Y here if you have a PA-RISC machine and want to use an AT or 128 PS/2 keyboard, and your keyboard uses keycodes that are specific to 129 PA-RISC keyboards. 130 131 Say N if you use a standard keyboard. 132 133config KEYBOARD_ATKBD_RDI_KEYCODES 134 bool "Use PrecisionBook keyboard scancodes" 135 depends on KEYBOARD_ATKBD_HP_KEYCODES 136 default n 137 help 138 If you have an RDI PrecisionBook, say Y here if you want to use its 139 built-in keyboard (as opposed to an external keyboard). 140 141 The PrecisionBook has five keys that conflict with those used by most 142 AT and PS/2 keyboards. These are as follows: 143 144 PrecisionBook Standard AT or PS/2 145 146 F1 F12 147 Left Ctrl Left Alt 148 Caps Lock Left Ctrl 149 Right Ctrl Caps Lock 150 Left 102nd key (the key to the right of Left Shift) 151 152 If you say N here, and use the PrecisionBook keyboard, then each key 153 in the left-hand column will be interpreted as the corresponding key 154 in the right-hand column. 155 156 If you say Y here, and use an external keyboard, then each key in the 157 right-hand column will be interpreted as the key shown in the 158 left-hand column. 159 160config KEYBOARD_QT1050 161 tristate "Microchip AT42QT1050 Touch Sensor Chip" 162 depends on I2C 163 select REGMAP_I2C 164 help 165 Say Y here if you want to use Microchip AT42QT1050 QTouch 166 Sensor chip as input device. 167 168 To compile this driver as a module, choose M here: 169 the module will be called qt1050 170 171config KEYBOARD_QT1070 172 tristate "Atmel AT42QT1070 Touch Sensor Chip" 173 depends on I2C 174 help 175 Say Y here if you want to use Atmel AT42QT1070 QTouch 176 Sensor chip as input device. 177 178 To compile this driver as a module, choose M here: 179 the module will be called qt1070 180 181config KEYBOARD_QT2160 182 tristate "Atmel AT42QT2160 Touch Sensor Chip" 183 depends on I2C 184 help 185 If you say yes here you get support for Atmel AT42QT2160 Touch 186 Sensor chip as a keyboard input. 187 188 This driver can also be built as a module. If so, the module 189 will be called qt2160. 190 191config KEYBOARD_CLPS711X 192 tristate "CLPS711X Keypad support" 193 depends on ARCH_CLPS711X || COMPILE_TEST 194 select INPUT_MATRIXKMAP 195 help 196 Say Y here to enable the matrix keypad on the Cirrus Logic 197 CLPS711X CPUs. 198 199 To compile this driver as a module, choose M here: the 200 module will be called clps711x-keypad. 201 202config KEYBOARD_DLINK_DIR685 203 tristate "D-Link DIR-685 touchkeys support" 204 depends on I2C 205 default ARCH_GEMINI 206 help 207 If you say yes here you get support for the D-Link DIR-685 208 touchkeys. 209 210 To compile this driver as a module, choose M here: the 211 module will be called dlink-dir685-touchkeys. 212 213config KEYBOARD_LKKBD 214 tristate "DECstation/VAXstation LK201/LK401 keyboard" 215 select SERIO 216 help 217 Say Y here if you want to use a LK201 or LK401 style serial 218 keyboard. This keyboard is also usable on PCs if you attach 219 it with the inputattach program. The connector pinout is 220 described within lkkbd.c. 221 222 To compile this driver as a module, choose M here: the 223 module will be called lkkbd. 224 225config KEYBOARD_EP93XX 226 tristate "EP93xx Matrix Keypad support" 227 depends on ARCH_EP93XX || COMPILE_TEST 228 select INPUT_MATRIXKMAP 229 help 230 Say Y here to enable the matrix keypad on the Cirrus EP93XX. 231 232 To compile this driver as a module, choose M here: the 233 module will be called ep93xx_keypad. 234 235config KEYBOARD_GPIO 236 tristate "GPIO Buttons" 237 depends on GPIOLIB || COMPILE_TEST 238 help 239 This driver implements support for buttons connected 240 to GPIO pins of various CPUs (and some other chips). 241 242 Say Y here if your device has buttons connected 243 directly to such GPIO pins. Your board-specific 244 setup logic must also provide a platform device, 245 with configuration data saying which GPIOs are used. 246 247 To compile this driver as a module, choose M here: the 248 module will be called gpio_keys. 249 250config KEYBOARD_GPIO_POLLED 251 tristate "Polled GPIO buttons" 252 depends on GPIOLIB 253 help 254 This driver implements support for buttons connected 255 to GPIO pins that are not capable of generating interrupts. 256 257 Say Y here if your device has buttons connected 258 directly to such GPIO pins. Your board-specific 259 setup logic must also provide a platform device, 260 with configuration data saying which GPIOs are used. 261 262 To compile this driver as a module, choose M here: the 263 module will be called gpio_keys_polled. 264 265config KEYBOARD_TCA6416 266 tristate "TCA6416/TCA6408A Keypad Support" 267 depends on I2C 268 help 269 This driver implements basic keypad functionality 270 for keys connected through TCA6416/TCA6408A IO expanders. 271 272 Say Y here if your device has keys connected to 273 TCA6416/TCA6408A IO expander. Your board-specific setup logic 274 must also provide pin-mask details(of which TCA6416 pins 275 are used for keypad). 276 277 If enabled the entire TCA6416 device will be managed through 278 this driver. 279 280 To compile this driver as a module, choose M here: the 281 module will be called tca6416_keypad. 282 283config KEYBOARD_TCA8418 284 tristate "TCA8418 Keypad Support" 285 depends on I2C 286 select INPUT_MATRIXKMAP 287 help 288 This driver implements basic keypad functionality 289 for keys connected through TCA8418 keypad decoder. 290 291 Say Y here if your device has keys connected to 292 TCA8418 keypad decoder. 293 294 If enabled the complete TCA8418 device will be managed through 295 this driver. 296 297 To compile this driver as a module, choose M here: the 298 module will be called tca8418_keypad. 299 300config KEYBOARD_MATRIX 301 tristate "GPIO driven matrix keypad support" 302 depends on GPIOLIB || COMPILE_TEST 303 select INPUT_MATRIXKMAP 304 help 305 Enable support for GPIO driven matrix keypad. 306 307 To compile this driver as a module, choose M here: the 308 module will be called matrix_keypad. 309 310config KEYBOARD_HIL_OLD 311 tristate "HP HIL keyboard support (simple driver)" 312 depends on GSC || HP300 313 default y 314 help 315 The "Human Interface Loop" is a older, 8-channel USB-like 316 controller used in several Hewlett Packard models. This driver 317 was adapted from the one written for m68k/hp300, and implements 318 support for a keyboard attached to the HIL port, but not for 319 any other types of HIL input devices like mice or tablets. 320 However, it has been thoroughly tested and is stable. 321 322 If you want full HIL support including support for multiple 323 keyboards, mice, and tablets, you have to enable the 324 "HP System Device Controller i8042 Support" in the input/serio 325 submenu. 326 327config KEYBOARD_HIL 328 tristate "HP HIL keyboard/pointer support" 329 depends on GSC || HP300 330 default y 331 select HP_SDC 332 select HIL_MLC 333 select SERIO 334 help 335 The "Human Interface Loop" is a older, 8-channel USB-like 336 controller used in several Hewlett Packard models. 337 This driver implements support for HIL-keyboards and pointing 338 devices (mice, tablets, touchscreens) attached 339 to your machine, so normally you should say Y here. 340 341config KEYBOARD_HP6XX 342 tristate "HP Jornada 6xx keyboard" 343 depends on SH_HP6XX 344 help 345 Say Y here if you have a HP Jornada 620/660/680/690 and want to 346 support the built-in keyboard. 347 348 To compile this driver as a module, choose M here: the 349 module will be called jornada680_kbd. 350 351config KEYBOARD_HP7XX 352 tristate "HP Jornada 7xx keyboard" 353 depends on SA1100_JORNADA720_SSP && SA1100_SSP 354 help 355 Say Y here if you have a HP Jornada 710/720/728 and want to 356 support the built-in keyboard. 357 358 To compile this driver as a module, choose M here: the 359 module will be called jornada720_kbd. 360 361config KEYBOARD_LM8323 362 tristate "LM8323 keypad chip" 363 depends on I2C 364 depends on LEDS_CLASS 365 help 366 If you say yes here you get support for the National Semiconductor 367 LM8323 keypad controller. 368 369 To compile this driver as a module, choose M here: the 370 module will be called lm8323. 371 372config KEYBOARD_LM8333 373 tristate "LM8333 keypad chip" 374 depends on I2C 375 select INPUT_MATRIXKMAP 376 help 377 If you say yes here you get support for the National Semiconductor 378 LM8333 keypad controller. 379 380 To compile this driver as a module, choose M here: the 381 module will be called lm8333. 382 383config KEYBOARD_LOCOMO 384 tristate "LoCoMo Keyboard Support" 385 depends on SHARP_LOCOMO 386 help 387 Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA 388 389 To compile this driver as a module, choose M here: the 390 module will be called locomokbd. 391 392config KEYBOARD_LPC32XX 393 tristate "LPC32XX matrix key scanner support" 394 depends on (ARCH_LPC32XX && OF) || COMPILE_TEST 395 select INPUT_MATRIXKMAP 396 help 397 Say Y here if you want to use NXP LPC32XX SoC key scanner interface, 398 connected to a key matrix. 399 400 To compile this driver as a module, choose M here: the 401 module will be called lpc32xx-keys. 402 403config KEYBOARD_MAPLE 404 tristate "Maple bus keyboard" 405 depends on SH_DREAMCAST && MAPLE 406 help 407 Say Y here if you have a Dreamcast console running Linux and have 408 a keyboard attached to its Maple bus. 409 410 To compile this driver as a module, choose M here: the 411 module will be called maple_keyb. 412 413config KEYBOARD_MAX7359 414 tristate "Maxim MAX7359 Key Switch Controller" 415 select INPUT_MATRIXKMAP 416 depends on I2C 417 help 418 If you say yes here you get support for the Maxim MAX7359 Key 419 Switch Controller chip. This providers microprocessors with 420 management of up to 64 key switches 421 422 To compile this driver as a module, choose M here: the 423 module will be called max7359_keypad. 424 425config KEYBOARD_MPR121 426 tristate "Freescale MPR121 Touchkey" 427 depends on I2C 428 help 429 Say Y here if you have Freescale MPR121 touchkey controller 430 chip in your system. 431 432 If unsure, say N. 433 434 To compile this driver as a module, choose M here: the 435 module will be called mpr121_touchkey. 436 437config KEYBOARD_SNVS_PWRKEY 438 tristate "IMX SNVS Power Key Driver" 439 depends on ARCH_MXC || (COMPILE_TEST && HAS_IOMEM) 440 depends on OF 441 help 442 This is the snvs powerkey driver for the Freescale i.MX application 443 processors. 444 445 To compile this driver as a module, choose M here; the 446 module will be called snvs_pwrkey. 447 448config KEYBOARD_IMX 449 tristate "IMX keypad support" 450 depends on ARCH_MXC || COMPILE_TEST 451 select INPUT_MATRIXKMAP 452 help 453 Enable support for IMX keypad port. 454 455 To compile this driver as a module, choose M here: the 456 module will be called imx_keypad. 457 458config KEYBOARD_IMX_BBM_SCMI 459 tristate "IMX BBM SCMI Key Driver" 460 depends on IMX_SCMI_BBM_EXT || COMPILE_TEST 461 default y if ARCH_MXC 462 help 463 This is the BBM key driver for NXP i.MX SoCs managed through 464 SCMI protocol. 465 466 To compile this driver as a module, choose M here: the 467 module will be called scmi-imx-bbm-key. 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_NSPIRE 489 tristate "TI-NSPIRE built-in keyboard" 490 depends on ARCH_NSPIRE && OF 491 select INPUT_MATRIXKMAP 492 help 493 Say Y here if you want to use the built-in keypad on TI-NSPIRE. 494 495 To compile this driver as a module, choose M here: the 496 module will be called nspire-keypad. 497 498config KEYBOARD_TEGRA 499 tristate "NVIDIA Tegra internal matrix keyboard controller support" 500 depends on (ARCH_TEGRA && OF) || COMPILE_TEST 501 select INPUT_MATRIXKMAP 502 help 503 Say Y here if you want to use a matrix keyboard connected directly 504 to the internal keyboard controller on Tegra SoCs. 505 506 To compile this driver as a module, choose M here: the 507 module will be called tegra-kbc. 508 509config KEYBOARD_OPENCORES 510 tristate "OpenCores Keyboard Controller" 511 depends on HAS_IOMEM 512 help 513 Say Y here if you want to use the OpenCores Keyboard Controller 514 http://www.opencores.org/project,keyboardcontroller 515 516 To compile this driver as a module, choose M here; the 517 module will be called opencores-kbd. 518 519config KEYBOARD_PINEPHONE 520 tristate "Pine64 PinePhone Keyboard" 521 depends on I2C && REGULATOR 522 select CRC8 523 select INPUT_MATRIXKMAP 524 help 525 Say Y here to enable support for the keyboard in the Pine64 PinePhone 526 keyboard case. This driver supports the FLOSS firmware available at 527 https://megous.com/git/pinephone-keyboard/ 528 529 To compile this driver as a module, choose M here; the 530 module will be called pinephone-keyboard. 531 532config KEYBOARD_PXA27x 533 tristate "PXA27x/PXA3xx keypad support" 534 depends on PXA27x || PXA3xx || ARCH_MMP || COMPILE_TEST 535 select INPUT_MATRIXKMAP 536 help 537 Enable support for PXA27x/PXA3xx keypad controller. 538 539 To compile this driver as a module, choose M here: the 540 module will be called pxa27x_keypad. 541 542config KEYBOARD_PMIC8XXX 543 tristate "Qualcomm PMIC8XXX keypad support" 544 depends on MFD_PM8XXX 545 select INPUT_MATRIXKMAP 546 help 547 Say Y here if you want to enable the driver for the PMIC8XXX 548 keypad provided as a reference design from Qualcomm. This is intended 549 to support up to 18x8 matrix-based keypad design. 550 551 To compile this driver as a module, choose M here: the module will 552 be called pmic8xxx-keypad. 553 554config KEYBOARD_SAMSUNG 555 tristate "Samsung keypad support" 556 depends on HAS_IOMEM && HAVE_CLK 557 select INPUT_MATRIXKMAP 558 help 559 Say Y here if you want to use the keypad on your Samsung mobile 560 device. 561 562 To compile this driver as a module, choose M here: the 563 module will be called samsung-keypad. 564 565config KEYBOARD_GOLDFISH_EVENTS 566 depends on GOLDFISH || COMPILE_TEST 567 tristate "Generic Input Event device for Goldfish" 568 help 569 Say Y here to get an input event device for the Goldfish virtual 570 device emulator. 571 572 To compile this driver as a module, choose M here: the 573 module will be called goldfish-events. 574 575config KEYBOARD_STOWAWAY 576 tristate "Stowaway keyboard" 577 select SERIO 578 help 579 Say Y here if you have a Stowaway keyboard on a serial port. 580 Stowaway compatible keyboards like Dicota Input-PDA keyboard 581 are also supported by this driver. 582 583 To compile this driver as a module, choose M here: the 584 module will be called stowaway. 585 586config KEYBOARD_ST_KEYSCAN 587 tristate "STMicroelectronics keyscan support" 588 depends on ARCH_STI || COMPILE_TEST 589 select INPUT_MATRIXKMAP 590 help 591 Say Y here if you want to use a keypad attached to the keyscan block 592 on some STMicroelectronics SoC devices. 593 594 To compile this driver as a module, choose M here: the 595 module will be called st-keyscan. 596 597config KEYBOARD_SUNKBD 598 tristate "Sun Type 4 and Type 5 keyboard" 599 select SERIO 600 help 601 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 602 connected either to the Sun keyboard connector or to an serial 603 (RS-232) port via a simple adapter. 604 605 To compile this driver as a module, choose M here: the 606 module will be called sunkbd. 607 608config KEYBOARD_SH_KEYSC 609 tristate "SuperH KEYSC keypad support" 610 depends on ARCH_SHMOBILE || COMPILE_TEST 611 help 612 Say Y here if you want to use a keypad attached to the KEYSC block 613 on SuperH processors such as sh7722 and sh7343. 614 615 To compile this driver as a module, choose M here: the 616 module will be called sh_keysc. 617 618config KEYBOARD_STMPE 619 tristate "STMPE keypad support" 620 depends on MFD_STMPE 621 depends on OF 622 select INPUT_MATRIXKMAP 623 help 624 Say Y here if you want to use the keypad controller on STMPE I/O 625 expanders. 626 627 To compile this driver as a module, choose M here: the module will be 628 called stmpe-keypad. 629 630config KEYBOARD_SUN4I_LRADC 631 tristate "Allwinner sun4i low res adc attached tablet keys support" 632 depends on ARCH_SUNXI 633 help 634 This selects support for the Allwinner low res adc attached tablet 635 keys found on Allwinner sunxi SoCs. 636 637 To compile this driver as a module, choose M here: the 638 module will be called sun4i-lradc-keys. 639 640config KEYBOARD_IPAQ_MICRO 641 tristate "Buttons on Micro SoC (iPaq h3100,h3600,h3700)" 642 depends on MFD_IPAQ_MICRO 643 help 644 Say Y to enable support for the buttons attached to 645 Micro peripheral controller on iPAQ h3100/h3600/h3700 646 647 To compile this driver as a module, choose M here: the 648 module will be called ipaq-micro-keys. 649 650config KEYBOARD_IQS62X 651 tristate "Azoteq IQS620A/621/622/624/625 keys and switches" 652 depends on MFD_IQS62X 653 help 654 Say Y here to enable key and switch support for the Azoteq IQS620A, 655 IQS621, IQS622, IQS624 and IQS625 multi-function sensors. 656 657 To compile this driver as a module, choose M here: the module will 658 be called iqs62x-keys. 659 660config KEYBOARD_OMAP 661 tristate "TI OMAP keypad support" 662 depends on ARCH_OMAP1 663 select INPUT_MATRIXKMAP 664 help 665 Say Y here if you want to use the OMAP keypad. 666 667 To compile this driver as a module, choose M here: the 668 module will be called omap-keypad. 669 670config KEYBOARD_OMAP4 671 tristate "TI OMAP4+ keypad support" 672 depends on (OF && HAS_IOMEM) || ARCH_OMAP2PLUS 673 select INPUT_MATRIXKMAP 674 help 675 Say Y here if you want to use the OMAP4+ keypad. 676 677 To compile this driver as a module, choose M here: the 678 module will be called omap4-keypad. 679 680config KEYBOARD_SPEAR 681 tristate "ST SPEAR keyboard support" 682 depends on PLAT_SPEAR || COMPILE_TEST 683 select INPUT_MATRIXKMAP 684 help 685 Say Y here if you want to use the SPEAR keyboard. 686 687 To compile this driver as a module, choose M here: the 688 module will be called spear-keyboard. 689 690config KEYBOARD_TC3589X 691 tristate "TC3589X Keypad support" 692 depends on MFD_TC3589X 693 select INPUT_MATRIXKMAP 694 help 695 Say Y here if you want to use the keypad controller on 696 TC35892/3 I/O expander. 697 698 To compile this driver as a module, choose M here: the 699 module will be called tc3589x-keypad. 700 701config KEYBOARD_TM2_TOUCHKEY 702 tristate "TM2 touchkey support" 703 depends on I2C 704 depends on LEDS_CLASS 705 help 706 Say Y here to enable device driver for tm2-touchkey with 707 LED control for the Exynos5433 TM2 board. 708 709 To compile this driver as a module, choose M here. 710 module will be called tm2-touchkey. 711 712config KEYBOARD_TWL4030 713 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 714 depends on TWL4030_CORE 715 select INPUT_MATRIXKMAP 716 help 717 Say Y here if your board use the keypad controller on 718 TWL4030 family chips. It's safe to say enable this 719 even on boards that don't use the keypad controller. 720 721 To compile this driver as a module, choose M here: the 722 module will be called twl4030_keypad. 723 724config KEYBOARD_XTKBD 725 tristate "XT keyboard" 726 select SERIO 727 help 728 Say Y here if you want to use the old IBM PC/XT keyboard (or 729 compatible) on your system. This is only possible with a 730 parallel port keyboard adapter, you cannot connect it to the 731 keyboard port on a PC that runs Linux. 732 733 To compile this driver as a module, choose M here: the 734 module will be called xtkbd. 735 736config KEYBOARD_CROS_EC 737 tristate "ChromeOS EC keyboard" 738 select INPUT_MATRIXKMAP 739 select INPUT_VIVALDIFMAP 740 depends on CROS_EC 741 help 742 Say Y here to enable the matrix keyboard used by ChromeOS devices 743 and implemented on the ChromeOS EC. You must enable one bus option 744 (CROS_EC_I2C or CROS_EC_SPI) to use this. 745 746 To compile this driver as a module, choose M here: the 747 module will be called cros_ec_keyb. 748 749config KEYBOARD_CAP11XX 750 tristate "Microchip CAP11XX based touch sensors" 751 depends on OF && I2C 752 select REGMAP_I2C 753 help 754 Say Y here to enable the CAP11XX touch sensor driver. 755 756 To compile this driver as a module, choose M here: the 757 module will be called cap11xx. 758 759config KEYBOARD_BCM 760 tristate "Broadcom keypad driver" 761 depends on OF && HAVE_CLK && HAS_IOMEM 762 select INPUT_MATRIXKMAP 763 default ARCH_BCM_CYGNUS 764 help 765 Say Y here if you want to use Broadcom keypad. 766 767 To compile this driver as a module, choose M here: the 768 module will be called bcm-keypad. 769 770config KEYBOARD_MT6779 771 tristate "MediaTek Keypad Support" 772 depends on ARCH_MEDIATEK || COMPILE_TEST 773 select REGMAP_MMIO 774 select INPUT_MATRIXKMAP 775 help 776 Say Y here if you want to use the keypad on MediaTek SoCs. 777 If unsure, say N. 778 779 To compile this driver as a module, choose M here: the 780 module will be called mt6779-keypad. 781 782config KEYBOARD_MTK_PMIC 783 tristate "MediaTek PMIC keys support" 784 depends on MFD_MT6397 || COMPILE_TEST 785 help 786 Say Y here if you want to use the pmic keys (powerkey/homekey). 787 788 To compile this driver as a module, choose M here: the 789 module will be called pmic-keys. 790 791config KEYBOARD_CYPRESS_SF 792 tristate "Cypress StreetFighter touchkey support" 793 depends on I2C 794 help 795 Say Y here if you want to enable support for Cypress StreetFighter 796 touchkeys. 797 798 To compile this driver as a module, choose M here: the 799 module will be called cypress-sf. 800 801endif 802