xref: /linux/drivers/input/keyboard/Kconfig (revision f799a3d8fe170159257b75c1baf48a7c1f625d1d)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# Input core configuration
31da177e4SLinus Torvalds#
41da177e4SLinus Torvaldsmenuconfig INPUT_KEYBOARD
56a108a14SDavid Rientjes	bool "Keyboards" if EXPERT || !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
15fba65fe0SMichael Hennerichconfig KEYBOARD_ADP5520
16fba65fe0SMichael Hennerich	tristate "Keypad Support for ADP5520 PMIC"
17fba65fe0SMichael Hennerich	depends on PMIC_ADP5520
18fba65fe0SMichael Hennerich	help
19fba65fe0SMichael Hennerich	  This option enables support for the keypad scan matrix
20fba65fe0SMichael Hennerich	  on Analog Devices ADP5520 PMICs.
21fba65fe0SMichael Hennerich
22fba65fe0SMichael Hennerich	  To compile this driver as a module, choose M here: the module will
23fba65fe0SMichael Hennerich	  be called adp5520-keys.
24fba65fe0SMichael Hennerich
2588751dd6SMichael Hennerichconfig KEYBOARD_ADP5588
265a9003dbSMichael Hennerich	tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander"
2788751dd6SMichael Hennerich	depends on I2C
2888751dd6SMichael Hennerich	help
295a9003dbSMichael Hennerich	  Say Y here if you want to use a ADP5588/87 attached to your
3088751dd6SMichael Hennerich	  system I2C bus.
3188751dd6SMichael Hennerich
3288751dd6SMichael Hennerich	  To compile this driver as a module, choose M here: the
3388751dd6SMichael Hennerich	  module will be called adp5588-keys.
3488751dd6SMichael Hennerich
359d2e1736SMichael Hennerichconfig KEYBOARD_ADP5589
363f48e735SMichael Hennerich	tristate "ADP5585/ADP5589 I2C QWERTY Keypad and IO Expander"
379d2e1736SMichael Hennerich	depends on I2C
389d2e1736SMichael Hennerich	help
393f48e735SMichael Hennerich	  Say Y here if you want to use a ADP5585/ADP5589 attached to your
409d2e1736SMichael Hennerich	  system I2C bus.
419d2e1736SMichael Hennerich
429d2e1736SMichael Hennerich	  To compile this driver as a module, choose M here: the
439d2e1736SMichael Hennerich	  module will be called adp5589-keys.
449d2e1736SMichael Hennerich
45cb589529SDmitry Torokhovconfig KEYBOARD_AMIGA
46cb589529SDmitry Torokhov	tristate "Amiga keyboard"
47cb589529SDmitry Torokhov	depends on AMIGA
48cb589529SDmitry Torokhov	help
49cb589529SDmitry Torokhov	  Say Y here if you are running Linux on any AMIGA and have a keyboard
50cb589529SDmitry Torokhov	  attached.
51cb589529SDmitry Torokhov
52cb589529SDmitry Torokhov	  To compile this driver as a module, choose M here: the
53cb589529SDmitry Torokhov	  module will be called amikbd.
54cb589529SDmitry Torokhov
55cb589529SDmitry Torokhovconfig ATARI_KBD_CORE
56cb589529SDmitry Torokhov	bool
57cb589529SDmitry Torokhov
58cb589529SDmitry Torokhovconfig KEYBOARD_ATARI
59cb589529SDmitry Torokhov	tristate "Atari keyboard"
60cb589529SDmitry Torokhov	depends on ATARI
61cb589529SDmitry Torokhov	select ATARI_KBD_CORE
62cb589529SDmitry Torokhov	help
63cb589529SDmitry Torokhov	  Say Y here if you are running Linux on any Atari and have a keyboard
64cb589529SDmitry Torokhov	  attached.
65cb589529SDmitry Torokhov
66cb589529SDmitry Torokhov	  To compile this driver as a module, choose M here: the
67cb589529SDmitry Torokhov	  module will be called atakbd.
68cb589529SDmitry Torokhov
691da177e4SLinus Torvaldsconfig KEYBOARD_ATKBD
706a108a14SDavid Rientjes	tristate "AT keyboard" if EXPERT || !X86
711da177e4SLinus Torvalds	default y
721da177e4SLinus Torvalds	select SERIO
731da177e4SLinus Torvalds	select SERIO_LIBPS2
7444631ac6SFeng Tang	select SERIO_I8042 if X86
751da177e4SLinus Torvalds	select SERIO_GSCPS2 if GSC
761da177e4SLinus Torvalds	help
771da177e4SLinus Torvalds	  Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
781da177e4SLinus Torvalds	  you'll need this, unless you have a different type keyboard (USB, ADB
791da177e4SLinus Torvalds	  or other). This also works for AT and PS/2 keyboards connected over a
801da177e4SLinus Torvalds	  PS/2 to serial converter.
811da177e4SLinus Torvalds
821da177e4SLinus Torvalds	  If unsure, say Y.
831da177e4SLinus Torvalds
841da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
851da177e4SLinus Torvalds	  module will be called atkbd.
861da177e4SLinus Torvalds
871da177e4SLinus Torvaldsconfig KEYBOARD_ATKBD_HP_KEYCODES
881da177e4SLinus Torvalds	bool "Use HP keyboard scancodes"
891da177e4SLinus Torvalds	depends on PARISC && KEYBOARD_ATKBD
901da177e4SLinus Torvalds	default y
911da177e4SLinus Torvalds	help
921da177e4SLinus Torvalds	  Say Y here if you have a PA-RISC machine and want to use an AT or
931da177e4SLinus Torvalds	  PS/2 keyboard, and your keyboard uses keycodes that are specific to
941da177e4SLinus Torvalds	  PA-RISC keyboards.
951da177e4SLinus Torvalds
961da177e4SLinus Torvalds	  Say N if you use a standard keyboard.
971da177e4SLinus Torvalds
981da177e4SLinus Torvaldsconfig KEYBOARD_ATKBD_RDI_KEYCODES
991da177e4SLinus Torvalds	bool "Use PrecisionBook keyboard scancodes"
1001da177e4SLinus Torvalds	depends on KEYBOARD_ATKBD_HP_KEYCODES
1011da177e4SLinus Torvalds	default n
1021da177e4SLinus Torvalds	help
1031da177e4SLinus Torvalds	  If you have an RDI PrecisionBook, say Y here if you want to use its
1041da177e4SLinus Torvalds	  built-in keyboard (as opposed to an external keyboard).
1051da177e4SLinus Torvalds
1061da177e4SLinus Torvalds	  The PrecisionBook has five keys that conflict with those used by most
1071da177e4SLinus Torvalds	  AT and PS/2 keyboards. These are as follows:
1081da177e4SLinus Torvalds
1091da177e4SLinus Torvalds	    PrecisionBook    Standard AT or PS/2
1101da177e4SLinus Torvalds
1111da177e4SLinus Torvalds	    F1               F12
1121da177e4SLinus Torvalds	    Left Ctrl        Left Alt
1131da177e4SLinus Torvalds	    Caps Lock        Left Ctrl
1141da177e4SLinus Torvalds	    Right Ctrl       Caps Lock
1151da177e4SLinus Torvalds	    Left             102nd key (the key to the right of Left Shift)
1161da177e4SLinus Torvalds
1171da177e4SLinus Torvalds	  If you say N here, and use the PrecisionBook keyboard, then each key
1181da177e4SLinus Torvalds	  in the left-hand column will be interpreted as the corresponding key
1191da177e4SLinus Torvalds	  in the right-hand column.
1201da177e4SLinus Torvalds
1211da177e4SLinus Torvalds	  If you say Y here, and use an external keyboard, then each key in the
1221da177e4SLinus Torvalds	  right-hand column will be interpreted as the key shown in the
1231da177e4SLinus Torvalds	  left-hand column.
1241da177e4SLinus Torvalds
125bd7e4e85SBo Shenconfig KEYBOARD_QT1070
126bd7e4e85SBo Shen       tristate "Atmel AT42QT1070 Touch Sensor Chip"
127bd7e4e85SBo Shen       depends on I2C
128bd7e4e85SBo Shen       help
129bd7e4e85SBo Shen         Say Y here if you want to use Atmel AT42QT1070 QTouch
130bd7e4e85SBo Shen         Sensor chip as input device.
131bd7e4e85SBo Shen
132bd7e4e85SBo Shen         To compile this driver as a module, choose M here:
133bd7e4e85SBo Shen         the module will be called qt1070
134bd7e4e85SBo Shen
135d90d8d5eSChristoph Fritzconfig KEYBOARD_QT2160
136fde11323SRaphael Derosso Pereira	tristate "Atmel AT42QT2160 Touch Sensor Chip"
137fde11323SRaphael Derosso Pereira	depends on I2C && EXPERIMENTAL
138fde11323SRaphael Derosso Pereira	help
139fde11323SRaphael Derosso Pereira	  If you say yes here you get support for Atmel AT42QT2160 Touch
140fde11323SRaphael Derosso Pereira	  Sensor chip as a keyboard input.
141fde11323SRaphael Derosso Pereira
142fde11323SRaphael Derosso Pereira	  This driver can also be built as a module. If so, the module
143fde11323SRaphael Derosso Pereira	  will be called qt2160.
144fde11323SRaphael Derosso Pereira
145cb589529SDmitry Torokhovconfig KEYBOARD_BFIN
146cb589529SDmitry Torokhov	tristate "Blackfin BF54x keypad support"
147cb589529SDmitry Torokhov	depends on (BF54x && !BF544)
1481da177e4SLinus Torvalds	help
149cb589529SDmitry Torokhov	  Say Y here if you want to use the BF54x keypad.
1501da177e4SLinus Torvalds
1511da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
152cb589529SDmitry Torokhov	  module will be called bf54x-keys.
153cb589529SDmitry Torokhov
1541da177e4SLinus Torvaldsconfig KEYBOARD_LKKBD
1551da177e4SLinus Torvalds	tristate "DECstation/VAXstation LK201/LK401 keyboard"
1561da177e4SLinus Torvalds	select SERIO
1571da177e4SLinus Torvalds	help
1581da177e4SLinus Torvalds	  Say Y here if you want to use a LK201 or LK401 style serial
1591da177e4SLinus Torvalds	  keyboard. This keyboard is also useable on PCs if you attach
1601da177e4SLinus Torvalds	  it with the inputattach program. The connector pinout is
1611da177e4SLinus Torvalds	  described within lkkbd.c.
1621da177e4SLinus Torvalds
1631da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1641da177e4SLinus Torvalds	  module will be called lkkbd.
1651da177e4SLinus Torvalds
166cb589529SDmitry Torokhovconfig KEYBOARD_EP93XX
167cb589529SDmitry Torokhov	tristate "EP93xx Matrix Keypad support"
168cb589529SDmitry Torokhov	depends on ARCH_EP93XX
1691932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
1701da177e4SLinus Torvalds	help
171cb589529SDmitry Torokhov	  Say Y here to enable the matrix keypad on the Cirrus EP93XX.
1721da177e4SLinus Torvalds
1731da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
174cb589529SDmitry Torokhov	  module will be called ep93xx_keypad.
1751da177e4SLinus Torvalds
176cb589529SDmitry Torokhovconfig KEYBOARD_GPIO
177cb589529SDmitry Torokhov	tristate "GPIO Buttons"
178cb589529SDmitry Torokhov	depends on GENERIC_GPIO
1791da177e4SLinus Torvalds	help
180cb589529SDmitry Torokhov	  This driver implements support for buttons connected
181cb589529SDmitry Torokhov	  to GPIO pins of various CPUs (and some other chips).
182cb589529SDmitry Torokhov
183cb589529SDmitry Torokhov	  Say Y here if your device has buttons connected
184cb589529SDmitry Torokhov	  directly to such GPIO pins.  Your board-specific
185cb589529SDmitry Torokhov	  setup logic must also provide a platform device,
186cb589529SDmitry Torokhov	  with configuration data saying which GPIOs are used.
1871da177e4SLinus Torvalds
1881da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
189bab7614dSEric Miao	  module will be called gpio_keys.
190bab7614dSEric Miao
1910e7d0c86SGabor Juhosconfig KEYBOARD_GPIO_POLLED
1920e7d0c86SGabor Juhos	tristate "Polled GPIO buttons"
1930e7d0c86SGabor Juhos	depends on GENERIC_GPIO
1940e7d0c86SGabor Juhos	select INPUT_POLLDEV
1950e7d0c86SGabor Juhos	help
1960e7d0c86SGabor Juhos	  This driver implements support for buttons connected
1970e7d0c86SGabor Juhos	  to GPIO pins that are not capable of generating interrupts.
1980e7d0c86SGabor Juhos
1990e7d0c86SGabor Juhos	  Say Y here if your device has buttons connected
2000e7d0c86SGabor Juhos	  directly to such GPIO pins.  Your board-specific
2010e7d0c86SGabor Juhos	  setup logic must also provide a platform device,
2020e7d0c86SGabor Juhos	  with configuration data saying which GPIOs are used.
2030e7d0c86SGabor Juhos
2040e7d0c86SGabor Juhos	  To compile this driver as a module, choose M here: the
2050e7d0c86SGabor Juhos	  module will be called gpio_keys_polled.
2060e7d0c86SGabor Juhos
20730ba3eadSSriramakrishnan Govindarajanconfig KEYBOARD_TCA6416
208b8a3d6bcSTony SIM	tristate "TCA6416/TCA6408A Keypad Support"
20930ba3eadSSriramakrishnan Govindarajan	depends on I2C
21030ba3eadSSriramakrishnan Govindarajan	help
21130ba3eadSSriramakrishnan Govindarajan	  This driver implements basic keypad functionality
212b8a3d6bcSTony SIM	  for keys connected through TCA6416/TCA6408A IO expanders.
21330ba3eadSSriramakrishnan Govindarajan
21430ba3eadSSriramakrishnan Govindarajan	  Say Y here if your device has keys connected to
215b8a3d6bcSTony SIM	  TCA6416/TCA6408A IO expander. Your board-specific setup logic
21630ba3eadSSriramakrishnan Govindarajan	  must also provide pin-mask details(of which TCA6416 pins
21730ba3eadSSriramakrishnan Govindarajan	  are used for keypad).
21830ba3eadSSriramakrishnan Govindarajan
219b8a3d6bcSTony SIM	  If enabled the entire TCA6416 device will be managed through
22030ba3eadSSriramakrishnan Govindarajan	  this driver.
22130ba3eadSSriramakrishnan Govindarajan
222b8a3d6bcSTony SIM	  To compile this driver as a module, choose M here: the
223b8a3d6bcSTony SIM	  module will be called tca6416_keypad.
22430ba3eadSSriramakrishnan Govindarajan
225fb6c721bSKyle Mannaconfig KEYBOARD_TCA8418
226fb6c721bSKyle Manna	tristate "TCA8418 Keypad Support"
227fb6c721bSKyle Manna	depends on I2C
2281932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
229fb6c721bSKyle Manna	help
230fb6c721bSKyle Manna	  This driver implements basic keypad functionality
231fb6c721bSKyle Manna	  for keys connected through TCA8418 keypad decoder.
232fb6c721bSKyle Manna
233fb6c721bSKyle Manna	  Say Y here if your device has keys connected to
234fb6c721bSKyle Manna	  TCA8418 keypad decoder.
235fb6c721bSKyle Manna
236fb6c721bSKyle Manna	  If enabled the complete TCA8418 device will be managed through
237fb6c721bSKyle Manna	  this driver.
238fb6c721bSKyle Manna
239fb6c721bSKyle Manna	  To compile this driver as a module, choose M here: the
240fb6c721bSKyle Manna	  module will be called tca8418_keypad.
241fb6c721bSKyle Manna
242bab7614dSEric Miaoconfig KEYBOARD_MATRIX
243bab7614dSEric Miao	tristate "GPIO driven matrix keypad support"
244bab7614dSEric Miao	depends on GENERIC_GPIO
2451932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
246bab7614dSEric Miao	help
247bab7614dSEric Miao	  Enable support for GPIO driven matrix keypad.
248bab7614dSEric Miao
249bab7614dSEric Miao	  To compile this driver as a module, choose M here: the
250bab7614dSEric Miao	  module will be called matrix_keypad.
251c04cb856SMichael Schmitz
2521da177e4SLinus Torvaldsconfig KEYBOARD_HIL_OLD
2531da177e4SLinus Torvalds	tristate "HP HIL keyboard support (simple driver)"
254da96d0b5SGeert Uytterhoeven	depends on GSC || HP300
2551da177e4SLinus Torvalds	default y
2561da177e4SLinus Torvalds	help
2571da177e4SLinus Torvalds	  The "Human Interface Loop" is a older, 8-channel USB-like
2581da177e4SLinus Torvalds	  controller used in several Hewlett Packard models. This driver
2591da177e4SLinus Torvalds	  was adapted from the one written for m68k/hp300, and implements
2601da177e4SLinus Torvalds	  support for a keyboard attached to the HIL port, but not for
2611da177e4SLinus Torvalds	  any other types of HIL input devices like mice or tablets.
2621da177e4SLinus Torvalds	  However, it has been thoroughly tested and is stable.
2631da177e4SLinus Torvalds
2641da177e4SLinus Torvalds	  If you want full HIL support including support for multiple
26509509603SMatt LaPlante	  keyboards, mice, and tablets, you have to enable the
2661da177e4SLinus Torvalds	  "HP System Device Controller i8042 Support" in the input/serio
2671da177e4SLinus Torvalds	  submenu.
2681da177e4SLinus Torvalds
2691da177e4SLinus Torvaldsconfig KEYBOARD_HIL
270fa71c605SDmitry Torokhov	tristate "HP HIL keyboard/pointer support"
271da96d0b5SGeert Uytterhoeven	depends on GSC || HP300
2721da177e4SLinus Torvalds	default y
2731da177e4SLinus Torvalds	select HP_SDC
2741da177e4SLinus Torvalds	select HIL_MLC
2751da177e4SLinus Torvalds	select SERIO
2761da177e4SLinus Torvalds	help
2771da177e4SLinus Torvalds	  The "Human Interface Loop" is a older, 8-channel USB-like
2781da177e4SLinus Torvalds	  controller used in several Hewlett Packard models.
279fa71c605SDmitry Torokhov	  This driver implements support for HIL-keyboards and pointing
280fa71c605SDmitry Torokhov	  devices (mice, tablets, touchscreens) attached
2811da177e4SLinus Torvalds	  to your machine, so normally you should say Y here.
2821da177e4SLinus Torvalds
2832aa2cb9eSKristoffer Ericsonconfig KEYBOARD_HP6XX
2844ff891ebSKristoffer Ericson	tristate "HP Jornada 6xx keyboard"
2852aa2cb9eSKristoffer Ericson	depends on SH_HP6XX
2862aa2cb9eSKristoffer Ericson	select INPUT_POLLDEV
2872aa2cb9eSKristoffer Ericson	help
2884ff891ebSKristoffer Ericson	  Say Y here if you have a HP Jornada 620/660/680/690 and want to
2894ff891ebSKristoffer Ericson	  support the built-in keyboard.
2902aa2cb9eSKristoffer Ericson
2912aa2cb9eSKristoffer Ericson	  To compile this driver as a module, choose M here: the
2922aa2cb9eSKristoffer Ericson	  module will be called jornada680_kbd.
2932aa2cb9eSKristoffer Ericson
294b0a4e1aaSKristoffer Ericsonconfig KEYBOARD_HP7XX
2954ff891ebSKristoffer Ericson	tristate "HP Jornada 7xx keyboard"
296b0a4e1aaSKristoffer Ericson	depends on SA1100_JORNADA720_SSP && SA1100_SSP
297b0a4e1aaSKristoffer Ericson	help
2984ff891ebSKristoffer Ericson	  Say Y here if you have a HP Jornada 710/720/728 and want to
2994ff891ebSKristoffer Ericson	  support the built-in keyboard.
300b0a4e1aaSKristoffer Ericson
301b0a4e1aaSKristoffer Ericson	  To compile this driver as a module, choose M here: the
302b0a4e1aaSKristoffer Ericson	  module will be called jornada720_kbd.
303b0a4e1aaSKristoffer Ericson
304a48b2d4aSFelipe Balbiconfig KEYBOARD_LM8323
305a48b2d4aSFelipe Balbi	tristate "LM8323 keypad chip"
306a48b2d4aSFelipe Balbi	depends on I2C
307a48b2d4aSFelipe Balbi	depends on LEDS_CLASS
308a48b2d4aSFelipe Balbi	help
309a48b2d4aSFelipe Balbi	  If you say yes here you get support for the National Semiconductor
310a48b2d4aSFelipe Balbi	  LM8323 keypad controller.
311a48b2d4aSFelipe Balbi
312a48b2d4aSFelipe Balbi	  To compile this driver as a module, choose M here: the
313a48b2d4aSFelipe Balbi	  module will be called lm8323.
314a48b2d4aSFelipe Balbi
3150bf25a45SWolfram Sangconfig KEYBOARD_LM8333
3160bf25a45SWolfram Sang	tristate "LM8333 keypad chip"
3170bf25a45SWolfram Sang	depends on I2C
3181932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
3190bf25a45SWolfram Sang	help
3200bf25a45SWolfram Sang	  If you say yes here you get support for the National Semiconductor
3210bf25a45SWolfram Sang	  LM8333 keypad controller.
3220bf25a45SWolfram Sang
3230bf25a45SWolfram Sang	  To compile this driver as a module, choose M here: the
3240bf25a45SWolfram Sang	  module will be called lm8333.
3250bf25a45SWolfram Sang
326cb589529SDmitry Torokhovconfig KEYBOARD_LOCOMO
327cb589529SDmitry Torokhov	tristate "LoCoMo Keyboard Support"
328cb589529SDmitry Torokhov	depends on SHARP_LOCOMO
329ad4e09b1SKomal Shah	help
330cb589529SDmitry Torokhov	  Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA
331ad4e09b1SKomal Shah
332ad4e09b1SKomal Shah	  To compile this driver as a module, choose M here: the
333cb589529SDmitry Torokhov	  module will be called locomokbd.
334cb589529SDmitry Torokhov
33569690becSRoland Stiggeconfig KEYBOARD_LPC32XX
33669690becSRoland Stigge	tristate "LPC32XX matrix key scanner support"
33769690becSRoland Stigge	depends on ARCH_LPC32XX && OF
33869690becSRoland Stigge	help
33969690becSRoland Stigge	  Say Y here if you want to use NXP LPC32XX SoC key scanner interface,
34069690becSRoland Stigge	  connected to a key matrix.
34169690becSRoland Stigge
34269690becSRoland Stigge	  To compile this driver as a module, choose M here: the
34369690becSRoland Stigge	  module will be called lpc32xx-keys.
34469690becSRoland Stigge
345cb589529SDmitry Torokhovconfig KEYBOARD_MAPLE
346cb589529SDmitry Torokhov	tristate "Maple bus keyboard"
347cb589529SDmitry Torokhov	depends on SH_DREAMCAST && MAPLE
348cb589529SDmitry Torokhov	help
349cb589529SDmitry Torokhov	  Say Y here if you have a Dreamcast console running Linux and have
350cb589529SDmitry Torokhov	  a keyboard attached to its Maple bus.
351cb589529SDmitry Torokhov
352cb589529SDmitry Torokhov	  To compile this driver as a module, choose M here: the
353cb589529SDmitry Torokhov	  module will be called maple_keyb.
354cb589529SDmitry Torokhov
3550baf81baSKim Kyuwonconfig KEYBOARD_MAX7359
3560baf81baSKim Kyuwon	tristate "Maxim MAX7359 Key Switch Controller"
3570baf81baSKim Kyuwon	depends on I2C
3580baf81baSKim Kyuwon	help
3590baf81baSKim Kyuwon	  If you say yes here you get support for the Maxim MAX7359 Key
3600baf81baSKim Kyuwon	  Switch Controller chip. This providers microprocessors with
3610baf81baSKim Kyuwon	  management of up to 64 key switches
3620baf81baSKim Kyuwon
3630baf81baSKim Kyuwon	  To compile this driver as a module, choose M here: the
3640baf81baSKim Kyuwon	  module will be called max7359_keypad.
3650baf81baSKim Kyuwon
366312e8e8aSJoonyoung Shimconfig KEYBOARD_MCS
367312e8e8aSJoonyoung Shim	tristate "MELFAS MCS Touchkey"
368312e8e8aSJoonyoung Shim	depends on I2C
369312e8e8aSJoonyoung Shim	help
370312e8e8aSJoonyoung Shim	  Say Y here if you have the MELFAS MCS5000/5080 touchkey controller
371312e8e8aSJoonyoung Shim	  chip in your system.
372312e8e8aSJoonyoung Shim
373312e8e8aSJoonyoung Shim	  If unsure, say N.
374312e8e8aSJoonyoung Shim
375312e8e8aSJoonyoung Shim	  To compile this driver as a module, choose M here: the
376312e8e8aSJoonyoung Shim	  module will be called mcs_touchkey.
377312e8e8aSJoonyoung Shim
37836682b81SZhang Jiejingconfig KEYBOARD_MPR121
37936682b81SZhang Jiejing	tristate "Freescale MPR121 Touchkey"
38036682b81SZhang Jiejing	depends on I2C
38136682b81SZhang Jiejing	help
38236682b81SZhang Jiejing	  Say Y here if you have Freescale MPR121 touchkey controller
38336682b81SZhang Jiejing	  chip in your system.
38436682b81SZhang Jiejing
38536682b81SZhang Jiejing	  If unsure, say N.
38636682b81SZhang Jiejing
38736682b81SZhang Jiejing	  To compile this driver as a module, choose M here: the
38836682b81SZhang Jiejing	  module will be called mpr121_touchkey.
38936682b81SZhang Jiejing
39076cdc083SAlberto Panizzoconfig KEYBOARD_IMX
39176cdc083SAlberto Panizzo	tristate "IMX keypad support"
39276cdc083SAlberto Panizzo	depends on ARCH_MXC
3931932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
39476cdc083SAlberto Panizzo	help
39576cdc083SAlberto Panizzo	  Enable support for IMX keypad port.
39676cdc083SAlberto Panizzo
39776cdc083SAlberto Panizzo	  To compile this driver as a module, choose M here: the
39876cdc083SAlberto Panizzo	  module will be called imx_keypad.
39976cdc083SAlberto Panizzo
400cb589529SDmitry Torokhovconfig KEYBOARD_NEWTON
401cb589529SDmitry Torokhov	tristate "Newton keyboard"
402cb589529SDmitry Torokhov	select SERIO
403cb589529SDmitry Torokhov	help
404cb589529SDmitry Torokhov	  Say Y here if you have a Newton keyboard on a serial port.
405cb589529SDmitry Torokhov
406cb589529SDmitry Torokhov	  To compile this driver as a module, choose M here: the
407cb589529SDmitry Torokhov	  module will be called newtonkbd.
408ad4e09b1SKomal Shah
4091158f0f1SSundar Iyerconfig KEYBOARD_NOMADIK
4101158f0f1SSundar Iyer	tristate "ST-Ericsson Nomadik SKE keyboard"
4111158f0f1SSundar Iyer	depends on PLAT_NOMADIK
4121932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
4131158f0f1SSundar Iyer	help
4141158f0f1SSundar Iyer	  Say Y here if you want to use a keypad provided on the SKE controller
4151158f0f1SSundar Iyer	  used on the Ux500 and Nomadik platforms
4161158f0f1SSundar Iyer
4171158f0f1SSundar Iyer	  To compile this driver as a module, choose M here: the
4181158f0f1SSundar Iyer	  module will be called nmk-ske-keypad.
4191158f0f1SSundar Iyer
42011f5b30dSRakesh Iyerconfig KEYBOARD_TEGRA
42111f5b30dSRakesh Iyer	tristate "NVIDIA Tegra internal matrix keyboard controller support"
42211f5b30dSRakesh Iyer	depends on ARCH_TEGRA
4231932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
42411f5b30dSRakesh Iyer	help
42511f5b30dSRakesh Iyer	  Say Y here if you want to use a matrix keyboard connected directly
42611f5b30dSRakesh Iyer	  to the internal keyboard controller on Tegra SoCs.
42711f5b30dSRakesh Iyer
42811f5b30dSRakesh Iyer	  To compile this driver as a module, choose M here: the
42911f5b30dSRakesh Iyer	  module will be called tegra-kbc.
43011f5b30dSRakesh Iyer
431422b552dSJavier Herreroconfig KEYBOARD_OPENCORES
432422b552dSJavier Herrero	tristate "OpenCores Keyboard Controller"
433422b552dSJavier Herrero	help
434422b552dSJavier Herrero	  Say Y here if you want to use the OpenCores Keyboard Controller
435422b552dSJavier Herrero	  http://www.opencores.org/project,keyboardcontroller
436422b552dSJavier Herrero
437422b552dSJavier Herrero	  To compile this driver as a module, choose M here; the
438422b552dSJavier Herrero	  module will be called opencores-kbd.
439422b552dSJavier Herrero
4405a90e5bcSRodolfo Giometticonfig KEYBOARD_PXA27x
441e0f2677fSEric Miao	tristate "PXA27x/PXA3xx keypad support"
4426d109465SMark F. Brown	depends on PXA27x || PXA3xx || ARCH_MMP
4435a90e5bcSRodolfo Giometti	help
444bab7614dSEric Miao	  Enable support for PXA27x/PXA3xx keypad controller.
4455a90e5bcSRodolfo Giometti
4465a90e5bcSRodolfo Giometti	  To compile this driver as a module, choose M here: the
4470e5f11aaSEric Miao	  module will be called pxa27x_keypad.
4485a90e5bcSRodolfo Giometti
449e0ee6298SYong Yaoconfig KEYBOARD_PXA930_ROTARY
450e0ee6298SYong Yao	tristate "PXA930/PXA935 Enhanced Rotary Controller Support"
451e0ee6298SYong Yao	depends on CPU_PXA930 || CPU_PXA935
452e0ee6298SYong Yao	help
453e0ee6298SYong Yao	  Enable support for PXA930/PXA935 Enhanced Rotary Controller.
454e0ee6298SYong Yao
455e0ee6298SYong Yao	  To compile this driver as a module, choose M here: the
456e0ee6298SYong Yao	  module will be called pxa930_rotary.
457e0ee6298SYong Yao
45839325b59STrilok Soniconfig KEYBOARD_PMIC8XXX
45939325b59STrilok Soni	tristate "Qualcomm PMIC8XXX keypad support"
46039325b59STrilok Soni	depends on MFD_PM8XXX
4611932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
46239325b59STrilok Soni	help
46339325b59STrilok Soni	  Say Y here if you want to enable the driver for the PMIC8XXX
46439325b59STrilok Soni	  keypad provided as a reference design from Qualcomm. This is intended
46539325b59STrilok Soni	  to support upto 18x8 matrix based keypad design.
46639325b59STrilok Soni
46739325b59STrilok Soni	  To compile this driver as a module, choose M here: the module will
46839325b59STrilok Soni	  be called pmic8xxx-keypad.
46939325b59STrilok Soni
4700fffed27SJoonyoung Shimconfig KEYBOARD_SAMSUNG
4710fffed27SJoonyoung Shim	tristate "Samsung keypad support"
4728d964a28SDmitry Torokhov	depends on HAVE_CLK
4731932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
4740fffed27SJoonyoung Shim	help
4758d964a28SDmitry Torokhov	  Say Y here if you want to use the keypad on your Samsung mobile
4768d964a28SDmitry Torokhov	  device.
4770fffed27SJoonyoung Shim
4780fffed27SJoonyoung Shim	  To compile this driver as a module, choose M here: the
4790fffed27SJoonyoung Shim	  module will be called samsung-keypad.
4800fffed27SJoonyoung Shim
481cb589529SDmitry Torokhovconfig KEYBOARD_STOWAWAY
482cb589529SDmitry Torokhov	tristate "Stowaway keyboard"
483cb589529SDmitry Torokhov	select SERIO
48478a56aabSPhil Blundell	help
485cb589529SDmitry Torokhov	  Say Y here if you have a Stowaway keyboard on a serial port.
486cb589529SDmitry Torokhov	  Stowaway compatible keyboards like Dicota Input-PDA keyboard
487cb589529SDmitry Torokhov	  are also supported by this driver.
48878a56aabSPhil Blundell
48978a56aabSPhil Blundell	  To compile this driver as a module, choose M here: the
490cb589529SDmitry Torokhov	  module will be called stowaway.
491f9705fcbSNicolas Bellido
492cb589529SDmitry Torokhovconfig KEYBOARD_SUNKBD
493cb589529SDmitry Torokhov	tristate "Sun Type 4 and Type 5 keyboard"
494cb589529SDmitry Torokhov	select SERIO
495b11d2127SAdrian McMenamin	help
496cb589529SDmitry Torokhov	  Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
497cb589529SDmitry Torokhov	  connected either to the Sun keyboard connector or to an serial
498cb589529SDmitry Torokhov	  (RS-232) port via a simple adapter.
499b11d2127SAdrian McMenamin
500b11d2127SAdrian McMenamin	  To compile this driver as a module, choose M here: the
501cb589529SDmitry Torokhov	  module will be called sunkbd.
5028f740ef3SMichael Hennerich
503795e6bf3SMagnus Dammconfig KEYBOARD_SH_KEYSC
504795e6bf3SMagnus Damm	tristate "SuperH KEYSC keypad support"
5054e45ad5eSMagnus Damm	depends on SUPERH || ARCH_SHMOBILE
506795e6bf3SMagnus Damm	help
507795e6bf3SMagnus Damm	  Say Y here if you want to use a keypad attached to the KEYSC block
508795e6bf3SMagnus Damm	  on SuperH processors such as sh7722 and sh7343.
509795e6bf3SMagnus Damm
510795e6bf3SMagnus Damm	  To compile this driver as a module, choose M here: the
511795e6bf3SMagnus Damm	  module will be called sh_keysc.
512a48b2d4aSFelipe Balbi
51376f10845SRabin Vincentconfig KEYBOARD_STMPE
51476f10845SRabin Vincent	tristate "STMPE keypad support"
51576f10845SRabin Vincent	depends on MFD_STMPE
5161932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
51776f10845SRabin Vincent	help
51876f10845SRabin Vincent	  Say Y here if you want to use the keypad controller on STMPE I/O
51976f10845SRabin Vincent	  expanders.
52076f10845SRabin Vincent
52176f10845SRabin Vincent	  To compile this driver as a module, choose M here: the module will be
52276f10845SRabin Vincent	  called stmpe-keypad.
52376f10845SRabin Vincent
524bc09dcadSMiguel Aguilarconfig KEYBOARD_DAVINCI
525bc09dcadSMiguel Aguilar	tristate "TI DaVinci Key Scan"
526bc09dcadSMiguel Aguilar	depends on ARCH_DAVINCI_DM365
527bc09dcadSMiguel Aguilar	help
528bc09dcadSMiguel Aguilar	  Say Y to enable keypad module support for the TI DaVinci
529bc09dcadSMiguel Aguilar	  platforms (DM365).
530bc09dcadSMiguel Aguilar
531bc09dcadSMiguel Aguilar	  To compile this driver as a module, choose M here: the
532bc09dcadSMiguel Aguilar	  module will be called davinci_keyscan.
533bc09dcadSMiguel Aguilar
534cb589529SDmitry Torokhovconfig KEYBOARD_OMAP
535cb589529SDmitry Torokhov	tristate "TI OMAP keypad support"
536*f799a3d8STony Lindgren	depends on ARCH_OMAP1
5371932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
538e06003afSH Hartley Sweeten	help
539cb589529SDmitry Torokhov	  Say Y here if you want to use the OMAP keypad.
540e06003afSH Hartley Sweeten
541e06003afSH Hartley Sweeten	  To compile this driver as a module, choose M here: the
542cb589529SDmitry Torokhov	  module will be called omap-keypad.
543cb589529SDmitry Torokhov
544a17f7955SAbraham Arceconfig KEYBOARD_OMAP4
545f77621ccSPoddar, Sourav	tristate "TI OMAP4+ keypad support"
5461932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
547a17f7955SAbraham Arce	help
548f77621ccSPoddar, Sourav	  Say Y here if you want to use the OMAP4+ keypad.
549a17f7955SAbraham Arce
550a17f7955SAbraham Arce	  To compile this driver as a module, choose M here: the
551a17f7955SAbraham Arce	  module will be called omap4-keypad.
552a17f7955SAbraham Arce
553bc95df78SRajeev Kumarconfig KEYBOARD_SPEAR
554bc95df78SRajeev Kumar	tristate "ST SPEAR keyboard support"
555bc95df78SRajeev Kumar	depends on PLAT_SPEAR
5561932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
557bc95df78SRajeev Kumar	help
558bc95df78SRajeev Kumar	  Say Y here if you want to use the SPEAR keyboard.
559bc95df78SRajeev Kumar
560bc95df78SRajeev Kumar	  To compile this driver as a module, choose M here: the
561bc95df78SRajeev Kumar	  module will be called spear-keboard.
562bc95df78SRajeev Kumar
56309c730a4SSundar Iyerconfig KEYBOARD_TC3589X
56409c730a4SSundar Iyer	tristate "TC3589X Keypad support"
56509c730a4SSundar Iyer	depends on MFD_TC3589X
5661932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
56709c730a4SSundar Iyer	help
56809c730a4SSundar Iyer	  Say Y here if you want to use the keypad controller on
56909c730a4SSundar Iyer	  TC35892/3 I/O expander.
57009c730a4SSundar Iyer
57109c730a4SSundar Iyer	  To compile this driver as a module, choose M here: the
57209c730a4SSundar Iyer	  module will be called tc3589x-keypad.
57309c730a4SSundar Iyer
57470614084SCyril Chemparathyconfig KEYBOARD_TNETV107X
57570614084SCyril Chemparathy	tristate "TI TNETV107X keypad support"
57670614084SCyril Chemparathy	depends on ARCH_DAVINCI_TNETV107X
5771932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
57870614084SCyril Chemparathy	help
57970614084SCyril Chemparathy	  Say Y here if you want to use the TNETV107X keypad.
58070614084SCyril Chemparathy
58170614084SCyril Chemparathy	  To compile this driver as a module, choose M here: the
58270614084SCyril Chemparathy	  module will be called tnetv107x-keypad.
58370614084SCyril Chemparathy
5849d834068SDavid Brownellconfig KEYBOARD_TWL4030
5859d834068SDavid Brownell	tristate "TI TWL4030/TWL5030/TPS659x0 keypad support"
5869d834068SDavid Brownell	depends on TWL4030_CORE
5871932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
5889d834068SDavid Brownell	help
5899d834068SDavid Brownell	  Say Y here if your board use the keypad controller on
5909d834068SDavid Brownell	  TWL4030 family chips.  It's safe to say enable this
5919d834068SDavid Brownell	  even on boards that don't use the keypad controller.
5929d834068SDavid Brownell
5939d834068SDavid Brownell	  To compile this driver as a module, choose M here: the
5949d834068SDavid Brownell	  module will be called twl4030_keypad.
5959d834068SDavid Brownell
596cb589529SDmitry Torokhovconfig KEYBOARD_XTKBD
597cb589529SDmitry Torokhov	tristate "XT keyboard"
598cb589529SDmitry Torokhov	select SERIO
599cb589529SDmitry Torokhov	help
600cb589529SDmitry Torokhov	  Say Y here if you want to use the old IBM PC/XT keyboard (or
601cb589529SDmitry Torokhov	  compatible) on your system. This is only possible with a
602cb589529SDmitry Torokhov	  parallel port keyboard adapter, you cannot connect it to the
603cb589529SDmitry Torokhov	  keyboard port on a PC that runs Linux.
604cb589529SDmitry Torokhov
605cb589529SDmitry Torokhov	  To compile this driver as a module, choose M here: the
606cb589529SDmitry Torokhov	  module will be called xtkbd.
607e06003afSH Hartley Sweeten
6084a15235eSWan ZongShunconfig KEYBOARD_W90P910
6094a15235eSWan ZongShun	tristate "W90P910 Matrix Keypad support"
6104a15235eSWan ZongShun	depends on ARCH_W90X900
6111932811fSDmitry Torokhov	select INPUT_MATRIXKMAP
6124a15235eSWan ZongShun	help
6134a15235eSWan ZongShun	  Say Y here to enable the matrix keypad on evaluation board
6144a15235eSWan ZongShun	  based on W90P910.
6154a15235eSWan ZongShun
6164a15235eSWan ZongShun	  To compile this driver as a module, choose M here: the
6174a15235eSWan ZongShun	  module will be called w90p910_keypad.
6184a15235eSWan ZongShun
6191da177e4SLinus Torvaldsendif
620