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 "ADP5585/ADP5589 I2C QWERTY Keypad and IO Expander" 37 depends on I2C 38 help 39 Say Y here if you want to use a ADP5585/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_TCA8418 225 tristate "TCA8418 Keypad Support" 226 depends on I2C 227 help 228 This driver implements basic keypad functionality 229 for keys connected through TCA8418 keypad decoder. 230 231 Say Y here if your device has keys connected to 232 TCA8418 keypad decoder. 233 234 If enabled the complete TCA8418 device will be managed through 235 this driver. 236 237 To compile this driver as a module, choose M here: the 238 module will be called tca8418_keypad. 239 240config KEYBOARD_MATRIX 241 tristate "GPIO driven matrix keypad support" 242 depends on GENERIC_GPIO 243 help 244 Enable support for GPIO driven matrix keypad. 245 246 To compile this driver as a module, choose M here: the 247 module will be called matrix_keypad. 248 249config KEYBOARD_HIL_OLD 250 tristate "HP HIL keyboard support (simple driver)" 251 depends on GSC || HP300 252 default y 253 help 254 The "Human Interface Loop" is a older, 8-channel USB-like 255 controller used in several Hewlett Packard models. This driver 256 was adapted from the one written for m68k/hp300, and implements 257 support for a keyboard attached to the HIL port, but not for 258 any other types of HIL input devices like mice or tablets. 259 However, it has been thoroughly tested and is stable. 260 261 If you want full HIL support including support for multiple 262 keyboards, mice, and tablets, you have to enable the 263 "HP System Device Controller i8042 Support" in the input/serio 264 submenu. 265 266config KEYBOARD_HIL 267 tristate "HP HIL keyboard/pointer support" 268 depends on GSC || HP300 269 default y 270 select HP_SDC 271 select HIL_MLC 272 select SERIO 273 help 274 The "Human Interface Loop" is a older, 8-channel USB-like 275 controller used in several Hewlett Packard models. 276 This driver implements support for HIL-keyboards and pointing 277 devices (mice, tablets, touchscreens) attached 278 to your machine, so normally you should say Y here. 279 280config KEYBOARD_HP6XX 281 tristate "HP Jornada 6xx keyboard" 282 depends on SH_HP6XX 283 select INPUT_POLLDEV 284 help 285 Say Y here if you have a HP Jornada 620/660/680/690 and want to 286 support the built-in keyboard. 287 288 To compile this driver as a module, choose M here: the 289 module will be called jornada680_kbd. 290 291config KEYBOARD_HP7XX 292 tristate "HP Jornada 7xx keyboard" 293 depends on SA1100_JORNADA720_SSP && SA1100_SSP 294 help 295 Say Y here if you have a HP Jornada 710/720/728 and want to 296 support the built-in keyboard. 297 298 To compile this driver as a module, choose M here: the 299 module will be called jornada720_kbd. 300 301config KEYBOARD_LM8323 302 tristate "LM8323 keypad chip" 303 depends on I2C 304 depends on LEDS_CLASS 305 help 306 If you say yes here you get support for the National Semiconductor 307 LM8323 keypad controller. 308 309 To compile this driver as a module, choose M here: the 310 module will be called lm8323. 311 312config KEYBOARD_LOCOMO 313 tristate "LoCoMo Keyboard Support" 314 depends on SHARP_LOCOMO 315 help 316 Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA 317 318 To compile this driver as a module, choose M here: the 319 module will be called locomokbd. 320 321config KEYBOARD_MAPLE 322 tristate "Maple bus keyboard" 323 depends on SH_DREAMCAST && MAPLE 324 help 325 Say Y here if you have a Dreamcast console running Linux and have 326 a keyboard attached to its Maple bus. 327 328 To compile this driver as a module, choose M here: the 329 module will be called maple_keyb. 330 331config KEYBOARD_MAX7359 332 tristate "Maxim MAX7359 Key Switch Controller" 333 depends on I2C 334 help 335 If you say yes here you get support for the Maxim MAX7359 Key 336 Switch Controller chip. This providers microprocessors with 337 management of up to 64 key switches 338 339 To compile this driver as a module, choose M here: the 340 module will be called max7359_keypad. 341 342config KEYBOARD_MCS 343 tristate "MELFAS MCS Touchkey" 344 depends on I2C 345 help 346 Say Y here if you have the MELFAS MCS5000/5080 touchkey controller 347 chip in your system. 348 349 If unsure, say N. 350 351 To compile this driver as a module, choose M here: the 352 module will be called mcs_touchkey. 353 354config KEYBOARD_MPR121 355 tristate "Freescale MPR121 Touchkey" 356 depends on I2C 357 help 358 Say Y here if you have Freescale MPR121 touchkey controller 359 chip in your system. 360 361 If unsure, say N. 362 363 To compile this driver as a module, choose M here: the 364 module will be called mpr121_touchkey. 365 366config KEYBOARD_IMX 367 tristate "IMX keypad support" 368 depends on ARCH_MXC 369 help 370 Enable support for IMX keypad port. 371 372 To compile this driver as a module, choose M here: the 373 module will be called imx_keypad. 374 375config KEYBOARD_NEWTON 376 tristate "Newton keyboard" 377 select SERIO 378 help 379 Say Y here if you have a Newton keyboard on a serial port. 380 381 To compile this driver as a module, choose M here: the 382 module will be called newtonkbd. 383 384config KEYBOARD_NOMADIK 385 tristate "ST-Ericsson Nomadik SKE keyboard" 386 depends on PLAT_NOMADIK 387 help 388 Say Y here if you want to use a keypad provided on the SKE controller 389 used on the Ux500 and Nomadik platforms 390 391 To compile this driver as a module, choose M here: the 392 module will be called nmk-ske-keypad. 393 394config KEYBOARD_TEGRA 395 tristate "NVIDIA Tegra internal matrix keyboard controller support" 396 depends on ARCH_TEGRA 397 help 398 Say Y here if you want to use a matrix keyboard connected directly 399 to the internal keyboard controller on Tegra SoCs. 400 401 To compile this driver as a module, choose M here: the 402 module will be called tegra-kbc. 403 404config KEYBOARD_OPENCORES 405 tristate "OpenCores Keyboard Controller" 406 help 407 Say Y here if you want to use the OpenCores Keyboard Controller 408 http://www.opencores.org/project,keyboardcontroller 409 410 To compile this driver as a module, choose M here; the 411 module will be called opencores-kbd. 412 413config KEYBOARD_PXA27x 414 tristate "PXA27x/PXA3xx keypad support" 415 depends on PXA27x || PXA3xx || ARCH_MMP 416 help 417 Enable support for PXA27x/PXA3xx keypad controller. 418 419 To compile this driver as a module, choose M here: the 420 module will be called pxa27x_keypad. 421 422config KEYBOARD_PXA930_ROTARY 423 tristate "PXA930/PXA935 Enhanced Rotary Controller Support" 424 depends on CPU_PXA930 || CPU_PXA935 425 help 426 Enable support for PXA930/PXA935 Enhanced Rotary Controller. 427 428 To compile this driver as a module, choose M here: the 429 module will be called pxa930_rotary. 430 431config KEYBOARD_PMIC8XXX 432 tristate "Qualcomm PMIC8XXX keypad support" 433 depends on MFD_PM8XXX 434 help 435 Say Y here if you want to enable the driver for the PMIC8XXX 436 keypad provided as a reference design from Qualcomm. This is intended 437 to support upto 18x8 matrix based keypad design. 438 439 To compile this driver as a module, choose M here: the module will 440 be called pmic8xxx-keypad. 441 442config KEYBOARD_SAMSUNG 443 tristate "Samsung keypad support" 444 depends on SAMSUNG_DEV_KEYPAD 445 help 446 Say Y here if you want to use the Samsung keypad. 447 448 To compile this driver as a module, choose M here: the 449 module will be called samsung-keypad. 450 451config KEYBOARD_STOWAWAY 452 tristate "Stowaway keyboard" 453 select SERIO 454 help 455 Say Y here if you have a Stowaway keyboard on a serial port. 456 Stowaway compatible keyboards like Dicota Input-PDA keyboard 457 are also supported by this driver. 458 459 To compile this driver as a module, choose M here: the 460 module will be called stowaway. 461 462config KEYBOARD_SUNKBD 463 tristate "Sun Type 4 and Type 5 keyboard" 464 select SERIO 465 help 466 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 467 connected either to the Sun keyboard connector or to an serial 468 (RS-232) port via a simple adapter. 469 470 To compile this driver as a module, choose M here: the 471 module will be called sunkbd. 472 473config KEYBOARD_SH_KEYSC 474 tristate "SuperH KEYSC keypad support" 475 depends on SUPERH || ARCH_SHMOBILE 476 help 477 Say Y here if you want to use a keypad attached to the KEYSC block 478 on SuperH processors such as sh7722 and sh7343. 479 480 To compile this driver as a module, choose M here: the 481 module will be called sh_keysc. 482 483config KEYBOARD_STMPE 484 tristate "STMPE keypad support" 485 depends on MFD_STMPE 486 help 487 Say Y here if you want to use the keypad controller on STMPE I/O 488 expanders. 489 490 To compile this driver as a module, choose M here: the module will be 491 called stmpe-keypad. 492 493config KEYBOARD_DAVINCI 494 tristate "TI DaVinci Key Scan" 495 depends on ARCH_DAVINCI_DM365 496 help 497 Say Y to enable keypad module support for the TI DaVinci 498 platforms (DM365). 499 500 To compile this driver as a module, choose M here: the 501 module will be called davinci_keyscan. 502 503config KEYBOARD_OMAP 504 tristate "TI OMAP keypad support" 505 depends on (ARCH_OMAP1 || ARCH_OMAP2) 506 help 507 Say Y here if you want to use the OMAP keypad. 508 509 To compile this driver as a module, choose M here: the 510 module will be called omap-keypad. 511 512config KEYBOARD_OMAP4 513 tristate "TI OMAP4 keypad support" 514 depends on ARCH_OMAP4 515 help 516 Say Y here if you want to use the OMAP4 keypad. 517 518 To compile this driver as a module, choose M here: the 519 module will be called omap4-keypad. 520 521config KEYBOARD_SPEAR 522 tristate "ST SPEAR keyboard support" 523 depends on PLAT_SPEAR 524 help 525 Say Y here if you want to use the SPEAR keyboard. 526 527 To compile this driver as a module, choose M here: the 528 module will be called spear-keboard. 529 530config KEYBOARD_TC3589X 531 tristate "TC3589X Keypad support" 532 depends on MFD_TC3589X 533 help 534 Say Y here if you want to use the keypad controller on 535 TC35892/3 I/O expander. 536 537 To compile this driver as a module, choose M here: the 538 module will be called tc3589x-keypad. 539 540config KEYBOARD_TNETV107X 541 tristate "TI TNETV107X keypad support" 542 depends on ARCH_DAVINCI_TNETV107X 543 help 544 Say Y here if you want to use the TNETV107X keypad. 545 546 To compile this driver as a module, choose M here: the 547 module will be called tnetv107x-keypad. 548 549config KEYBOARD_TWL4030 550 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 551 depends on TWL4030_CORE 552 help 553 Say Y here if your board use the keypad controller on 554 TWL4030 family chips. It's safe to say enable this 555 even on boards that don't use the keypad controller. 556 557 To compile this driver as a module, choose M here: the 558 module will be called twl4030_keypad. 559 560config KEYBOARD_XTKBD 561 tristate "XT keyboard" 562 select SERIO 563 help 564 Say Y here if you want to use the old IBM PC/XT keyboard (or 565 compatible) on your system. This is only possible with a 566 parallel port keyboard adapter, you cannot connect it to the 567 keyboard port on a PC that runs Linux. 568 569 To compile this driver as a module, choose M here: the 570 module will be called xtkbd. 571 572config KEYBOARD_W90P910 573 tristate "W90P910 Matrix Keypad support" 574 depends on ARCH_W90X900 575 help 576 Say Y here to enable the matrix keypad on evaluation board 577 based on W90P910. 578 579 To compile this driver as a module, choose M here: the 580 module will be called w90p910_keypad. 581 582endif 583