xref: /linux/drivers/input/keyboard/Kconfig (revision 4272ebfbefd0db40073f3ee5990bceaf2894f08b)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# Input core configuration
31da177e4SLinus Torvalds#
41da177e4SLinus Torvaldsmenuconfig INPUT_KEYBOARD
51da177e4SLinus Torvalds	bool "Keyboards" if EMBEDDED || !X86
61da177e4SLinus Torvalds	default y
71da177e4SLinus Torvalds	help
81da177e4SLinus Torvalds	  Say Y here, and a list of supported keyboards will be displayed.
91da177e4SLinus Torvalds	  This option doesn't affect the kernel.
101da177e4SLinus Torvalds
111da177e4SLinus Torvalds	  If unsure, say Y.
121da177e4SLinus Torvalds
131da177e4SLinus Torvaldsif INPUT_KEYBOARD
141da177e4SLinus Torvalds
151da177e4SLinus Torvaldsconfig KEYBOARD_ATKBD
16*4272ebfbSYinghai Lu	tristate "AT keyboard" if EMBEDDED || !X86
171da177e4SLinus Torvalds	default y
181da177e4SLinus Torvalds	select SERIO
191da177e4SLinus Torvalds	select SERIO_LIBPS2
20*4272ebfbSYinghai Lu	select SERIO_I8042 if X86
211da177e4SLinus Torvalds	select SERIO_GSCPS2 if GSC
221da177e4SLinus Torvalds	help
231da177e4SLinus Torvalds	  Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
241da177e4SLinus Torvalds	  you'll need this, unless you have a different type keyboard (USB, ADB
251da177e4SLinus Torvalds	  or other). This also works for AT and PS/2 keyboards connected over a
261da177e4SLinus Torvalds	  PS/2 to serial converter.
271da177e4SLinus Torvalds
281da177e4SLinus Torvalds	  If unsure, say Y.
291da177e4SLinus Torvalds
301da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
311da177e4SLinus Torvalds	  module will be called atkbd.
321da177e4SLinus Torvalds
331da177e4SLinus Torvaldsconfig KEYBOARD_ATKBD_HP_KEYCODES
341da177e4SLinus Torvalds	bool "Use HP keyboard scancodes"
351da177e4SLinus Torvalds	depends on PARISC && KEYBOARD_ATKBD
361da177e4SLinus Torvalds	default y
371da177e4SLinus Torvalds	help
381da177e4SLinus Torvalds	  Say Y here if you have a PA-RISC machine and want to use an AT or
391da177e4SLinus Torvalds	  PS/2 keyboard, and your keyboard uses keycodes that are specific to
401da177e4SLinus Torvalds	  PA-RISC keyboards.
411da177e4SLinus Torvalds
421da177e4SLinus Torvalds	  Say N if you use a standard keyboard.
431da177e4SLinus Torvalds
441da177e4SLinus Torvaldsconfig KEYBOARD_ATKBD_RDI_KEYCODES
451da177e4SLinus Torvalds	bool "Use PrecisionBook keyboard scancodes"
461da177e4SLinus Torvalds	depends on KEYBOARD_ATKBD_HP_KEYCODES
471da177e4SLinus Torvalds	default n
481da177e4SLinus Torvalds	help
491da177e4SLinus Torvalds	  If you have an RDI PrecisionBook, say Y here if you want to use its
501da177e4SLinus Torvalds	  built-in keyboard (as opposed to an external keyboard).
511da177e4SLinus Torvalds
521da177e4SLinus Torvalds	  The PrecisionBook has five keys that conflict with those used by most
531da177e4SLinus Torvalds	  AT and PS/2 keyboards. These are as follows:
541da177e4SLinus Torvalds
551da177e4SLinus Torvalds	    PrecisionBook    Standard AT or PS/2
561da177e4SLinus Torvalds
571da177e4SLinus Torvalds	    F1               F12
581da177e4SLinus Torvalds	    Left Ctrl        Left Alt
591da177e4SLinus Torvalds	    Caps Lock        Left Ctrl
601da177e4SLinus Torvalds	    Right Ctrl       Caps Lock
611da177e4SLinus Torvalds	    Left             102nd key (the key to the right of Left Shift)
621da177e4SLinus Torvalds
631da177e4SLinus Torvalds	  If you say N here, and use the PrecisionBook keyboard, then each key
641da177e4SLinus Torvalds	  in the left-hand column will be interpreted as the corresponding key
651da177e4SLinus Torvalds	  in the right-hand column.
661da177e4SLinus Torvalds
671da177e4SLinus Torvalds	  If you say Y here, and use an external keyboard, then each key in the
681da177e4SLinus Torvalds	  right-hand column will be interpreted as the key shown in the
691da177e4SLinus Torvalds	  left-hand column.
701da177e4SLinus Torvalds
711da177e4SLinus Torvaldsconfig KEYBOARD_SUNKBD
721da177e4SLinus Torvalds	tristate "Sun Type 4 and Type 5 keyboard"
731da177e4SLinus Torvalds	select SERIO
741da177e4SLinus Torvalds	help
751da177e4SLinus Torvalds	  Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
761da177e4SLinus Torvalds	  connected either to the Sun keyboard connector or to an serial
771da177e4SLinus Torvalds	  (RS-232) port via a simple adapter.
781da177e4SLinus Torvalds
791da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
801da177e4SLinus Torvalds	  module will be called sunkbd.
811da177e4SLinus Torvalds
821da177e4SLinus Torvaldsconfig KEYBOARD_LKKBD
831da177e4SLinus Torvalds	tristate "DECstation/VAXstation LK201/LK401 keyboard"
841da177e4SLinus Torvalds	select SERIO
851da177e4SLinus Torvalds	help
861da177e4SLinus Torvalds	  Say Y here if you want to use a LK201 or LK401 style serial
871da177e4SLinus Torvalds	  keyboard. This keyboard is also useable on PCs if you attach
881da177e4SLinus Torvalds	  it with the inputattach program. The connector pinout is
891da177e4SLinus Torvalds	  described within lkkbd.c.
901da177e4SLinus Torvalds
911da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
921da177e4SLinus Torvalds	  module will be called lkkbd.
931da177e4SLinus Torvalds
941da177e4SLinus Torvaldsconfig KEYBOARD_LOCOMO
951da177e4SLinus Torvalds	tristate "LoCoMo Keyboard Support"
9665d406acSPavel Machek	depends on SHARP_LOCOMO && INPUT_KEYBOARD
971da177e4SLinus Torvalds	help
981da177e4SLinus Torvalds	  Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA
991da177e4SLinus Torvalds
1001da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1011da177e4SLinus Torvalds	  module will be called locomokbd.
1021da177e4SLinus Torvalds
1031da177e4SLinus Torvaldsconfig KEYBOARD_XTKBD
1041da177e4SLinus Torvalds	tristate "XT keyboard"
1051da177e4SLinus Torvalds	select SERIO
1061da177e4SLinus Torvalds	help
1071da177e4SLinus Torvalds	  Say Y here if you want to use the old IBM PC/XT keyboard (or
1081da177e4SLinus Torvalds	  compatible) on your system. This is only possible with a
1091da177e4SLinus Torvalds	  parallel port keyboard adapter, you cannot connect it to the
1101da177e4SLinus Torvalds	  keyboard port on a PC that runs Linux.
1111da177e4SLinus Torvalds
1121da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1131da177e4SLinus Torvalds	  module will be called xtkbd.
1141da177e4SLinus Torvalds
1151da177e4SLinus Torvaldsconfig KEYBOARD_NEWTON
1161da177e4SLinus Torvalds	tristate "Newton keyboard"
1171da177e4SLinus Torvalds	select SERIO
1181da177e4SLinus Torvalds	help
1191da177e4SLinus Torvalds	  Say Y here if you have a Newton keyboard on a serial port.
1201da177e4SLinus Torvalds
1211da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1221da177e4SLinus Torvalds	  module will be called newtonkbd.
1231da177e4SLinus Torvalds
124f35d0616SMarek Vasutconfig KEYBOARD_STOWAWAY
125f35d0616SMarek Vasut	tristate "Stowaway keyboard"
126f35d0616SMarek Vasut	select SERIO
127f35d0616SMarek Vasut	help
128f35d0616SMarek Vasut	  Say Y here if you have a Stowaway keyboard on a serial port.
129f35d0616SMarek Vasut	  Stowaway compatible keyboards like Dicota Input-PDA keyboard
130f35d0616SMarek Vasut	  are also supported by this driver.
131f35d0616SMarek Vasut
132f35d0616SMarek Vasut	  To compile this driver as a module, choose M here: the
133f35d0616SMarek Vasut	  module will be called stowaway.
134f35d0616SMarek Vasut
1351da177e4SLinus Torvaldsconfig KEYBOARD_CORGI
1361da177e4SLinus Torvalds	tristate "Corgi keyboard"
1371da177e4SLinus Torvalds	depends on PXA_SHARPSL
1381da177e4SLinus Torvalds	default y
1391da177e4SLinus Torvalds	help
1401da177e4SLinus Torvalds	  Say Y here to enable the keyboard on the Sharp Zaurus SL-C7xx
1411da177e4SLinus Torvalds	  series of PDAs.
1421da177e4SLinus Torvalds
1431da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1441da177e4SLinus Torvalds	  module will be called corgikbd.
1451da177e4SLinus Torvalds
146fff71312SRichard Purdieconfig KEYBOARD_SPITZ
147fff71312SRichard Purdie	tristate "Spitz keyboard"
148fff71312SRichard Purdie	depends on PXA_SHARPSL
149fff71312SRichard Purdie	default y
150fff71312SRichard Purdie	help
151fff71312SRichard Purdie	  Say Y here to enable the keyboard on the Sharp Zaurus SL-C1000,
152fff71312SRichard Purdie	  SL-C3000 and Sl-C3100 series of PDAs.
153fff71312SRichard Purdie
154fff71312SRichard Purdie	  To compile this driver as a module, choose M here: the
155fff71312SRichard Purdie	  module will be called spitzkbd.
156fff71312SRichard Purdie
15793e9012fSDmitry Baryshkovconfig KEYBOARD_TOSA
15893e9012fSDmitry Baryshkov	tristate "Tosa keyboard"
15993e9012fSDmitry Baryshkov	depends on MACH_TOSA
16093e9012fSDmitry Baryshkov	default y
16193e9012fSDmitry Baryshkov	help
16293e9012fSDmitry Baryshkov	  Say Y here to enable the keyboard on the Sharp Zaurus SL-6000x (Tosa)
16393e9012fSDmitry Baryshkov
16493e9012fSDmitry Baryshkov	  To compile this driver as a module, choose M here: the
16593e9012fSDmitry Baryshkov	  module will be called tosakbd.
16693e9012fSDmitry Baryshkov
16793e9012fSDmitry Baryshkovconfig KEYBOARD_TOSA_USE_EXT_KEYCODES
16893e9012fSDmitry Baryshkov	bool "Tosa keyboard: use extended keycodes"
16993e9012fSDmitry Baryshkov	depends on KEYBOARD_TOSA
17093e9012fSDmitry Baryshkov	default n
17193e9012fSDmitry Baryshkov	help
17293e9012fSDmitry Baryshkov	  Say Y here to enable the tosa keyboard driver to generate extended
17393e9012fSDmitry Baryshkov	  (>= 127) keycodes. Be aware, that they can't be correctly interpreted
17493e9012fSDmitry Baryshkov	  by either console keyboard driver or by Kdrive keybd driver.
17593e9012fSDmitry Baryshkov
17693e9012fSDmitry Baryshkov	  Say Y only if you know, what you are doing!
17793e9012fSDmitry Baryshkov
1781da177e4SLinus Torvaldsconfig KEYBOARD_AMIGA
1791da177e4SLinus Torvalds	tristate "Amiga keyboard"
1801da177e4SLinus Torvalds	depends on AMIGA
1811da177e4SLinus Torvalds	help
1821da177e4SLinus Torvalds	  Say Y here if you are running Linux on any AMIGA and have a keyboard
1831da177e4SLinus Torvalds	  attached.
1841da177e4SLinus Torvalds
1851da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1861da177e4SLinus Torvalds	  module will be called amikbd.
1871da177e4SLinus Torvalds
1880e52d328SAndi Kleenconfig ATARI_KBD_CORE
1890e52d328SAndi Kleen	bool
1900e52d328SAndi Kleen
191c04cb856SMichael Schmitzconfig KEYBOARD_ATARI
192c04cb856SMichael Schmitz	tristate "Atari keyboard"
193c04cb856SMichael Schmitz	depends on ATARI
194c04cb856SMichael Schmitz	select ATARI_KBD_CORE
195c04cb856SMichael Schmitz	help
196c04cb856SMichael Schmitz	  Say Y here if you are running Linux on any Atari and have a keyboard
197c04cb856SMichael Schmitz	  attached.
198c04cb856SMichael Schmitz
199c04cb856SMichael Schmitz	  To compile this driver as a module, choose M here: the
200c04cb856SMichael Schmitz	  module will be called atakbd.
201c04cb856SMichael Schmitz
2021da177e4SLinus Torvaldsconfig KEYBOARD_HIL_OLD
2031da177e4SLinus Torvalds	tristate "HP HIL keyboard support (simple driver)"
204da96d0b5SGeert Uytterhoeven	depends on GSC || HP300
2051da177e4SLinus Torvalds	default y
2061da177e4SLinus Torvalds	help
2071da177e4SLinus Torvalds	  The "Human Interface Loop" is a older, 8-channel USB-like
2081da177e4SLinus Torvalds	  controller used in several Hewlett Packard models. This driver
2091da177e4SLinus Torvalds	  was adapted from the one written for m68k/hp300, and implements
2101da177e4SLinus Torvalds	  support for a keyboard attached to the HIL port, but not for
2111da177e4SLinus Torvalds	  any other types of HIL input devices like mice or tablets.
2121da177e4SLinus Torvalds	  However, it has been thoroughly tested and is stable.
2131da177e4SLinus Torvalds
2141da177e4SLinus Torvalds	  If you want full HIL support including support for multiple
21509509603SMatt LaPlante	  keyboards, mice, and tablets, you have to enable the
2161da177e4SLinus Torvalds	  "HP System Device Controller i8042 Support" in the input/serio
2171da177e4SLinus Torvalds	  submenu.
2181da177e4SLinus Torvalds
2191da177e4SLinus Torvaldsconfig KEYBOARD_HIL
2201da177e4SLinus Torvalds	tristate "HP HIL keyboard support"
221da96d0b5SGeert Uytterhoeven	depends on GSC || HP300
2221da177e4SLinus Torvalds	default y
2231da177e4SLinus Torvalds	select HP_SDC
2241da177e4SLinus Torvalds	select HIL_MLC
2251da177e4SLinus Torvalds	select SERIO
2261da177e4SLinus Torvalds	help
2271da177e4SLinus Torvalds	  The "Human Interface Loop" is a older, 8-channel USB-like
2281da177e4SLinus Torvalds	  controller used in several Hewlett Packard models.
2291da177e4SLinus Torvalds	  This driver implements support for HIL-keyboards attached
2301da177e4SLinus Torvalds	  to your machine, so normally you should say Y here.
2311da177e4SLinus Torvalds
2322aa2cb9eSKristoffer Ericsonconfig KEYBOARD_HP6XX
2334ff891ebSKristoffer Ericson	tristate "HP Jornada 6xx keyboard"
2342aa2cb9eSKristoffer Ericson	depends on SH_HP6XX
2352aa2cb9eSKristoffer Ericson	select INPUT_POLLDEV
2362aa2cb9eSKristoffer Ericson	help
2374ff891ebSKristoffer Ericson	  Say Y here if you have a HP Jornada 620/660/680/690 and want to
2384ff891ebSKristoffer Ericson	  support the built-in keyboard.
2392aa2cb9eSKristoffer Ericson
2402aa2cb9eSKristoffer Ericson	  To compile this driver as a module, choose M here: the
2412aa2cb9eSKristoffer Ericson	  module will be called jornada680_kbd.
2422aa2cb9eSKristoffer Ericson
243b0a4e1aaSKristoffer Ericsonconfig KEYBOARD_HP7XX
2444ff891ebSKristoffer Ericson	tristate "HP Jornada 7xx keyboard"
245b0a4e1aaSKristoffer Ericson	depends on SA1100_JORNADA720_SSP && SA1100_SSP
246b0a4e1aaSKristoffer Ericson	help
2474ff891ebSKristoffer Ericson	  Say Y here if you have a HP Jornada 710/720/728 and want to
2484ff891ebSKristoffer Ericson	  support the built-in keyboard.
249b0a4e1aaSKristoffer Ericson
250b0a4e1aaSKristoffer Ericson	  To compile this driver as a module, choose M here: the
251b0a4e1aaSKristoffer Ericson	  module will be called jornada720_kbd.
252b0a4e1aaSKristoffer Ericson
253ad4e09b1SKomal Shahconfig KEYBOARD_OMAP
254ad4e09b1SKomal Shah	tristate "TI OMAP keypad support"
255ad4e09b1SKomal Shah	depends on (ARCH_OMAP1 || ARCH_OMAP2)
256ad4e09b1SKomal Shah	help
257ad4e09b1SKomal Shah	  Say Y here if you want to use the OMAP keypad.
258ad4e09b1SKomal Shah
259ad4e09b1SKomal Shah	  To compile this driver as a module, choose M here: the
260ad4e09b1SKomal Shah	  module will be called omap-keypad.
261ad4e09b1SKomal Shah
2625a90e5bcSRodolfo Giometticonfig KEYBOARD_PXA27x
263e0f2677fSEric Miao	tristate "PXA27x/PXA3xx keypad support"
264e0f2677fSEric Miao	depends on PXA27x || PXA3xx
2655a90e5bcSRodolfo Giometti	help
266e0f2677fSEric Miao	  Enable support for PXA27x/PXA3xx keypad controller
2675a90e5bcSRodolfo Giometti
2685a90e5bcSRodolfo Giometti	  To compile this driver as a module, choose M here: the
2690e5f11aaSEric Miao	  module will be called pxa27x_keypad.
2705a90e5bcSRodolfo Giometti
271e0ee6298SYong Yaoconfig KEYBOARD_PXA930_ROTARY
272e0ee6298SYong Yao	tristate "PXA930/PXA935 Enhanced Rotary Controller Support"
273e0ee6298SYong Yao	depends on CPU_PXA930 || CPU_PXA935
274e0ee6298SYong Yao	help
275e0ee6298SYong Yao	  Enable support for PXA930/PXA935 Enhanced Rotary Controller.
276e0ee6298SYong Yao
277e0ee6298SYong Yao	  To compile this driver as a module, choose M here: the
278e0ee6298SYong Yao	  module will be called pxa930_rotary.
279e0ee6298SYong Yao
280f9705fcbSNicolas Bellidoconfig KEYBOARD_AAED2000
281f9705fcbSNicolas Bellido	tristate "AAED-2000 keyboard"
282f9705fcbSNicolas Bellido	depends on MACH_AAED2000
2833f07d879SDmitry Torokhov	select INPUT_POLLDEV
284f9705fcbSNicolas Bellido	default y
285f9705fcbSNicolas Bellido	help
286f9705fcbSNicolas Bellido	  Say Y here to enable the keyboard on the Agilent AAED-2000
287f9705fcbSNicolas Bellido	  development board.
288f9705fcbSNicolas Bellido
289f9705fcbSNicolas Bellido	  To compile this driver as a module, choose M here: the
290f9705fcbSNicolas Bellido	  module will be called aaed2000_kbd.
29178a56aabSPhil Blundell
29278a56aabSPhil Blundellconfig KEYBOARD_GPIO
2930a938b97SDavid Brownell	tristate "GPIO Buttons"
2940a938b97SDavid Brownell	depends on GENERIC_GPIO
29578a56aabSPhil Blundell	help
29678a56aabSPhil Blundell	  This driver implements support for buttons connected
2970a938b97SDavid Brownell	  to GPIO pins of various CPUs (and some other chips).
29878a56aabSPhil Blundell
29978a56aabSPhil Blundell	  Say Y here if your device has buttons connected
3000a938b97SDavid Brownell	  directly to such GPIO pins.  Your board-specific
3010a938b97SDavid Brownell	  setup logic must also provide a platform device,
3020a938b97SDavid Brownell	  with configuration data saying which GPIOs are used.
30378a56aabSPhil Blundell
30478a56aabSPhil Blundell	  To compile this driver as a module, choose M here: the
30578a56aabSPhil Blundell	  module will be called gpio-keys.
306f9705fcbSNicolas Bellido
307b11d2127SAdrian McMenaminconfig KEYBOARD_MAPLE
308b11d2127SAdrian McMenamin	tristate "Maple bus keyboard"
309b11d2127SAdrian McMenamin	depends on SH_DREAMCAST && MAPLE
310b11d2127SAdrian McMenamin	help
311b11d2127SAdrian McMenamin	  Say Y here if you have a Dreamcast console running Linux and have
312b11d2127SAdrian McMenamin	  a keyboard attached to its Maple bus.
313b11d2127SAdrian McMenamin
314b11d2127SAdrian McMenamin	  To compile this driver as a module, choose M here: the
315b11d2127SAdrian McMenamin	  module will be called maple_keyb.
316b11d2127SAdrian McMenamin
3178f740ef3SMichael Hennerichconfig KEYBOARD_BFIN
3188f740ef3SMichael Hennerich	tristate "Blackfin BF54x keypad support"
3196957c828SMike Frysinger	depends on (BF54x && !BF544)
3208f740ef3SMichael Hennerich	help
3218f740ef3SMichael Hennerich	  Say Y here if you want to use the BF54x keypad.
3228f740ef3SMichael Hennerich
3238f740ef3SMichael Hennerich	  To compile this driver as a module, choose M here: the
3248f740ef3SMichael Hennerich	  module will be called bf54x-keys.
3258f740ef3SMichael Hennerich
326795e6bf3SMagnus Dammconfig KEYBOARD_SH_KEYSC
327795e6bf3SMagnus Damm	tristate "SuperH KEYSC keypad support"
328795e6bf3SMagnus Damm	depends on SUPERH
329795e6bf3SMagnus Damm	help
330795e6bf3SMagnus Damm	  Say Y here if you want to use a keypad attached to the KEYSC block
331795e6bf3SMagnus Damm	  on SuperH processors such as sh7722 and sh7343.
332795e6bf3SMagnus Damm
333795e6bf3SMagnus Damm	  To compile this driver as a module, choose M here: the
334795e6bf3SMagnus Damm	  module will be called sh_keysc.
3351da177e4SLinus Torvaldsendif
336