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_SAMSUNG 416 tristate "Samsung keypad support" 417 depends on SAMSUNG_DEV_KEYPAD 418 help 419 Say Y here if you want to use the Samsung keypad. 420 421 To compile this driver as a module, choose M here: the 422 module will be called samsung-keypad. 423 424config KEYBOARD_STOWAWAY 425 tristate "Stowaway keyboard" 426 select SERIO 427 help 428 Say Y here if you have a Stowaway keyboard on a serial port. 429 Stowaway compatible keyboards like Dicota Input-PDA keyboard 430 are also supported by this driver. 431 432 To compile this driver as a module, choose M here: the 433 module will be called stowaway. 434 435config KEYBOARD_SUNKBD 436 tristate "Sun Type 4 and Type 5 keyboard" 437 select SERIO 438 help 439 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 440 connected either to the Sun keyboard connector or to an serial 441 (RS-232) port via a simple adapter. 442 443 To compile this driver as a module, choose M here: the 444 module will be called sunkbd. 445 446config KEYBOARD_SH_KEYSC 447 tristate "SuperH KEYSC keypad support" 448 depends on SUPERH || ARCH_SHMOBILE 449 help 450 Say Y here if you want to use a keypad attached to the KEYSC block 451 on SuperH processors such as sh7722 and sh7343. 452 453 To compile this driver as a module, choose M here: the 454 module will be called sh_keysc. 455 456config KEYBOARD_STMPE 457 tristate "STMPE keypad support" 458 depends on MFD_STMPE 459 help 460 Say Y here if you want to use the keypad controller on STMPE I/O 461 expanders. 462 463 To compile this driver as a module, choose M here: the module will be 464 called stmpe-keypad. 465 466config KEYBOARD_DAVINCI 467 tristate "TI DaVinci Key Scan" 468 depends on ARCH_DAVINCI_DM365 469 help 470 Say Y to enable keypad module support for the TI DaVinci 471 platforms (DM365). 472 473 To compile this driver as a module, choose M here: the 474 module will be called davinci_keyscan. 475 476config KEYBOARD_OMAP 477 tristate "TI OMAP keypad support" 478 depends on (ARCH_OMAP1 || ARCH_OMAP2) 479 help 480 Say Y here if you want to use the OMAP keypad. 481 482 To compile this driver as a module, choose M here: the 483 module will be called omap-keypad. 484 485config KEYBOARD_OMAP4 486 tristate "TI OMAP4 keypad support" 487 depends on ARCH_OMAP4 488 help 489 Say Y here if you want to use the OMAP4 keypad. 490 491 To compile this driver as a module, choose M here: the 492 module will be called omap4-keypad. 493 494config KEYBOARD_SPEAR 495 tristate "ST SPEAR keyboard support" 496 depends on PLAT_SPEAR 497 help 498 Say Y here if you want to use the SPEAR keyboard. 499 500 To compile this driver as a module, choose M here: the 501 module will be called spear-keboard. 502 503config KEYBOARD_TC3589X 504 tristate "TC3589X Keypad support" 505 depends on MFD_TC3589X 506 help 507 Say Y here if you want to use the keypad controller on 508 TC35892/3 I/O expander. 509 510 To compile this driver as a module, choose M here: the 511 module will be called tc3589x-keypad. 512 513config KEYBOARD_TNETV107X 514 tristate "TI TNETV107X keypad support" 515 depends on ARCH_DAVINCI_TNETV107X 516 help 517 Say Y here if you want to use the TNETV107X keypad. 518 519 To compile this driver as a module, choose M here: the 520 module will be called tnetv107x-keypad. 521 522config KEYBOARD_TWL4030 523 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 524 depends on TWL4030_CORE 525 help 526 Say Y here if your board use the keypad controller on 527 TWL4030 family chips. It's safe to say enable this 528 even on boards that don't use the keypad controller. 529 530 To compile this driver as a module, choose M here: the 531 module will be called twl4030_keypad. 532 533config KEYBOARD_XTKBD 534 tristate "XT keyboard" 535 select SERIO 536 help 537 Say Y here if you want to use the old IBM PC/XT keyboard (or 538 compatible) on your system. This is only possible with a 539 parallel port keyboard adapter, you cannot connect it to the 540 keyboard port on a PC that runs Linux. 541 542 To compile this driver as a module, choose M here: the 543 module will be called xtkbd. 544 545config KEYBOARD_W90P910 546 tristate "W90P910 Matrix Keypad support" 547 depends on ARCH_W90X900 548 help 549 Say Y here to enable the matrix keypad on evaluation board 550 based on W90P910. 551 552 To compile this driver as a module, choose M here: the 553 module will be called w90p910_keypad. 554 555endif 556