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 select INPUT_OF_MATRIX_KEYMAP if USE_OF 398 help 399 Say Y here if you want to use a matrix keyboard connected directly 400 to the internal keyboard controller on Tegra SoCs. 401 402 To compile this driver as a module, choose M here: the 403 module will be called tegra-kbc. 404 405config KEYBOARD_OPENCORES 406 tristate "OpenCores Keyboard Controller" 407 help 408 Say Y here if you want to use the OpenCores Keyboard Controller 409 http://www.opencores.org/project,keyboardcontroller 410 411 To compile this driver as a module, choose M here; the 412 module will be called opencores-kbd. 413 414config KEYBOARD_PXA27x 415 tristate "PXA27x/PXA3xx keypad support" 416 depends on PXA27x || PXA3xx || ARCH_MMP 417 help 418 Enable support for PXA27x/PXA3xx keypad controller. 419 420 To compile this driver as a module, choose M here: the 421 module will be called pxa27x_keypad. 422 423config KEYBOARD_PXA930_ROTARY 424 tristate "PXA930/PXA935 Enhanced Rotary Controller Support" 425 depends on CPU_PXA930 || CPU_PXA935 426 help 427 Enable support for PXA930/PXA935 Enhanced Rotary Controller. 428 429 To compile this driver as a module, choose M here: the 430 module will be called pxa930_rotary. 431 432config KEYBOARD_PMIC8XXX 433 tristate "Qualcomm PMIC8XXX keypad support" 434 depends on MFD_PM8XXX 435 help 436 Say Y here if you want to enable the driver for the PMIC8XXX 437 keypad provided as a reference design from Qualcomm. This is intended 438 to support upto 18x8 matrix based keypad design. 439 440 To compile this driver as a module, choose M here: the module will 441 be called pmic8xxx-keypad. 442 443config KEYBOARD_SAMSUNG 444 tristate "Samsung keypad support" 445 depends on HAVE_CLK 446 help 447 Say Y here if you want to use the keypad on your Samsung mobile 448 device. 449 450 To compile this driver as a module, choose M here: the 451 module will be called samsung-keypad. 452 453config KEYBOARD_STOWAWAY 454 tristate "Stowaway keyboard" 455 select SERIO 456 help 457 Say Y here if you have a Stowaway keyboard on a serial port. 458 Stowaway compatible keyboards like Dicota Input-PDA keyboard 459 are also supported by this driver. 460 461 To compile this driver as a module, choose M here: the 462 module will be called stowaway. 463 464config KEYBOARD_SUNKBD 465 tristate "Sun Type 4 and Type 5 keyboard" 466 select SERIO 467 help 468 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 469 connected either to the Sun keyboard connector or to an serial 470 (RS-232) port via a simple adapter. 471 472 To compile this driver as a module, choose M here: the 473 module will be called sunkbd. 474 475config KEYBOARD_SH_KEYSC 476 tristate "SuperH KEYSC keypad support" 477 depends on SUPERH || ARCH_SHMOBILE 478 help 479 Say Y here if you want to use a keypad attached to the KEYSC block 480 on SuperH processors such as sh7722 and sh7343. 481 482 To compile this driver as a module, choose M here: the 483 module will be called sh_keysc. 484 485config KEYBOARD_STMPE 486 tristate "STMPE keypad support" 487 depends on MFD_STMPE 488 help 489 Say Y here if you want to use the keypad controller on STMPE I/O 490 expanders. 491 492 To compile this driver as a module, choose M here: the module will be 493 called stmpe-keypad. 494 495config KEYBOARD_DAVINCI 496 tristate "TI DaVinci Key Scan" 497 depends on ARCH_DAVINCI_DM365 498 help 499 Say Y to enable keypad module support for the TI DaVinci 500 platforms (DM365). 501 502 To compile this driver as a module, choose M here: the 503 module will be called davinci_keyscan. 504 505config KEYBOARD_OMAP 506 tristate "TI OMAP keypad support" 507 depends on (ARCH_OMAP1 || ARCH_OMAP2) 508 help 509 Say Y here if you want to use the OMAP keypad. 510 511 To compile this driver as a module, choose M here: the 512 module will be called omap-keypad. 513 514config KEYBOARD_OMAP4 515 tristate "TI OMAP4 keypad support" 516 depends on ARCH_OMAP4 517 help 518 Say Y here if you want to use the OMAP4 keypad. 519 520 To compile this driver as a module, choose M here: the 521 module will be called omap4-keypad. 522 523config KEYBOARD_SPEAR 524 tristate "ST SPEAR keyboard support" 525 depends on PLAT_SPEAR 526 help 527 Say Y here if you want to use the SPEAR keyboard. 528 529 To compile this driver as a module, choose M here: the 530 module will be called spear-keboard. 531 532config KEYBOARD_TC3589X 533 tristate "TC3589X Keypad support" 534 depends on MFD_TC3589X 535 help 536 Say Y here if you want to use the keypad controller on 537 TC35892/3 I/O expander. 538 539 To compile this driver as a module, choose M here: the 540 module will be called tc3589x-keypad. 541 542config KEYBOARD_TNETV107X 543 tristate "TI TNETV107X keypad support" 544 depends on ARCH_DAVINCI_TNETV107X 545 help 546 Say Y here if you want to use the TNETV107X keypad. 547 548 To compile this driver as a module, choose M here: the 549 module will be called tnetv107x-keypad. 550 551config KEYBOARD_TWL4030 552 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 553 depends on TWL4030_CORE 554 help 555 Say Y here if your board use the keypad controller on 556 TWL4030 family chips. It's safe to say enable this 557 even on boards that don't use the keypad controller. 558 559 To compile this driver as a module, choose M here: the 560 module will be called twl4030_keypad. 561 562config KEYBOARD_XTKBD 563 tristate "XT keyboard" 564 select SERIO 565 help 566 Say Y here if you want to use the old IBM PC/XT keyboard (or 567 compatible) on your system. This is only possible with a 568 parallel port keyboard adapter, you cannot connect it to the 569 keyboard port on a PC that runs Linux. 570 571 To compile this driver as a module, choose M here: the 572 module will be called xtkbd. 573 574config KEYBOARD_W90P910 575 tristate "W90P910 Matrix Keypad support" 576 depends on ARCH_W90X900 577 help 578 Say Y here to enable the matrix keypad on evaluation board 579 based on W90P910. 580 581 To compile this driver as a module, choose M here: the 582 module will be called w90p910_keypad. 583 584endif 585