linux/drivers/input/keyboard/Kconfig
<<
>>
Prefs
   1#
   2# Input core configuration
   3#
   4menuconfig INPUT_KEYBOARD
   5        bool "Keyboards" if EXPERT || !X86
   6        default y
   7        help
   8          Say Y here, and a list of supported keyboards will be displayed.
   9          This option doesn't affect the kernel.
  10
  11          If unsure, say Y.
  12
  13if INPUT_KEYBOARD
  14
  15config KEYBOARD_ADP5520
  16        tristate "Keypad Support for ADP5520 PMIC"
  17        depends on PMIC_ADP5520
  18        help
  19          This option enables support for the keypad scan matrix
  20          on Analog Devices ADP5520 PMICs.
  21
  22          To compile this driver as a module, choose M here: the module will
  23          be called adp5520-keys.
  24
  25config KEYBOARD_ADP5588
  26        tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander"
  27        depends on I2C
  28        help
  29          Say Y here if you want to use a ADP5588/87 attached to your
  30          system I2C bus.
  31
  32          To compile this driver as a module, choose M here: the
  33          module will be called adp5588-keys.
  34
  35config KEYBOARD_ADP5589
  36        tristate "ADP5589 I2C QWERTY Keypad and IO Expander"
  37        depends on I2C
  38        help
  39          Say Y here if you want to use a ADP5589 attached to your
  40          system I2C bus.
  41
  42          To compile this driver as a module, choose M here: the
  43          module will be called adp5589-keys.
  44
  45config KEYBOARD_AMIGA
  46        tristate "Amiga keyboard"
  47        depends on AMIGA
  48        help
  49          Say Y here if you are running Linux on any AMIGA and have a keyboard
  50          attached.
  51
  52          To compile this driver as a module, choose M here: the
  53          module will be called amikbd.
  54
  55config ATARI_KBD_CORE
  56        bool
  57
  58config KEYBOARD_ATARI
  59        tristate "Atari keyboard"
  60        depends on ATARI
  61        select ATARI_KBD_CORE
  62        help
  63          Say Y here if you are running Linux on any Atari and have a keyboard
  64          attached.
  65
  66          To compile this driver as a module, choose M here: the
  67          module will be called atakbd.
  68
  69config KEYBOARD_ATKBD
  70        tristate "AT keyboard" if EXPERT || !X86
  71        default y
  72        select SERIO
  73        select SERIO_LIBPS2
  74        select SERIO_I8042 if X86
  75        select SERIO_GSCPS2 if GSC
  76        help
  77          Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
  78          you'll need this, unless you have a different type keyboard (USB, ADB
  79          or other). This also works for AT and PS/2 keyboards connected over a
  80          PS/2 to serial converter.
  81
  82          If unsure, say Y.
  83
  84          To compile this driver as a module, choose M here: the
  85          module will be called atkbd.
  86
  87config KEYBOARD_ATKBD_HP_KEYCODES
  88        bool "Use HP keyboard scancodes"
  89        depends on PARISC && KEYBOARD_ATKBD
  90        default y
  91        help
  92          Say Y here if you have a PA-RISC machine and want to use an AT or
  93          PS/2 keyboard, and your keyboard uses keycodes that are specific to
  94          PA-RISC keyboards.
  95
  96          Say N if you use a standard keyboard.
  97
  98config KEYBOARD_ATKBD_RDI_KEYCODES
  99        bool "Use PrecisionBook keyboard scancodes"
 100        depends on KEYBOARD_ATKBD_HP_KEYCODES
 101        default n
 102        help
 103          If you have an RDI PrecisionBook, say Y here if you want to use its
 104          built-in keyboard (as opposed to an external keyboard).
 105
 106          The PrecisionBook has five keys that conflict with those used by most
 107          AT and PS/2 keyboards. These are as follows:
 108
 109            PrecisionBook    Standard AT or PS/2
 110
 111            F1               F12
 112            Left Ctrl        Left Alt
 113            Caps Lock        Left Ctrl
 114            Right Ctrl       Caps Lock
 115            Left             102nd key (the key to the right of Left Shift)
 116
 117          If you say N here, and use the PrecisionBook keyboard, then each key
 118          in the left-hand column will be interpreted as the corresponding key
 119          in the right-hand column.
 120
 121          If you say Y here, and use an external keyboard, then each key in the
 122          right-hand column will be interpreted as the key shown in the
 123          left-hand column.
 124
 125config KEYBOARD_QT1070
 126       tristate "Atmel AT42QT1070 Touch Sensor Chip"
 127       depends on I2C
 128       help
 129         Say Y here if you want to use Atmel AT42QT1070 QTouch
 130         Sensor chip as input device.
 131
 132         To compile this driver as a module, choose M here:
 133         the module will be called qt1070
 134
 135config KEYBOARD_QT2160
 136        tristate "Atmel AT42QT2160 Touch Sensor Chip"
 137        depends on I2C && EXPERIMENTAL
 138        help
 139          If you say yes here you get support for Atmel AT42QT2160 Touch
 140          Sensor chip as a keyboard input.
 141
 142          This driver can also be built as a module. If so, the module
 143          will be called qt2160.
 144
 145config KEYBOARD_BFIN
 146        tristate "Blackfin BF54x keypad support"
 147        depends on (BF54x && !BF544)
 148        help
 149          Say Y here if you want to use the BF54x keypad.
 150
 151          To compile this driver as a module, choose M here: the
 152          module will be called bf54x-keys.
 153
 154config KEYBOARD_LKKBD
 155        tristate "DECstation/VAXstation LK201/LK401 keyboard"
 156        select SERIO
 157        help
 158          Say Y here if you want to use a LK201 or LK401 style serial
 159          keyboard. This keyboard is also useable on PCs if you attach
 160          it with the inputattach program. The connector pinout is
 161          described within lkkbd.c.
 162
 163          To compile this driver as a module, choose M here: the
 164          module will be called lkkbd.
 165
 166config KEYBOARD_EP93XX
 167        tristate "EP93xx Matrix Keypad support"
 168        depends on ARCH_EP93XX
 169        help
 170          Say Y here to enable the matrix keypad on the Cirrus EP93XX.
 171
 172          To compile this driver as a module, choose M here: the
 173          module will be called ep93xx_keypad.
 174
 175config KEYBOARD_GPIO
 176        tristate "GPIO Buttons"
 177        depends on GENERIC_GPIO
 178        help
 179          This driver implements support for buttons connected
 180          to GPIO pins of various CPUs (and some other chips).
 181
 182          Say Y here if your device has buttons connected
 183          directly to such GPIO pins.  Your board-specific
 184          setup logic must also provide a platform device,
 185          with configuration data saying which GPIOs are used.
 186
 187          To compile this driver as a module, choose M here: the
 188          module will be called gpio_keys.
 189
 190config KEYBOARD_GPIO_POLLED
 191        tristate "Polled GPIO buttons"
 192        depends on GENERIC_GPIO
 193        select INPUT_POLLDEV
 194        help
 195          This driver implements support for buttons connected
 196          to GPIO pins that are not capable of generating interrupts.
 197
 198          Say Y here if your device has buttons connected
 199          directly to such GPIO pins.  Your board-specific
 200          setup logic must also provide a platform device,
 201          with configuration data saying which GPIOs are used.
 202
 203          To compile this driver as a module, choose M here: the
 204          module will be called gpio_keys_polled.
 205
 206config KEYBOARD_TCA6416
 207        tristate "TCA6416/TCA6408A Keypad Support"
 208        depends on I2C
 209        help
 210          This driver implements basic keypad functionality
 211          for keys connected through TCA6416/TCA6408A IO expanders.
 212
 213          Say Y here if your device has keys connected to
 214          TCA6416/TCA6408A IO expander. Your board-specific setup logic
 215          must also provide pin-mask details(of which TCA6416 pins
 216          are used for keypad).
 217
 218          If enabled the entire TCA6416 device will be managed through
 219          this driver.
 220
 221          To compile this driver as a module, choose M here: the
 222          module will be called tca6416_keypad.
 223
 224config KEYBOARD_MATRIX
 225        tristate "GPIO driven matrix keypad support"
 226        depends on GENERIC_GPIO
 227        help
 228          Enable support for GPIO driven matrix keypad.
 229
 230          To compile this driver as a module, choose M here: the
 231          module will be called matrix_keypad.
 232
 233config KEYBOARD_HIL_OLD
 234        tristate "HP HIL keyboard support (simple driver)"
 235        depends on GSC || HP300
 236        default y
 237        help
 238          The "Human Interface Loop" is a older, 8-channel USB-like
 239          controller used in several Hewlett Packard models. This driver
 240          was adapted from the one written for m68k/hp300, and implements
 241          support for a keyboard attached to the HIL port, but not for
 242          any other types of HIL input devices like mice or tablets.
 243          However, it has been thoroughly tested and is stable.
 244
 245          If you want full HIL support including support for multiple
 246          keyboards, mice, and tablets, you have to enable the
 247          "HP System Device Controller i8042 Support" in the input/serio
 248          submenu.
 249
 250config KEYBOARD_HIL
 251        tristate "HP HIL keyboard/pointer support"
 252        depends on GSC || HP300
 253        default y
 254        select HP_SDC
 255        select HIL_MLC
 256        select SERIO
 257        help
 258          The "Human Interface Loop" is a older, 8-channel USB-like
 259          controller used in several Hewlett Packard models.
 260          This driver implements support for HIL-keyboards and pointing
 261          devices (mice, tablets, touchscreens) attached
 262          to your machine, so normally you should say Y here.
 263
 264config KEYBOARD_HP6XX
 265        tristate "HP Jornada 6xx keyboard"
 266        depends on SH_HP6XX
 267        select INPUT_POLLDEV
 268        help
 269          Say Y here if you have a HP Jornada 620/660/680/690 and want to
 270          support the built-in keyboard.
 271
 272          To compile this driver as a module, choose M here: the
 273          module will be called jornada680_kbd.
 274
 275config KEYBOARD_HP7XX
 276        tristate "HP Jornada 7xx keyboard"
 277        depends on SA1100_JORNADA720_SSP && SA1100_SSP
 278        help
 279          Say Y here if you have a HP Jornada 710/720/728 and want to
 280          support the built-in keyboard.
 281
 282          To compile this driver as a module, choose M here: the
 283          module will be called jornada720_kbd.
 284
 285config KEYBOARD_LM8323
 286        tristate "LM8323 keypad chip"
 287        depends on I2C
 288        depends on LEDS_CLASS
 289        help
 290          If you say yes here you get support for the National Semiconductor
 291          LM8323 keypad controller.
 292
 293          To compile this driver as a module, choose M here: the
 294          module will be called lm8323.
 295
 296config KEYBOARD_LOCOMO
 297        tristate "LoCoMo Keyboard Support"
 298        depends on SHARP_LOCOMO
 299        help
 300          Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA
 301
 302          To compile this driver as a module, choose M here: the
 303          module will be called locomokbd.
 304
 305config KEYBOARD_MAPLE
 306        tristate "Maple bus keyboard"
 307        depends on SH_DREAMCAST && MAPLE
 308        help
 309          Say Y here if you have a Dreamcast console running Linux and have
 310          a keyboard attached to its Maple bus.
 311
 312          To compile this driver as a module, choose M here: the
 313          module will be called maple_keyb.
 314
 315config KEYBOARD_MAX7359
 316        tristate "Maxim MAX7359 Key Switch Controller"
 317        depends on I2C
 318        help
 319          If you say yes here you get support for the Maxim MAX7359 Key
 320          Switch Controller chip. This providers microprocessors with
 321          management of up to 64 key switches
 322
 323          To compile this driver as a module, choose M here: the
 324          module will be called max7359_keypad.
 325
 326config KEYBOARD_MCS
 327        tristate "MELFAS MCS Touchkey"
 328        depends on I2C
 329        help
 330          Say Y here if you have the MELFAS MCS5000/5080 touchkey controller
 331          chip in your system.
 332
 333          If unsure, say N.
 334
 335          To compile this driver as a module, choose M here: the
 336          module will be called mcs_touchkey.
 337
 338config KEYBOARD_MPR121
 339        tristate "Freescale MPR121 Touchkey"
 340        depends on I2C
 341        help
 342          Say Y here if you have Freescale MPR121 touchkey controller
 343          chip in your system.
 344
 345          If unsure, say N.
 346
 347          To compile this driver as a module, choose M here: the
 348          module will be called mpr121_touchkey.
 349
 350config KEYBOARD_IMX
 351        tristate "IMX keypad support"
 352        depends on ARCH_MXC
 353        help
 354          Enable support for IMX keypad port.
 355
 356          To compile this driver as a module, choose M here: the
 357          module will be called imx_keypad.
 358
 359config KEYBOARD_NEWTON
 360        tristate "Newton keyboard"
 361        select SERIO
 362        help
 363          Say Y here if you have a Newton keyboard on a serial port.
 364
 365          To compile this driver as a module, choose M here: the
 366          module will be called newtonkbd.
 367
 368config KEYBOARD_NOMADIK
 369        tristate "ST-Ericsson Nomadik SKE keyboard"
 370        depends on PLAT_NOMADIK
 371        help
 372          Say Y here if you want to use a keypad provided on the SKE controller
 373          used on the Ux500 and Nomadik platforms
 374
 375          To compile this driver as a module, choose M here: the
 376          module will be called nmk-ske-keypad.
 377
 378config KEYBOARD_TEGRA
 379        tristate "NVIDIA Tegra internal matrix keyboard controller support"
 380        depends on ARCH_TEGRA
 381        help
 382          Say Y here if you want to use a matrix keyboard connected directly
 383          to the internal keyboard controller on Tegra SoCs.
 384
 385          To compile this driver as a module, choose M here: the
 386          module will be called tegra-kbc.
 387
 388config KEYBOARD_OPENCORES
 389        tristate "OpenCores Keyboard Controller"
 390        help
 391          Say Y here if you want to use the OpenCores Keyboard Controller
 392          http://www.opencores.org/project,keyboardcontroller
 393
 394          To compile this driver as a module, choose M here; the
 395          module will be called opencores-kbd.
 396
 397config KEYBOARD_PXA27x
 398        tristate "PXA27x/PXA3xx keypad support"
 399        depends on PXA27x || PXA3xx || ARCH_MMP
 400        help
 401          Enable support for PXA27x/PXA3xx keypad controller.
 402
 403          To compile this driver as a module, choose M here: the
 404          module will be called pxa27x_keypad.
 405
 406config KEYBOARD_PXA930_ROTARY
 407        tristate "PXA930/PXA935 Enhanced Rotary Controller Support"
 408        depends on CPU_PXA930 || CPU_PXA935
 409        help
 410          Enable support for PXA930/PXA935 Enhanced Rotary Controller.
 411
 412          To compile this driver as a module, choose M here: the
 413          module will be called pxa930_rotary.
 414
 415config KEYBOARD_PMIC8XXX
 416        tristate "Qualcomm PMIC8XXX keypad support"
 417        depends on MFD_PM8XXX
 418        help
 419          Say Y here if you want to enable the driver for the PMIC8XXX
 420          keypad provided as a reference design from Qualcomm. This is intended
 421          to support upto 18x8 matrix based keypad design.
 422
 423          To compile this driver as a module, choose M here: the module will
 424          be called pmic8xxx-keypad.
 425
 426config KEYBOARD_SAMSUNG
 427        tristate "Samsung keypad support"
 428        depends on SAMSUNG_DEV_KEYPAD
 429        help
 430          Say Y here if you want to use the Samsung keypad.
 431
 432          To compile this driver as a module, choose M here: the
 433          module will be called samsung-keypad.
 434
 435config KEYBOARD_STOWAWAY
 436        tristate "Stowaway keyboard"
 437        select SERIO
 438        help
 439          Say Y here if you have a Stowaway keyboard on a serial port.
 440          Stowaway compatible keyboards like Dicota Input-PDA keyboard
 441          are also supported by this driver.
 442
 443          To compile this driver as a module, choose M here: the
 444          module will be called stowaway.
 445
 446config KEYBOARD_SUNKBD
 447        tristate "Sun Type 4 and Type 5 keyboard"
 448        select SERIO
 449        help
 450          Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
 451          connected either to the Sun keyboard connector or to an serial
 452          (RS-232) port via a simple adapter.
 453
 454          To compile this driver as a module, choose M here: the
 455          module will be called sunkbd.
 456
 457config KEYBOARD_SH_KEYSC
 458        tristate "SuperH KEYSC keypad support"
 459        depends on SUPERH || ARCH_SHMOBILE
 460        help
 461          Say Y here if you want to use a keypad attached to the KEYSC block
 462          on SuperH processors such as sh7722 and sh7343.
 463
 464          To compile this driver as a module, choose M here: the
 465          module will be called sh_keysc.
 466
 467config KEYBOARD_STMPE
 468        tristate "STMPE keypad support"
 469        depends on MFD_STMPE
 470        help
 471          Say Y here if you want to use the keypad controller on STMPE I/O
 472          expanders.
 473
 474          To compile this driver as a module, choose M here: the module will be
 475          called stmpe-keypad.
 476
 477config KEYBOARD_DAVINCI
 478        tristate "TI DaVinci Key Scan"
 479        depends on ARCH_DAVINCI_DM365
 480        help
 481          Say Y to enable keypad module support for the TI DaVinci
 482          platforms (DM365).
 483
 484          To compile this driver as a module, choose M here: the
 485          module will be called davinci_keyscan.
 486
 487config KEYBOARD_OMAP
 488        tristate "TI OMAP keypad support"
 489        depends on (ARCH_OMAP1 || ARCH_OMAP2)
 490        help
 491          Say Y here if you want to use the OMAP keypad.
 492
 493          To compile this driver as a module, choose M here: the
 494          module will be called omap-keypad.
 495
 496config KEYBOARD_OMAP4
 497        tristate "TI OMAP4 keypad support"
 498        depends on ARCH_OMAP4
 499        help
 500          Say Y here if you want to use the OMAP4 keypad.
 501
 502          To compile this driver as a module, choose M here: the
 503          module will be called omap4-keypad.
 504
 505config KEYBOARD_SPEAR
 506        tristate "ST SPEAR keyboard support"
 507        depends on PLAT_SPEAR
 508        help
 509          Say Y here if you want to use the SPEAR keyboard.
 510
 511          To compile this driver as a module, choose M here: the
 512          module will be called spear-keboard.
 513
 514config KEYBOARD_TC3589X
 515        tristate "TC3589X Keypad support"
 516        depends on MFD_TC3589X
 517        help
 518          Say Y here if you want to use the keypad controller on
 519          TC35892/3 I/O expander.
 520
 521          To compile this driver as a module, choose M here: the
 522          module will be called tc3589x-keypad.
 523
 524config KEYBOARD_TNETV107X
 525        tristate "TI TNETV107X keypad support"
 526        depends on ARCH_DAVINCI_TNETV107X
 527        help
 528          Say Y here if you want to use the TNETV107X keypad.
 529
 530          To compile this driver as a module, choose M here: the
 531          module will be called tnetv107x-keypad.
 532
 533config KEYBOARD_TWL4030
 534        tristate "TI TWL4030/TWL5030/TPS659x0 keypad support"
 535        depends on TWL4030_CORE
 536        help
 537          Say Y here if your board use the keypad controller on
 538          TWL4030 family chips.  It's safe to say enable this
 539          even on boards that don't use the keypad controller.
 540
 541          To compile this driver as a module, choose M here: the
 542          module will be called twl4030_keypad.
 543
 544config KEYBOARD_XTKBD
 545        tristate "XT keyboard"
 546        select SERIO
 547        help
 548          Say Y here if you want to use the old IBM PC/XT keyboard (or
 549          compatible) on your system. This is only possible with a
 550          parallel port keyboard adapter, you cannot connect it to the
 551          keyboard port on a PC that runs Linux.
 552
 553          To compile this driver as a module, choose M here: the
 554          module will be called xtkbd.
 555
 556config KEYBOARD_W90P910
 557        tristate "W90P910 Matrix Keypad support"
 558        depends on ARCH_W90X900
 559        help
 560          Say Y here to enable the matrix keypad on evaluation board
 561          based on W90P910.
 562
 563          To compile this driver as a module, choose M here: the
 564          module will be called w90p910_keypad.
 565
 566endif
 567