1# 2# Input core configuration 3# 4menuconfig INPUT_KEYBOARD 5 bool "Keyboards" if EMBEDDED || !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 EMBEDDED || !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_QT2160 116 tristate "Atmel AT42QT2160 Touch Sensor Chip" 117 depends on I2C && EXPERIMENTAL 118 help 119 If you say yes here you get support for Atmel AT42QT2160 Touch 120 Sensor chip as a keyboard input. 121 122 This driver can also be built as a module. If so, the module 123 will be called qt2160. 124 125config KEYBOARD_BFIN 126 tristate "Blackfin BF54x keypad support" 127 depends on (BF54x && !BF544) 128 help 129 Say Y here if you want to use the BF54x keypad. 130 131 To compile this driver as a module, choose M here: the 132 module will be called bf54x-keys. 133 134config KEYBOARD_LKKBD 135 tristate "DECstation/VAXstation LK201/LK401 keyboard" 136 select SERIO 137 help 138 Say Y here if you want to use a LK201 or LK401 style serial 139 keyboard. This keyboard is also useable on PCs if you attach 140 it with the inputattach program. The connector pinout is 141 described within lkkbd.c. 142 143 To compile this driver as a module, choose M here: the 144 module will be called lkkbd. 145 146config KEYBOARD_EP93XX 147 tristate "EP93xx Matrix Keypad support" 148 depends on ARCH_EP93XX 149 help 150 Say Y here to enable the matrix keypad on the Cirrus EP93XX. 151 152 To compile this driver as a module, choose M here: the 153 module will be called ep93xx_keypad. 154 155config KEYBOARD_GPIO 156 tristate "GPIO Buttons" 157 depends on GENERIC_GPIO 158 help 159 This driver implements support for buttons connected 160 to GPIO pins of various CPUs (and some other chips). 161 162 Say Y here if your device has buttons connected 163 directly to such GPIO pins. Your board-specific 164 setup logic must also provide a platform device, 165 with configuration data saying which GPIOs are used. 166 167 To compile this driver as a module, choose M here: the 168 module will be called gpio_keys. 169 170config KEYBOARD_GPIO_POLLED 171 tristate "Polled GPIO buttons" 172 depends on GENERIC_GPIO 173 select INPUT_POLLDEV 174 help 175 This driver implements support for buttons connected 176 to GPIO pins that are not capable of generating interrupts. 177 178 Say Y here if your device has buttons connected 179 directly to such GPIO pins. Your board-specific 180 setup logic must also provide a platform device, 181 with configuration data saying which GPIOs are used. 182 183 To compile this driver as a module, choose M here: the 184 module will be called gpio_keys_polled. 185 186config KEYBOARD_TCA6416 187 tristate "TCA6416/TCA6408A Keypad Support" 188 depends on I2C 189 help 190 This driver implements basic keypad functionality 191 for keys connected through TCA6416/TCA6408A IO expanders. 192 193 Say Y here if your device has keys connected to 194 TCA6416/TCA6408A IO expander. Your board-specific setup logic 195 must also provide pin-mask details(of which TCA6416 pins 196 are used for keypad). 197 198 If enabled the entire TCA6416 device will be managed through 199 this driver. 200 201 To compile this driver as a module, choose M here: the 202 module will be called tca6416_keypad. 203 204config KEYBOARD_MATRIX 205 tristate "GPIO driven matrix keypad support" 206 depends on GENERIC_GPIO 207 help 208 Enable support for GPIO driven matrix keypad. 209 210 To compile this driver as a module, choose M here: the 211 module will be called matrix_keypad. 212 213config KEYBOARD_HIL_OLD 214 tristate "HP HIL keyboard support (simple driver)" 215 depends on GSC || HP300 216 default y 217 help 218 The "Human Interface Loop" is a older, 8-channel USB-like 219 controller used in several Hewlett Packard models. This driver 220 was adapted from the one written for m68k/hp300, and implements 221 support for a keyboard attached to the HIL port, but not for 222 any other types of HIL input devices like mice or tablets. 223 However, it has been thoroughly tested and is stable. 224 225 If you want full HIL support including support for multiple 226 keyboards, mice, and tablets, you have to enable the 227 "HP System Device Controller i8042 Support" in the input/serio 228 submenu. 229 230config KEYBOARD_HIL 231 tristate "HP HIL keyboard/pointer support" 232 depends on GSC || HP300 233 default y 234 select HP_SDC 235 select HIL_MLC 236 select SERIO 237 help 238 The "Human Interface Loop" is a older, 8-channel USB-like 239 controller used in several Hewlett Packard models. 240 This driver implements support for HIL-keyboards and pointing 241 devices (mice, tablets, touchscreens) attached 242 to your machine, so normally you should say Y here. 243 244config KEYBOARD_HP6XX 245 tristate "HP Jornada 6xx keyboard" 246 depends on SH_HP6XX 247 select INPUT_POLLDEV 248 help 249 Say Y here if you have a HP Jornada 620/660/680/690 and want to 250 support the built-in keyboard. 251 252 To compile this driver as a module, choose M here: the 253 module will be called jornada680_kbd. 254 255config KEYBOARD_HP7XX 256 tristate "HP Jornada 7xx keyboard" 257 depends on SA1100_JORNADA720_SSP && SA1100_SSP 258 help 259 Say Y here if you have a HP Jornada 710/720/728 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 jornada720_kbd. 264 265config KEYBOARD_LM8323 266 tristate "LM8323 keypad chip" 267 depends on I2C 268 depends on LEDS_CLASS 269 help 270 If you say yes here you get support for the National Semiconductor 271 LM8323 keypad controller. 272 273 To compile this driver as a module, choose M here: the 274 module will be called lm8323. 275 276config KEYBOARD_LOCOMO 277 tristate "LoCoMo Keyboard Support" 278 depends on SHARP_LOCOMO 279 help 280 Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA 281 282 To compile this driver as a module, choose M here: the 283 module will be called locomokbd. 284 285config KEYBOARD_MAPLE 286 tristate "Maple bus keyboard" 287 depends on SH_DREAMCAST && MAPLE 288 help 289 Say Y here if you have a Dreamcast console running Linux and have 290 a keyboard attached to its Maple bus. 291 292 To compile this driver as a module, choose M here: the 293 module will be called maple_keyb. 294 295config KEYBOARD_MAX7359 296 tristate "Maxim MAX7359 Key Switch Controller" 297 depends on I2C 298 help 299 If you say yes here you get support for the Maxim MAX7359 Key 300 Switch Controller chip. This providers microprocessors with 301 management of up to 64 key switches 302 303 To compile this driver as a module, choose M here: the 304 module will be called max7359_keypad. 305 306config KEYBOARD_MCS 307 tristate "MELFAS MCS Touchkey" 308 depends on I2C 309 help 310 Say Y here if you have the MELFAS MCS5000/5080 touchkey controller 311 chip in your system. 312 313 If unsure, say N. 314 315 To compile this driver as a module, choose M here: the 316 module will be called mcs_touchkey. 317 318config KEYBOARD_IMX 319 tristate "IMX keypad support" 320 depends on ARCH_MXC 321 help 322 Enable support for IMX keypad port. 323 324 To compile this driver as a module, choose M here: the 325 module will be called imx_keypad. 326 327config KEYBOARD_NEWTON 328 tristate "Newton keyboard" 329 select SERIO 330 help 331 Say Y here if you have a Newton keyboard on a serial port. 332 333 To compile this driver as a module, choose M here: the 334 module will be called newtonkbd. 335 336config KEYBOARD_NOMADIK 337 tristate "ST-Ericsson Nomadik SKE keyboard" 338 depends on PLAT_NOMADIK 339 help 340 Say Y here if you want to use a keypad provided on the SKE controller 341 used on the Ux500 and Nomadik platforms 342 343 To compile this driver as a module, choose M here: the 344 module will be called nmk-ske-keypad. 345 346config KEYBOARD_TEGRA 347 tristate "NVIDIA Tegra internal matrix keyboard controller support" 348 depends on ARCH_TEGRA 349 help 350 Say Y here if you want to use a matrix keyboard connected directly 351 to the internal keyboard controller on Tegra SoCs. 352 353 To compile this driver as a module, choose M here: the 354 module will be called tegra-kbc. 355 356config KEYBOARD_OPENCORES 357 tristate "OpenCores Keyboard Controller" 358 help 359 Say Y here if you want to use the OpenCores Keyboard Controller 360 http://www.opencores.org/project,keyboardcontroller 361 362 To compile this driver as a module, choose M here; the 363 module will be called opencores-kbd. 364 365config KEYBOARD_PXA27x 366 tristate "PXA27x/PXA3xx keypad support" 367 depends on PXA27x || PXA3xx || ARCH_MMP 368 help 369 Enable support for PXA27x/PXA3xx keypad controller. 370 371 To compile this driver as a module, choose M here: the 372 module will be called pxa27x_keypad. 373 374config KEYBOARD_PXA930_ROTARY 375 tristate "PXA930/PXA935 Enhanced Rotary Controller Support" 376 depends on CPU_PXA930 || CPU_PXA935 377 help 378 Enable support for PXA930/PXA935 Enhanced Rotary Controller. 379 380 To compile this driver as a module, choose M here: the 381 module will be called pxa930_rotary. 382 383config KEYBOARD_SAMSUNG 384 tristate "Samsung keypad support" 385 depends on SAMSUNG_DEV_KEYPAD 386 help 387 Say Y here if you want to use the Samsung keypad. 388 389 To compile this driver as a module, choose M here: the 390 module will be called samsung-keypad. 391 392config KEYBOARD_STOWAWAY 393 tristate "Stowaway keyboard" 394 select SERIO 395 help 396 Say Y here if you have a Stowaway keyboard on a serial port. 397 Stowaway compatible keyboards like Dicota Input-PDA keyboard 398 are also supported by this driver. 399 400 To compile this driver as a module, choose M here: the 401 module will be called stowaway. 402 403config KEYBOARD_SUNKBD 404 tristate "Sun Type 4 and Type 5 keyboard" 405 select SERIO 406 help 407 Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, 408 connected either to the Sun keyboard connector or to an serial 409 (RS-232) port via a simple adapter. 410 411 To compile this driver as a module, choose M here: the 412 module will be called sunkbd. 413 414config KEYBOARD_SH_KEYSC 415 tristate "SuperH KEYSC keypad support" 416 depends on SUPERH || ARCH_SHMOBILE 417 help 418 Say Y here if you want to use a keypad attached to the KEYSC block 419 on SuperH processors such as sh7722 and sh7343. 420 421 To compile this driver as a module, choose M here: the 422 module will be called sh_keysc. 423 424config KEYBOARD_STMPE 425 tristate "STMPE keypad support" 426 depends on MFD_STMPE 427 help 428 Say Y here if you want to use the keypad controller on STMPE I/O 429 expanders. 430 431 To compile this driver as a module, choose M here: the module will be 432 called stmpe-keypad. 433 434config KEYBOARD_DAVINCI 435 tristate "TI DaVinci Key Scan" 436 depends on ARCH_DAVINCI_DM365 437 help 438 Say Y to enable keypad module support for the TI DaVinci 439 platforms (DM365). 440 441 To compile this driver as a module, choose M here: the 442 module will be called davinci_keyscan. 443 444config KEYBOARD_OMAP 445 tristate "TI OMAP keypad support" 446 depends on (ARCH_OMAP1 || ARCH_OMAP2) 447 help 448 Say Y here if you want to use the OMAP keypad. 449 450 To compile this driver as a module, choose M here: the 451 module will be called omap-keypad. 452 453config KEYBOARD_OMAP4 454 tristate "TI OMAP4 keypad support" 455 depends on ARCH_OMAP4 456 help 457 Say Y here if you want to use the OMAP4 keypad. 458 459 To compile this driver as a module, choose M here: the 460 module will be called omap4-keypad. 461 462config KEYBOARD_SPEAR 463 tristate "ST SPEAR keyboard support" 464 depends on PLAT_SPEAR 465 help 466 Say Y here if you want to use the SPEAR keyboard. 467 468 To compile this driver as a module, choose M here: the 469 module will be called spear-keboard. 470 471config KEYBOARD_TNETV107X 472 tristate "TI TNETV107X keypad support" 473 depends on ARCH_DAVINCI_TNETV107X 474 help 475 Say Y here if you want to use the TNETV107X keypad. 476 477 To compile this driver as a module, choose M here: the 478 module will be called tnetv107x-keypad. 479 480config KEYBOARD_TWL4030 481 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" 482 depends on TWL4030_CORE 483 help 484 Say Y here if your board use the keypad controller on 485 TWL4030 family chips. It's safe to say enable this 486 even on boards that don't use the keypad controller. 487 488 To compile this driver as a module, choose M here: the 489 module will be called twl4030_keypad. 490 491config KEYBOARD_XTKBD 492 tristate "XT keyboard" 493 select SERIO 494 help 495 Say Y here if you want to use the old IBM PC/XT keyboard (or 496 compatible) on your system. This is only possible with a 497 parallel port keyboard adapter, you cannot connect it to the 498 keyboard port on a PC that runs Linux. 499 500 To compile this driver as a module, choose M here: the 501 module will be called xtkbd. 502 503config KEYBOARD_W90P910 504 tristate "W90P910 Matrix Keypad support" 505 depends on ARCH_W90X900 506 help 507 Say Y here to enable the matrix keypad on evaluation board 508 based on W90P910. 509 510 To compile this driver as a module, choose M here: the 511 module will be called w90p910_keypad. 512 513endif 514