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_IMX 329 tristate "IMX keypad support" 330 depends on ARCH_MXC 331 help 332 Enable support for IMX keypad port. 333 334 To compile this driver as a module, choose M here: the 335 module will be called imx_keypad. 336 337config KEYBOARD_NEWTON 338 tristate "Newton keyboard" 339 select SERIO 340 help 341 Say Y here if you have a Newton keyboard on a serial port. 342 343 To compile this driver as a module, choose M here: the 344 module will be called newtonkbd. 345 346config KEYBOARD_NOMADIK 347 tristate "ST-Ericsson Nomadik SKE keyboard" 348 depends on PLAT_NOMADIK 349 help 350 Say Y here if you want to use a keypad provided on the SKE controller 351 used on the Ux500 and Nomadik platforms 352 353 To compile this driver as a module, choose M here: the 354 module will be called nmk-ske-keypad. 355 356config KEYBOARD_TEGRA 357 tristate "NVIDIA Tegra internal matrix keyboard controller support" 358 depends on ARCH_TEGRA 359 help 360 Say Y here if you want to use a matrix keyboard connected directly 361 to the internal keyboard controller on Tegra SoCs. 362 363 To compile this driver as a module, choose M here: the 364 module will be called tegra-kbc. 365 366config KEYBOARD_OPENCORES 367 tristate "OpenCores Keyboard Controller" 368 help 369 Say Y here if you want to use the OpenCores Keyboard Controller 370 http://www.opencores.org/project,keyboardcontroller 371 372 To compile this driver as a module, choose M here; the 373 module will be called opencores-kbd. 374 375config KEYBOARD_PXA27x 376 tristate "PXA27x/PXA3xx keypad support" 377 depends on PXA27x || PXA3xx || ARCH_MMP 378 help 379 Enable support for PXA27x/PXA3xx keypad controller. 380 381 To compile this driver as a module, choose M here: the 382 module will be called pxa27x_keypad. 383 384config KEYBOARD_PXA930_ROTARY 385 tristate "PXA930/PXA935 Enhanced Rotary Controller Support" 386 depends on CPU_PXA930 || CPU_PXA935 387 help 388 Enable support for PXA930/PXA935 Enhanced Rotary Controller. 389 390 To compile this driver as a module, choose M here: the 391 module will be called pxa930_rotary. 392 393config KEYBOARD_SAMSUNG 394 tristate "Samsung keypad support" 395 depends on SAMSUNG_DEV_KEYPAD 396 help 397 Say Y here if you want to use the Samsung keypad. 398 399 To compile this driver as a module, choose M here: the 400 module will be called samsung-keypad. 401 402config KEYBOARD_STOWAWAY 403 tristate "Stowaway keyboard" 404 select SERIO 405 help 406 Say Y here if you have a Stowaway keyboard on a serial port. 407 Stowaway compatible keyboards like Dicota Input-PDA keyboard 408 are also supported by this driver. 409 410 To compile this driver as a module, choose M here: the 411 module will be called stowaway. 412 413config KEYBOARD_SUNKBD 414 tristate "Sun Type 4 and Type 5 keyboard" 415 select SERIO 416 help 417 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 418 connected either to the Sun keyboard connector or to an serial 419 (RS-232) port via a simple adapter. 420 421 To compile this driver as a module, choose M here: the 422 module will be called sunkbd. 423 424config KEYBOARD_SH_KEYSC 425 tristate "SuperH KEYSC keypad support" 426 depends on SUPERH || ARCH_SHMOBILE 427 help 428 Say Y here if you want to use a keypad attached to the KEYSC block 429 on SuperH processors such as sh7722 and sh7343. 430 431 To compile this driver as a module, choose M here: the 432 module will be called sh_keysc. 433 434config KEYBOARD_STMPE 435 tristate "STMPE keypad support" 436 depends on MFD_STMPE 437 help 438 Say Y here if you want to use the keypad controller on STMPE I/O 439 expanders. 440 441 To compile this driver as a module, choose M here: the module will be 442 called stmpe-keypad. 443 444config KEYBOARD_DAVINCI 445 tristate "TI DaVinci Key Scan" 446 depends on ARCH_DAVINCI_DM365 447 help 448 Say Y to enable keypad module support for the TI DaVinci 449 platforms (DM365). 450 451 To compile this driver as a module, choose M here: the 452 module will be called davinci_keyscan. 453 454config KEYBOARD_OMAP 455 tristate "TI OMAP keypad support" 456 depends on (ARCH_OMAP1 || ARCH_OMAP2) 457 help 458 Say Y here if you want to use the OMAP keypad. 459 460 To compile this driver as a module, choose M here: the 461 module will be called omap-keypad. 462 463config KEYBOARD_OMAP4 464 tristate "TI OMAP4 keypad support" 465 depends on ARCH_OMAP4 466 help 467 Say Y here if you want to use the OMAP4 keypad. 468 469 To compile this driver as a module, choose M here: the 470 module will be called omap4-keypad. 471 472config KEYBOARD_SPEAR 473 tristate "ST SPEAR keyboard support" 474 depends on PLAT_SPEAR 475 help 476 Say Y here if you want to use the SPEAR keyboard. 477 478 To compile this driver as a module, choose M here: the 479 module will be called spear-keboard. 480 481config KEYBOARD_TC3589X 482 tristate "TC3589X Keypad support" 483 depends on MFD_TC3589X 484 help 485 Say Y here if you want to use the keypad controller on 486 TC35892/3 I/O expander. 487 488 To compile this driver as a module, choose M here: the 489 module will be called tc3589x-keypad. 490 491config KEYBOARD_TNETV107X 492 tristate "TI TNETV107X keypad support" 493 depends on ARCH_DAVINCI_TNETV107X 494 help 495 Say Y here if you want to use the TNETV107X keypad. 496 497 To compile this driver as a module, choose M here: the 498 module will be called tnetv107x-keypad. 499 500config KEYBOARD_TWL4030 501 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 502 depends on TWL4030_CORE 503 help 504 Say Y here if your board use the keypad controller on 505 TWL4030 family chips. It's safe to say enable this 506 even on boards that don't use the keypad controller. 507 508 To compile this driver as a module, choose M here: the 509 module will be called twl4030_keypad. 510 511config KEYBOARD_XTKBD 512 tristate "XT keyboard" 513 select SERIO 514 help 515 Say Y here if you want to use the old IBM PC/XT keyboard (or 516 compatible) on your system. This is only possible with a 517 parallel port keyboard adapter, you cannot connect it to the 518 keyboard port on a PC that runs Linux. 519 520 To compile this driver as a module, choose M here: the 521 module will be called xtkbd. 522 523config KEYBOARD_W90P910 524 tristate "W90P910 Matrix Keypad support" 525 depends on ARCH_W90X900 526 help 527 Say Y here to enable the matrix keypad on evaluation board 528 based on W90P910. 529 530 To compile this driver as a module, choose M here: the 531 module will be called w90p910_keypad. 532 533endif 534