# SPDX-License-Identifier: GPL-2.0-only 
 | 
# 
 | 
# Input core configuration 
 | 
# 
 | 
menuconfig INPUT_KEYBOARD 
 | 
    bool "Keyboards" 
 | 
    default y 
 | 
    help 
 | 
      Say Y here, and a list of supported keyboards will be displayed. 
 | 
      This option doesn't affect the kernel. 
 | 
  
 | 
      If unsure, say Y. 
 | 
  
 | 
if INPUT_KEYBOARD 
 | 
  
 | 
config KEYBOARD_ADC 
 | 
    tristate "ADC Ladder Buttons" 
 | 
    depends on IIO 
 | 
    help 
 | 
      This driver implements support for buttons connected 
 | 
      to an ADC using a resistor ladder. 
 | 
  
 | 
      Say Y here if your device has such buttons connected to an ADC.  Your 
 | 
      board-specific setup logic must also provide a configuration data 
 | 
      for mapping voltages to buttons. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called adc_keys. 
 | 
  
 | 
config KEYBOARD_ADP5520 
 | 
    tristate "Keypad Support for ADP5520 PMIC" 
 | 
    depends on PMIC_ADP5520 
 | 
    help 
 | 
      This option enables support for the keypad scan matrix 
 | 
      on Analog Devices ADP5520 PMICs. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the module will 
 | 
      be called adp5520-keys. 
 | 
  
 | 
config KEYBOARD_ADP5588 
 | 
    tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander" 
 | 
    depends on I2C 
 | 
    help 
 | 
      Say Y here if you want to use a ADP5588/87 attached to your 
 | 
      system I2C bus. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called adp5588-keys. 
 | 
  
 | 
config KEYBOARD_ADP5589 
 | 
    tristate "ADP5585/ADP5589 I2C QWERTY Keypad and IO Expander" 
 | 
    depends on I2C 
 | 
    help 
 | 
      Say Y here if you want to use a ADP5585/ADP5589 attached to your 
 | 
      system I2C bus. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called adp5589-keys. 
 | 
  
 | 
config KEYBOARD_AMIGA 
 | 
    tristate "Amiga keyboard" 
 | 
    depends on AMIGA 
 | 
    help 
 | 
      Say Y here if you are running Linux on any AMIGA and have a keyboard 
 | 
      attached. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called amikbd. 
 | 
  
 | 
config KEYBOARD_APPLESPI 
 | 
    tristate "Apple SPI keyboard and trackpad" 
 | 
    depends on ACPI && EFI 
 | 
    depends on SPI 
 | 
    depends on X86 || COMPILE_TEST 
 | 
    depends on LEDS_CLASS 
 | 
    select CRC16 
 | 
    help 
 | 
      Say Y here if you are running Linux on any Apple MacBook8,1 or later, 
 | 
      or any MacBookPro13,* or MacBookPro14,*. 
 | 
  
 | 
      You will also need to enable appropriate SPI master controllers: 
 | 
      spi_pxa2xx_platform and spi_pxa2xx_pci for MacBook8,1, and 
 | 
      spi_pxa2xx_platform and intel_lpss_pci for the rest. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called applespi. 
 | 
  
 | 
config KEYBOARD_ATARI 
 | 
    tristate "Atari keyboard" 
 | 
    depends on ATARI 
 | 
    select ATARI_KBD_CORE 
 | 
    help 
 | 
      Say Y here if you are running Linux on any Atari and have a keyboard 
 | 
      attached. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called atakbd. 
 | 
  
 | 
config KEYBOARD_ATKBD 
 | 
    tristate "AT keyboard" 
 | 
    default y 
 | 
    select SERIO 
 | 
    select SERIO_LIBPS2 
 | 
    select SERIO_I8042 if ARCH_MIGHT_HAVE_PC_SERIO 
 | 
    select SERIO_GSCPS2 if GSC 
 | 
    help 
 | 
      Say Y here if you want to use a standard AT or PS/2 keyboard. Usually 
 | 
      you'll need this, unless you have a different type keyboard (USB, ADB 
 | 
      or other). This also works for AT and PS/2 keyboards connected over a 
 | 
      PS/2 to serial converter. 
 | 
  
 | 
      If unsure, say Y. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called atkbd. 
 | 
  
 | 
config KEYBOARD_ATKBD_HP_KEYCODES 
 | 
    bool "Use HP keyboard scancodes" 
 | 
    depends on PARISC && KEYBOARD_ATKBD 
 | 
    default y 
 | 
    help 
 | 
      Say Y here if you have a PA-RISC machine and want to use an AT or 
 | 
      PS/2 keyboard, and your keyboard uses keycodes that are specific to 
 | 
      PA-RISC keyboards. 
 | 
  
 | 
      Say N if you use a standard keyboard. 
 | 
  
 | 
config KEYBOARD_ATKBD_RDI_KEYCODES 
 | 
    bool "Use PrecisionBook keyboard scancodes" 
 | 
    depends on KEYBOARD_ATKBD_HP_KEYCODES 
 | 
    default n 
 | 
    help 
 | 
      If you have an RDI PrecisionBook, say Y here if you want to use its 
 | 
      built-in keyboard (as opposed to an external keyboard). 
 | 
  
 | 
      The PrecisionBook has five keys that conflict with those used by most 
 | 
      AT and PS/2 keyboards. These are as follows: 
 | 
  
 | 
        PrecisionBook    Standard AT or PS/2 
 | 
  
 | 
        F1               F12 
 | 
        Left Ctrl        Left Alt 
 | 
        Caps Lock        Left Ctrl 
 | 
        Right Ctrl       Caps Lock 
 | 
        Left             102nd key (the key to the right of Left Shift) 
 | 
  
 | 
      If you say N here, and use the PrecisionBook keyboard, then each key 
 | 
      in the left-hand column will be interpreted as the corresponding key 
 | 
      in the right-hand column. 
 | 
  
 | 
      If you say Y here, and use an external keyboard, then each key in the 
 | 
      right-hand column will be interpreted as the key shown in the 
 | 
      left-hand column. 
 | 
  
 | 
config KEYBOARD_QT1050 
 | 
    tristate "Microchip AT42QT1050 Touch Sensor Chip" 
 | 
    depends on I2C 
 | 
    select REGMAP_I2C 
 | 
    help 
 | 
      Say Y here if you want to use Microchip AT42QT1050 QTouch 
 | 
      Sensor chip as input device. 
 | 
  
 | 
      To compile this driver as a module, choose M here: 
 | 
      the module will be called qt1050 
 | 
  
 | 
config KEYBOARD_QT1070 
 | 
    tristate "Atmel AT42QT1070 Touch Sensor Chip" 
 | 
    depends on I2C 
 | 
    help 
 | 
      Say Y here if you want to use Atmel AT42QT1070 QTouch 
 | 
      Sensor chip as input device. 
 | 
  
 | 
      To compile this driver as a module, choose M here: 
 | 
      the module will be called qt1070 
 | 
  
 | 
config KEYBOARD_QT2160 
 | 
    tristate "Atmel AT42QT2160 Touch Sensor Chip" 
 | 
    depends on I2C 
 | 
    help 
 | 
      If you say yes here you get support for Atmel AT42QT2160 Touch 
 | 
      Sensor chip as a keyboard input. 
 | 
  
 | 
      This driver can also be built as a module. If so, the module 
 | 
      will be called qt2160. 
 | 
  
 | 
config KEYBOARD_CLPS711X 
 | 
    tristate "CLPS711X Keypad support" 
 | 
    depends on OF_GPIO && (ARCH_CLPS711X || COMPILE_TEST) 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here to enable the matrix keypad on the Cirrus Logic 
 | 
      CLPS711X CPUs. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called clps711x-keypad. 
 | 
  
 | 
config KEYBOARD_DLINK_DIR685 
 | 
    tristate "D-Link DIR-685 touchkeys support" 
 | 
    depends on I2C 
 | 
    default ARCH_GEMINI 
 | 
    help 
 | 
      If you say yes here you get support for the D-Link DIR-685 
 | 
      touchkeys. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called dlink-dir685-touchkeys. 
 | 
  
 | 
config KEYBOARD_LKKBD 
 | 
    tristate "DECstation/VAXstation LK201/LK401 keyboard" 
 | 
    select SERIO 
 | 
    help 
 | 
      Say Y here if you want to use a LK201 or LK401 style serial 
 | 
      keyboard. This keyboard is also useable on PCs if you attach 
 | 
      it with the inputattach program. The connector pinout is 
 | 
      described within lkkbd.c. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called lkkbd. 
 | 
  
 | 
config KEYBOARD_EP93XX 
 | 
    tristate "EP93xx Matrix Keypad support" 
 | 
    depends on ARCH_EP93XX || COMPILE_TEST 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here to enable the matrix keypad on the Cirrus EP93XX. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called ep93xx_keypad. 
 | 
  
 | 
config KEYBOARD_GPIO 
 | 
    tristate "GPIO Buttons" 
 | 
    depends on GPIOLIB || COMPILE_TEST 
 | 
    help 
 | 
      This driver implements support for buttons connected 
 | 
      to GPIO pins of various CPUs (and some other chips). 
 | 
  
 | 
      Say Y here if your device has buttons connected 
 | 
      directly to such GPIO pins.  Your board-specific 
 | 
      setup logic must also provide a platform device, 
 | 
      with configuration data saying which GPIOs are used. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called gpio_keys. 
 | 
  
 | 
config KEYBOARD_GPIO_POLLED 
 | 
    tristate "Polled GPIO buttons" 
 | 
    depends on GPIOLIB 
 | 
    help 
 | 
      This driver implements support for buttons connected 
 | 
      to GPIO pins that are not capable of generating interrupts. 
 | 
  
 | 
      Say Y here if your device has buttons connected 
 | 
      directly to such GPIO pins.  Your board-specific 
 | 
      setup logic must also provide a platform device, 
 | 
      with configuration data saying which GPIOs are used. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called gpio_keys_polled. 
 | 
  
 | 
config KEYBOARD_TCA6416 
 | 
    tristate "TCA6416/TCA6408A Keypad Support" 
 | 
    depends on I2C 
 | 
    help 
 | 
      This driver implements basic keypad functionality 
 | 
      for keys connected through TCA6416/TCA6408A IO expanders. 
 | 
  
 | 
      Say Y here if your device has keys connected to 
 | 
      TCA6416/TCA6408A IO expander. Your board-specific setup logic 
 | 
      must also provide pin-mask details(of which TCA6416 pins 
 | 
      are used for keypad). 
 | 
  
 | 
      If enabled the entire TCA6416 device will be managed through 
 | 
      this driver. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called tca6416_keypad. 
 | 
  
 | 
config KEYBOARD_TCA8418 
 | 
    tristate "TCA8418 Keypad Support" 
 | 
    depends on I2C 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      This driver implements basic keypad functionality 
 | 
      for keys connected through TCA8418 keypad decoder. 
 | 
  
 | 
      Say Y here if your device has keys connected to 
 | 
      TCA8418 keypad decoder. 
 | 
  
 | 
      If enabled the complete TCA8418 device will be managed through 
 | 
      this driver. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called tca8418_keypad. 
 | 
  
 | 
config KEYBOARD_MATRIX 
 | 
    tristate "GPIO driven matrix keypad support" 
 | 
    depends on GPIOLIB || COMPILE_TEST 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Enable support for GPIO driven matrix keypad. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called matrix_keypad. 
 | 
  
 | 
config KEYBOARD_HIL_OLD 
 | 
    tristate "HP HIL keyboard support (simple driver)" 
 | 
    depends on GSC || HP300 
 | 
    default y 
 | 
    help 
 | 
      The "Human Interface Loop" is a older, 8-channel USB-like 
 | 
      controller used in several Hewlett Packard models. This driver 
 | 
      was adapted from the one written for m68k/hp300, and implements 
 | 
      support for a keyboard attached to the HIL port, but not for 
 | 
      any other types of HIL input devices like mice or tablets. 
 | 
      However, it has been thoroughly tested and is stable. 
 | 
  
 | 
      If you want full HIL support including support for multiple 
 | 
      keyboards, mice, and tablets, you have to enable the 
 | 
      "HP System Device Controller i8042 Support" in the input/serio 
 | 
      submenu. 
 | 
  
 | 
config KEYBOARD_HIL 
 | 
    tristate "HP HIL keyboard/pointer support" 
 | 
    depends on GSC || HP300 
 | 
    default y 
 | 
    select HP_SDC 
 | 
    select HIL_MLC 
 | 
    select SERIO 
 | 
    help 
 | 
      The "Human Interface Loop" is a older, 8-channel USB-like 
 | 
      controller used in several Hewlett Packard models. 
 | 
      This driver implements support for HIL-keyboards and pointing 
 | 
      devices (mice, tablets, touchscreens) attached 
 | 
      to your machine, so normally you should say Y here. 
 | 
  
 | 
config KEYBOARD_HP6XX 
 | 
    tristate "HP Jornada 6xx keyboard" 
 | 
    depends on SH_HP6XX 
 | 
    help 
 | 
      Say Y here if you have a HP Jornada 620/660/680/690 and want to 
 | 
      support the built-in keyboard. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called jornada680_kbd. 
 | 
  
 | 
config KEYBOARD_HP7XX 
 | 
    tristate "HP Jornada 7xx keyboard" 
 | 
    depends on SA1100_JORNADA720_SSP && SA1100_SSP 
 | 
    help 
 | 
      Say Y here if you have a HP Jornada 710/720/728 and want to 
 | 
      support the built-in keyboard. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called jornada720_kbd. 
 | 
  
 | 
config KEYBOARD_LM8323 
 | 
    tristate "LM8323 keypad chip" 
 | 
    depends on I2C 
 | 
    depends on LEDS_CLASS 
 | 
    help 
 | 
      If you say yes here you get support for the National Semiconductor 
 | 
      LM8323 keypad controller. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called lm8323. 
 | 
  
 | 
config KEYBOARD_LM8333 
 | 
    tristate "LM8333 keypad chip" 
 | 
    depends on I2C 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      If you say yes here you get support for the National Semiconductor 
 | 
      LM8333 keypad controller. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called lm8333. 
 | 
  
 | 
config KEYBOARD_LOCOMO 
 | 
    tristate "LoCoMo Keyboard Support" 
 | 
    depends on SHARP_LOCOMO 
 | 
    help 
 | 
      Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called locomokbd. 
 | 
  
 | 
config KEYBOARD_LPC32XX 
 | 
    tristate "LPC32XX matrix key scanner support" 
 | 
    depends on ARCH_LPC32XX && OF 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use NXP LPC32XX SoC key scanner interface, 
 | 
      connected to a key matrix. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called lpc32xx-keys. 
 | 
  
 | 
config KEYBOARD_MAPLE 
 | 
    tristate "Maple bus keyboard" 
 | 
    depends on SH_DREAMCAST && MAPLE 
 | 
    help 
 | 
      Say Y here if you have a Dreamcast console running Linux and have 
 | 
      a keyboard attached to its Maple bus. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called maple_keyb. 
 | 
  
 | 
config KEYBOARD_MAX7359 
 | 
    tristate "Maxim MAX7359 Key Switch Controller" 
 | 
    select INPUT_MATRIXKMAP 
 | 
    depends on I2C 
 | 
    help 
 | 
      If you say yes here you get support for the Maxim MAX7359 Key 
 | 
      Switch Controller chip. This providers microprocessors with 
 | 
      management of up to 64 key switches 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called max7359_keypad. 
 | 
  
 | 
config KEYBOARD_MCS 
 | 
    tristate "MELFAS MCS Touchkey" 
 | 
    depends on I2C 
 | 
    help 
 | 
      Say Y here if you have the MELFAS MCS5000/5080 touchkey controller 
 | 
      chip in your system. 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called mcs_touchkey. 
 | 
  
 | 
config KEYBOARD_MPR121 
 | 
    tristate "Freescale MPR121 Touchkey" 
 | 
    depends on I2C 
 | 
    help 
 | 
      Say Y here if you have Freescale MPR121 touchkey controller 
 | 
      chip in your system. 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called mpr121_touchkey. 
 | 
  
 | 
config KEYBOARD_SNVS_PWRKEY 
 | 
    tristate "IMX SNVS Power Key Driver" 
 | 
    depends on ARCH_MXC || COMPILE_TEST 
 | 
    depends on OF 
 | 
    help 
 | 
      This is the snvs powerkey driver for the Freescale i.MX application 
 | 
      processors. 
 | 
  
 | 
      To compile this driver as a module, choose M here; the 
 | 
      module will be called snvs_pwrkey. 
 | 
  
 | 
config KEYBOARD_IMX 
 | 
    tristate "IMX keypad support" 
 | 
    depends on ARCH_MXC 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Enable support for IMX keypad port. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called imx_keypad. 
 | 
  
 | 
config KEYBOARD_IMX_SC_KEY 
 | 
    tristate "IMX SCU Key Driver" 
 | 
    depends on IMX_SCU 
 | 
    help 
 | 
      This is the system controller key driver for NXP i.MX SoCs with 
 | 
      system controller inside. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called imx_sc_key. 
 | 
  
 | 
config KEYBOARD_NEWTON 
 | 
    tristate "Newton keyboard" 
 | 
    select SERIO 
 | 
    help 
 | 
      Say Y here if you have a Newton keyboard on a serial port. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called newtonkbd. 
 | 
  
 | 
config KEYBOARD_NOMADIK 
 | 
    tristate "ST-Ericsson Nomadik SKE keyboard" 
 | 
    depends on (ARCH_NOMADIK || ARCH_U8500) 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use a keypad provided on the SKE controller 
 | 
      used on the Ux500 and Nomadik platforms 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called nmk-ske-keypad. 
 | 
  
 | 
config KEYBOARD_NSPIRE 
 | 
    tristate "TI-NSPIRE built-in keyboard" 
 | 
    depends on ARCH_NSPIRE && OF 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use the built-in keypad on TI-NSPIRE. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called nspire-keypad. 
 | 
  
 | 
config KEYBOARD_TEGRA 
 | 
    tristate "NVIDIA Tegra internal matrix keyboard controller support" 
 | 
    depends on ARCH_TEGRA && OF 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use a matrix keyboard connected directly 
 | 
      to the internal keyboard controller on Tegra SoCs. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called tegra-kbc. 
 | 
  
 | 
config KEYBOARD_OPENCORES 
 | 
    tristate "OpenCores Keyboard Controller" 
 | 
    depends on HAS_IOMEM 
 | 
    help 
 | 
      Say Y here if you want to use the OpenCores Keyboard Controller 
 | 
      http://www.opencores.org/project,keyboardcontroller 
 | 
  
 | 
      To compile this driver as a module, choose M here; the 
 | 
      module will be called opencores-kbd. 
 | 
  
 | 
config KEYBOARD_PXA27x 
 | 
    tristate "PXA27x/PXA3xx keypad support" 
 | 
    depends on PXA27x || PXA3xx || ARCH_MMP 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Enable support for PXA27x/PXA3xx keypad controller. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called pxa27x_keypad. 
 | 
  
 | 
config KEYBOARD_PXA930_ROTARY 
 | 
    tristate "PXA930/PXA935 Enhanced Rotary Controller Support" 
 | 
    depends on CPU_PXA930 || CPU_PXA935 
 | 
    help 
 | 
      Enable support for PXA930/PXA935 Enhanced Rotary Controller. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called pxa930_rotary. 
 | 
  
 | 
config KEYBOARD_PMIC8XXX 
 | 
    tristate "Qualcomm PMIC8XXX keypad support" 
 | 
    depends on MFD_PM8XXX 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to enable the driver for the PMIC8XXX 
 | 
      keypad provided as a reference design from Qualcomm. This is intended 
 | 
      to support upto 18x8 matrix based keypad design. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the module will 
 | 
      be called pmic8xxx-keypad. 
 | 
  
 | 
config KEYBOARD_SAMSUNG 
 | 
    tristate "Samsung keypad support" 
 | 
    depends on HAS_IOMEM && HAVE_CLK 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use the keypad on your Samsung mobile 
 | 
      device. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called samsung-keypad. 
 | 
  
 | 
config KEYBOARD_GOLDFISH_EVENTS 
 | 
    depends on GOLDFISH || COMPILE_TEST 
 | 
    tristate "Generic Input Event device for Goldfish" 
 | 
    help 
 | 
      Say Y here to get an input event device for the Goldfish virtual 
 | 
      device emulator. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called goldfish-events. 
 | 
  
 | 
config KEYBOARD_STOWAWAY 
 | 
    tristate "Stowaway keyboard" 
 | 
    select SERIO 
 | 
    help 
 | 
      Say Y here if you have a Stowaway keyboard on a serial port. 
 | 
      Stowaway compatible keyboards like Dicota Input-PDA keyboard 
 | 
      are also supported by this driver. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called stowaway. 
 | 
  
 | 
config KEYBOARD_ST_KEYSCAN 
 | 
    tristate "STMicroelectronics keyscan support" 
 | 
    depends on ARCH_STI || COMPILE_TEST 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use a keypad attached to the keyscan block 
 | 
      on some STMicroelectronics SoC devices. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called st-keyscan. 
 | 
  
 | 
config KEYBOARD_SUNKBD 
 | 
    tristate "Sun Type 4 and Type 5 keyboard" 
 | 
    select SERIO 
 | 
    help 
 | 
      Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 
 | 
      connected either to the Sun keyboard connector or to an serial 
 | 
      (RS-232) port via a simple adapter. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called sunkbd. 
 | 
  
 | 
config KEYBOARD_SH_KEYSC 
 | 
    tristate "SuperH KEYSC keypad support" 
 | 
    depends on ARCH_SHMOBILE || COMPILE_TEST 
 | 
    help 
 | 
      Say Y here if you want to use a keypad attached to the KEYSC block 
 | 
      on SuperH processors such as sh7722 and sh7343. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called sh_keysc. 
 | 
  
 | 
config KEYBOARD_STMPE 
 | 
    tristate "STMPE keypad support" 
 | 
    depends on MFD_STMPE 
 | 
    depends on OF 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use the keypad controller on STMPE I/O 
 | 
      expanders. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the module will be 
 | 
      called stmpe-keypad. 
 | 
  
 | 
config KEYBOARD_SUN4I_LRADC 
 | 
    tristate "Allwinner sun4i low res adc attached tablet keys support" 
 | 
    depends on ARCH_SUNXI 
 | 
    help 
 | 
      This selects support for the Allwinner low res adc attached tablet 
 | 
      keys found on Allwinner sunxi SoCs. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called sun4i-lradc-keys. 
 | 
  
 | 
config KEYBOARD_DAVINCI 
 | 
    tristate "TI DaVinci Key Scan" 
 | 
    depends on ARCH_DAVINCI_DM365 
 | 
    help 
 | 
      Say Y to enable keypad module support for the TI DaVinci 
 | 
      platforms (DM365). 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called davinci_keyscan. 
 | 
  
 | 
config KEYBOARD_IPAQ_MICRO 
 | 
    tristate "Buttons on Micro SoC (iPaq h3100,h3600,h3700)" 
 | 
    depends on MFD_IPAQ_MICRO 
 | 
    help 
 | 
      Say Y to enable support for the buttons attached to 
 | 
      Micro peripheral controller on iPAQ h3100/h3600/h3700 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called ipaq-micro-keys. 
 | 
  
 | 
config KEYBOARD_IQS62X 
 | 
    tristate "Azoteq IQS620A/621/622/624/625 keys and switches" 
 | 
    depends on MFD_IQS62X 
 | 
    help 
 | 
      Say Y here to enable key and switch support for the Azoteq IQS620A, 
 | 
      IQS621, IQS622, IQS624 and IQS625 multi-function sensors. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the module will 
 | 
      be called iqs62x-keys. 
 | 
  
 | 
config KEYBOARD_OMAP 
 | 
    tristate "TI OMAP keypad support" 
 | 
    depends on ARCH_OMAP1 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use the OMAP keypad. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called omap-keypad. 
 | 
  
 | 
config KEYBOARD_OMAP4 
 | 
    tristate "TI OMAP4+ keypad support" 
 | 
    depends on OF || ARCH_OMAP2PLUS 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use the OMAP4+ keypad. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called omap4-keypad. 
 | 
  
 | 
config KEYBOARD_SPEAR 
 | 
    tristate "ST SPEAR keyboard support" 
 | 
    depends on PLAT_SPEAR 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use the SPEAR keyboard. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called spear-keyboard. 
 | 
  
 | 
config KEYBOARD_TC3589X 
 | 
    tristate "TC3589X Keypad support" 
 | 
    depends on MFD_TC3589X 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if you want to use the keypad controller on 
 | 
      TC35892/3 I/O expander. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called tc3589x-keypad. 
 | 
  
 | 
config KEYBOARD_TM2_TOUCHKEY 
 | 
    tristate "TM2 touchkey support" 
 | 
    depends on I2C 
 | 
    depends on LEDS_CLASS 
 | 
    help 
 | 
      Say Y here to enable device driver for tm2-touchkey with 
 | 
      LED control for the Exynos5433 TM2 board. 
 | 
  
 | 
      To compile this driver as a module, choose M here. 
 | 
      module will be called tm2-touchkey. 
 | 
  
 | 
config KEYBOARD_TWL4030 
 | 
    tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 
 | 
    depends on TWL4030_CORE 
 | 
    select INPUT_MATRIXKMAP 
 | 
    help 
 | 
      Say Y here if your board use the keypad controller on 
 | 
      TWL4030 family chips.  It's safe to say enable this 
 | 
      even on boards that don't use the keypad controller. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called twl4030_keypad. 
 | 
  
 | 
config KEYBOARD_XTKBD 
 | 
    tristate "XT keyboard" 
 | 
    select SERIO 
 | 
    help 
 | 
      Say Y here if you want to use the old IBM PC/XT keyboard (or 
 | 
      compatible) on your system. This is only possible with a 
 | 
      parallel port keyboard adapter, you cannot connect it to the 
 | 
      keyboard port on a PC that runs Linux. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called xtkbd. 
 | 
  
 | 
config KEYBOARD_CROS_EC 
 | 
    tristate "ChromeOS EC keyboard" 
 | 
    select INPUT_MATRIXKMAP 
 | 
    depends on CROS_EC 
 | 
    help 
 | 
      Say Y here to enable the matrix keyboard used by ChromeOS devices 
 | 
      and implemented on the ChromeOS EC. You must enable one bus option 
 | 
      (CROS_EC_I2C or CROS_EC_SPI) to use this. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called cros_ec_keyb. 
 | 
  
 | 
config KEYBOARD_CAP11XX 
 | 
    tristate "Microchip CAP11XX based touch sensors" 
 | 
    depends on OF && I2C 
 | 
    select REGMAP_I2C 
 | 
    help 
 | 
      Say Y here to enable the CAP11XX touch sensor driver. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called cap11xx. 
 | 
  
 | 
config KEYBOARD_BCM 
 | 
    tristate "Broadcom keypad driver" 
 | 
    depends on OF && HAVE_CLK 
 | 
    select INPUT_MATRIXKMAP 
 | 
    default ARCH_BCM_CYGNUS 
 | 
    help 
 | 
      Say Y here if you want to use Broadcom keypad. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called bcm-keypad. 
 | 
  
 | 
config KEYBOARD_MTK_PMIC 
 | 
    tristate "MediaTek PMIC keys support" 
 | 
    depends on MFD_MT6397 
 | 
    help 
 | 
      Say Y here if you want to use the pmic keys (powerkey/homekey). 
 | 
  
 | 
      To compile this driver as a module, choose M here: the 
 | 
      module will be called pmic-keys. 
 | 
  
 | 
endif 
 |