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_LM8333 313 tristate "LM8333 keypad chip" 314 depends on I2C 315 help 316 If you say yes here you get support for the National Semiconductor 317 LM8333 keypad controller. 318 319 To compile this driver as a module, choose M here: the 320 module will be called lm8333. 321 322config KEYBOARD_LOCOMO 323 tristate "LoCoMo Keyboard Support" 324 depends on SHARP_LOCOMO 325 help 326 Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA 327 328 To compile this driver as a module, choose M here: the 329 module will be called locomokbd. 330 331config KEYBOARD_MAPLE 332 tristate "Maple bus keyboard" 333 depends on SH_DREAMCAST && MAPLE 334 help 335 Say Y here if you have a Dreamcast console running Linux and have 336 a keyboard attached to its Maple bus. 337 338 To compile this driver as a module, choose M here: the 339 module will be called maple_keyb. 340 341config KEYBOARD_MAX7359 342 tristate "Maxim MAX7359 Key Switch Controller" 343 depends on I2C 344 help 345 If you say yes here you get support for the Maxim MAX7359 Key 346 Switch Controller chip. This providers microprocessors with 347 management of up to 64 key switches 348 349 To compile this driver as a module, choose M here: the 350 module will be called max7359_keypad. 351 352config KEYBOARD_MCS 353 tristate "MELFAS MCS Touchkey" 354 depends on I2C 355 help 356 Say Y here if you have the MELFAS MCS5000/5080 touchkey controller 357 chip in your system. 358 359 If unsure, say N. 360 361 To compile this driver as a module, choose M here: the 362 module will be called mcs_touchkey. 363 364config KEYBOARD_MPR121 365 tristate "Freescale MPR121 Touchkey" 366 depends on I2C 367 help 368 Say Y here if you have Freescale MPR121 touchkey controller 369 chip in your system. 370 371 If unsure, say N. 372 373 To compile this driver as a module, choose M here: the 374 module will be called mpr121_touchkey. 375 376config KEYBOARD_IMX 377 tristate "IMX keypad support" 378 depends on ARCH_MXC 379 help 380 Enable support for IMX keypad port. 381 382 To compile this driver as a module, choose M here: the 383 module will be called imx_keypad. 384 385config KEYBOARD_NEWTON 386 tristate "Newton keyboard" 387 select SERIO 388 help 389 Say Y here if you have a Newton keyboard on a serial port. 390 391 To compile this driver as a module, choose M here: the 392 module will be called newtonkbd. 393 394config KEYBOARD_NOMADIK 395 tristate "ST-Ericsson Nomadik SKE keyboard" 396 depends on PLAT_NOMADIK 397 help 398 Say Y here if you want to use a keypad provided on the SKE controller 399 used on the Ux500 and Nomadik platforms 400 401 To compile this driver as a module, choose M here: the 402 module will be called nmk-ske-keypad. 403 404config KEYBOARD_TEGRA 405 tristate "NVIDIA Tegra internal matrix keyboard controller support" 406 depends on ARCH_TEGRA 407 select INPUT_OF_MATRIX_KEYMAP if USE_OF 408 help 409 Say Y here if you want to use a matrix keyboard connected directly 410 to the internal keyboard controller on Tegra SoCs. 411 412 To compile this driver as a module, choose M here: the 413 module will be called tegra-kbc. 414 415config KEYBOARD_OPENCORES 416 tristate "OpenCores Keyboard Controller" 417 help 418 Say Y here if you want to use the OpenCores Keyboard Controller 419 http://www.opencores.org/project,keyboardcontroller 420 421 To compile this driver as a module, choose M here; the 422 module will be called opencores-kbd. 423 424config KEYBOARD_PXA27x 425 tristate "PXA27x/PXA3xx keypad support" 426 depends on PXA27x || PXA3xx || ARCH_MMP 427 help 428 Enable support for PXA27x/PXA3xx keypad controller. 429 430 To compile this driver as a module, choose M here: the 431 module will be called pxa27x_keypad. 432 433config KEYBOARD_PXA930_ROTARY 434 tristate "PXA930/PXA935 Enhanced Rotary Controller Support" 435 depends on CPU_PXA930 || CPU_PXA935 436 help 437 Enable support for PXA930/PXA935 Enhanced Rotary Controller. 438 439 To compile this driver as a module, choose M here: the 440 module will be called pxa930_rotary. 441 442config KEYBOARD_PMIC8XXX 443 tristate "Qualcomm PMIC8XXX keypad support" 444 depends on MFD_PM8XXX 445 help 446 Say Y here if you want to enable the driver for the PMIC8XXX 447 keypad provided as a reference design from Qualcomm. This is intended 448 to support upto 18x8 matrix based keypad design. 449 450 To compile this driver as a module, choose M here: the module will 451 be called pmic8xxx-keypad. 452 453config KEYBOARD_SAMSUNG 454 tristate "Samsung keypad support" 455 depends on HAVE_CLK 456 help 457 Say Y here if you want to use the keypad on your Samsung mobile 458 device. 459 460 To compile this driver as a module, choose M here: the 461 module will be called samsung-keypad. 462 463config KEYBOARD_STOWAWAY 464 tristate "Stowaway keyboard" 465 select SERIO 466 help 467 Say Y here if you have a Stowaway keyboard on a serial port. 468 Stowaway compatible keyboards like Dicota Input-PDA keyboard 469 are also supported by this driver. 470 471 To compile this driver as a module, choose M here: the 472 module will be called stowaway. 473 474config KEYBOARD_SUNKBD 475 tristate "Sun Type 4 and Type 5 keyboard" 476 select SERIO 477 help 478 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 479 connected either to the Sun keyboard connector or to an serial 480 (RS-232) port via a simple adapter. 481 482 To compile this driver as a module, choose M here: the 483 module will be called sunkbd. 484 485config KEYBOARD_SH_KEYSC 486 tristate "SuperH KEYSC keypad support" 487 depends on SUPERH || ARCH_SHMOBILE 488 help 489 Say Y here if you want to use a keypad attached to the KEYSC block 490 on SuperH processors such as sh7722 and sh7343. 491 492 To compile this driver as a module, choose M here: the 493 module will be called sh_keysc. 494 495config KEYBOARD_STMPE 496 tristate "STMPE keypad support" 497 depends on MFD_STMPE 498 help 499 Say Y here if you want to use the keypad controller on STMPE I/O 500 expanders. 501 502 To compile this driver as a module, choose M here: the module will be 503 called stmpe-keypad. 504 505config KEYBOARD_DAVINCI 506 tristate "TI DaVinci Key Scan" 507 depends on ARCH_DAVINCI_DM365 508 help 509 Say Y to enable keypad module support for the TI DaVinci 510 platforms (DM365). 511 512 To compile this driver as a module, choose M here: the 513 module will be called davinci_keyscan. 514 515config KEYBOARD_OMAP 516 tristate "TI OMAP keypad support" 517 depends on (ARCH_OMAP1 || ARCH_OMAP2) 518 help 519 Say Y here if you want to use the OMAP keypad. 520 521 To compile this driver as a module, choose M here: the 522 module will be called omap-keypad. 523 524config KEYBOARD_OMAP4 525 tristate "TI OMAP4 keypad support" 526 help 527 Say Y here if you want to use the OMAP4 keypad. 528 529 To compile this driver as a module, choose M here: the 530 module will be called omap4-keypad. 531 532config KEYBOARD_SPEAR 533 tristate "ST SPEAR keyboard support" 534 depends on PLAT_SPEAR 535 help 536 Say Y here if you want to use the SPEAR keyboard. 537 538 To compile this driver as a module, choose M here: the 539 module will be called spear-keboard. 540 541config KEYBOARD_TC3589X 542 tristate "TC3589X Keypad support" 543 depends on MFD_TC3589X 544 help 545 Say Y here if you want to use the keypad controller on 546 TC35892/3 I/O expander. 547 548 To compile this driver as a module, choose M here: the 549 module will be called tc3589x-keypad. 550 551config KEYBOARD_TNETV107X 552 tristate "TI TNETV107X keypad support" 553 depends on ARCH_DAVINCI_TNETV107X 554 help 555 Say Y here if you want to use the TNETV107X keypad. 556 557 To compile this driver as a module, choose M here: the 558 module will be called tnetv107x-keypad. 559 560config KEYBOARD_TWL4030 561 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 562 depends on TWL4030_CORE 563 help 564 Say Y here if your board use the keypad controller on 565 TWL4030 family chips. It's safe to say enable this 566 even on boards that don't use the keypad controller. 567 568 To compile this driver as a module, choose M here: the 569 module will be called twl4030_keypad. 570 571config KEYBOARD_XTKBD 572 tristate "XT keyboard" 573 select SERIO 574 help 575 Say Y here if you want to use the old IBM PC/XT keyboard (or 576 compatible) on your system. This is only possible with a 577 parallel port keyboard adapter, you cannot connect it to the 578 keyboard port on a PC that runs Linux. 579 580 To compile this driver as a module, choose M here: the 581 module will be called xtkbd. 582 583config KEYBOARD_W90P910 584 tristate "W90P910 Matrix Keypad support" 585 depends on ARCH_W90X900 586 help 587 Say Y here to enable the matrix keypad on evaluation board 588 based on W90P910. 589 590 To compile this driver as a module, choose M here: the 591 module will be called w90p910_keypad. 592 593endif 594