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