Kconfig 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Input core configuration
  4. #
  5. menuconfig INPUT_KEYBOARD
  6. bool "Keyboards"
  7. default y
  8. help
  9. Say Y here, and a list of supported keyboards will be displayed.
  10. This option doesn't affect the kernel.
  11. If unsure, say Y.
  12. if INPUT_KEYBOARD
  13. config KEYBOARD_ADC
  14. tristate "ADC Ladder Buttons"
  15. depends on IIO
  16. help
  17. This driver implements support for buttons connected
  18. to an ADC using a resistor ladder.
  19. Say Y here if your device has such buttons connected to an ADC. Your
  20. board-specific setup logic must also provide a configuration data
  21. for mapping voltages to buttons.
  22. To compile this driver as a module, choose M here: the
  23. module will be called adc_keys.
  24. config KEYBOARD_ADP5520
  25. tristate "Keypad Support for ADP5520 PMIC"
  26. depends on PMIC_ADP5520
  27. help
  28. This option enables support for the keypad scan matrix
  29. on Analog Devices ADP5520 PMICs.
  30. To compile this driver as a module, choose M here: the module will
  31. be called adp5520-keys.
  32. config KEYBOARD_ADP5588
  33. tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander"
  34. depends on I2C
  35. select GPIOLIB
  36. select GPIOLIB_IRQCHIP
  37. select INPUT_MATRIXKMAP
  38. help
  39. Say Y here if you want to use a ADP5588/87 attached to your
  40. system I2C bus.
  41. To compile this driver as a module, choose M here: the
  42. module will be called adp5588-keys.
  43. config KEYBOARD_ADP5589
  44. tristate "ADP5585/ADP5589 I2C QWERTY Keypad and IO Expander"
  45. depends on I2C
  46. help
  47. Say Y here if you want to use a ADP5585/ADP5589 attached to your
  48. system I2C bus.
  49. To compile this driver as a module, choose M here: the
  50. module will be called adp5589-keys.
  51. config KEYBOARD_AMIGA
  52. tristate "Amiga keyboard"
  53. depends on AMIGA
  54. help
  55. Say Y here if you are running Linux on any AMIGA and have a keyboard
  56. attached.
  57. To compile this driver as a module, choose M here: the
  58. module will be called amikbd.
  59. config KEYBOARD_APPLESPI
  60. tristate "Apple SPI keyboard and trackpad"
  61. depends on ACPI && EFI
  62. depends on SPI
  63. depends on X86 || COMPILE_TEST
  64. depends on LEDS_CLASS
  65. select CRC16
  66. help
  67. Say Y here if you are running Linux on any Apple MacBook8,1 or later,
  68. or any MacBookPro13,* or MacBookPro14,*.
  69. You will also need to enable appropriate SPI master controllers:
  70. spi_pxa2xx_platform and spi_pxa2xx_pci for MacBook8,1, and
  71. spi_pxa2xx_platform and intel_lpss_pci for the rest.
  72. To compile this driver as a module, choose M here: the
  73. module will be called applespi.
  74. config KEYBOARD_ATARI
  75. tristate "Atari keyboard"
  76. depends on ATARI
  77. select ATARI_KBD_CORE
  78. help
  79. Say Y here if you are running Linux on any Atari and have a keyboard
  80. attached.
  81. To compile this driver as a module, choose M here: the
  82. module will be called atakbd.
  83. config KEYBOARD_ATKBD
  84. tristate "AT keyboard"
  85. default y
  86. select SERIO
  87. select SERIO_LIBPS2
  88. select SERIO_I8042 if ARCH_MIGHT_HAVE_PC_SERIO
  89. select SERIO_GSCPS2 if GSC
  90. select INPUT_VIVALDIFMAP
  91. help
  92. Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
  93. you'll need this, unless you have a different type keyboard (USB, ADB
  94. or other). This also works for AT and PS/2 keyboards connected over a
  95. PS/2 to serial converter.
  96. If unsure, say Y.
  97. To compile this driver as a module, choose M here: the
  98. module will be called atkbd.
  99. config KEYBOARD_ATKBD_HP_KEYCODES
  100. bool "Use HP keyboard scancodes"
  101. depends on PARISC && KEYBOARD_ATKBD
  102. default y
  103. help
  104. Say Y here if you have a PA-RISC machine and want to use an AT or
  105. PS/2 keyboard, and your keyboard uses keycodes that are specific to
  106. PA-RISC keyboards.
  107. Say N if you use a standard keyboard.
  108. config KEYBOARD_ATKBD_RDI_KEYCODES
  109. bool "Use PrecisionBook keyboard scancodes"
  110. depends on KEYBOARD_ATKBD_HP_KEYCODES
  111. default n
  112. help
  113. If you have an RDI PrecisionBook, say Y here if you want to use its
  114. built-in keyboard (as opposed to an external keyboard).
  115. The PrecisionBook has five keys that conflict with those used by most
  116. AT and PS/2 keyboards. These are as follows:
  117. PrecisionBook Standard AT or PS/2
  118. F1 F12
  119. Left Ctrl Left Alt
  120. Caps Lock Left Ctrl
  121. Right Ctrl Caps Lock
  122. Left 102nd key (the key to the right of Left Shift)
  123. If you say N here, and use the PrecisionBook keyboard, then each key
  124. in the left-hand column will be interpreted as the corresponding key
  125. in the right-hand column.
  126. If you say Y here, and use an external keyboard, then each key in the
  127. right-hand column will be interpreted as the key shown in the
  128. left-hand column.
  129. config KEYBOARD_QT1050
  130. tristate "Microchip AT42QT1050 Touch Sensor Chip"
  131. depends on I2C
  132. select REGMAP_I2C
  133. help
  134. Say Y here if you want to use Microchip AT42QT1050 QTouch
  135. Sensor chip as input device.
  136. To compile this driver as a module, choose M here:
  137. the module will be called qt1050
  138. config KEYBOARD_QT1070
  139. tristate "Atmel AT42QT1070 Touch Sensor Chip"
  140. depends on I2C
  141. help
  142. Say Y here if you want to use Atmel AT42QT1070 QTouch
  143. Sensor chip as input device.
  144. To compile this driver as a module, choose M here:
  145. the module will be called qt1070
  146. config KEYBOARD_QT2160
  147. tristate "Atmel AT42QT2160 Touch Sensor Chip"
  148. depends on I2C
  149. help
  150. If you say yes here you get support for Atmel AT42QT2160 Touch
  151. Sensor chip as a keyboard input.
  152. This driver can also be built as a module. If so, the module
  153. will be called qt2160.
  154. config KEYBOARD_CLPS711X
  155. tristate "CLPS711X Keypad support"
  156. depends on ARCH_CLPS711X || COMPILE_TEST
  157. select INPUT_MATRIXKMAP
  158. help
  159. Say Y here to enable the matrix keypad on the Cirrus Logic
  160. CLPS711X CPUs.
  161. To compile this driver as a module, choose M here: the
  162. module will be called clps711x-keypad.
  163. config KEYBOARD_DLINK_DIR685
  164. tristate "D-Link DIR-685 touchkeys support"
  165. depends on I2C
  166. default ARCH_GEMINI
  167. help
  168. If you say yes here you get support for the D-Link DIR-685
  169. touchkeys.
  170. To compile this driver as a module, choose M here: the
  171. module will be called dlink-dir685-touchkeys.
  172. config KEYBOARD_LKKBD
  173. tristate "DECstation/VAXstation LK201/LK401 keyboard"
  174. select SERIO
  175. help
  176. Say Y here if you want to use a LK201 or LK401 style serial
  177. keyboard. This keyboard is also usable on PCs if you attach
  178. it with the inputattach program. The connector pinout is
  179. described within lkkbd.c.
  180. To compile this driver as a module, choose M here: the
  181. module will be called lkkbd.
  182. config KEYBOARD_EP93XX
  183. tristate "EP93xx Matrix Keypad support"
  184. depends on ARCH_EP93XX || COMPILE_TEST
  185. select INPUT_MATRIXKMAP
  186. help
  187. Say Y here to enable the matrix keypad on the Cirrus EP93XX.
  188. To compile this driver as a module, choose M here: the
  189. module will be called ep93xx_keypad.
  190. config KEYBOARD_GPIO
  191. tristate "GPIO Buttons"
  192. depends on GPIOLIB || COMPILE_TEST
  193. help
  194. This driver implements support for buttons connected
  195. to GPIO pins of various CPUs (and some other chips).
  196. Say Y here if your device has buttons connected
  197. directly to such GPIO pins. Your board-specific
  198. setup logic must also provide a platform device,
  199. with configuration data saying which GPIOs are used.
  200. To compile this driver as a module, choose M here: the
  201. module will be called gpio_keys.
  202. config KEYBOARD_GPIO_POLLED
  203. tristate "Polled GPIO buttons"
  204. depends on GPIOLIB
  205. help
  206. This driver implements support for buttons connected
  207. to GPIO pins that are not capable of generating interrupts.
  208. Say Y here if your device has buttons connected
  209. directly to such GPIO pins. Your board-specific
  210. setup logic must also provide a platform device,
  211. with configuration data saying which GPIOs are used.
  212. To compile this driver as a module, choose M here: the
  213. module will be called gpio_keys_polled.
  214. config KEYBOARD_TCA6416
  215. tristate "TCA6416/TCA6408A Keypad Support"
  216. depends on I2C
  217. help
  218. This driver implements basic keypad functionality
  219. for keys connected through TCA6416/TCA6408A IO expanders.
  220. Say Y here if your device has keys connected to
  221. TCA6416/TCA6408A IO expander. Your board-specific setup logic
  222. must also provide pin-mask details(of which TCA6416 pins
  223. are used for keypad).
  224. If enabled the entire TCA6416 device will be managed through
  225. this driver.
  226. To compile this driver as a module, choose M here: the
  227. module will be called tca6416_keypad.
  228. config KEYBOARD_TCA8418
  229. tristate "TCA8418 Keypad Support"
  230. depends on I2C
  231. select INPUT_MATRIXKMAP
  232. help
  233. This driver implements basic keypad functionality
  234. for keys connected through TCA8418 keypad decoder.
  235. Say Y here if your device has keys connected to
  236. TCA8418 keypad decoder.
  237. If enabled the complete TCA8418 device will be managed through
  238. this driver.
  239. To compile this driver as a module, choose M here: the
  240. module will be called tca8418_keypad.
  241. config KEYBOARD_MATRIX
  242. tristate "GPIO driven matrix keypad support"
  243. depends on GPIOLIB || COMPILE_TEST
  244. select INPUT_MATRIXKMAP
  245. help
  246. Enable support for GPIO driven matrix keypad.
  247. To compile this driver as a module, choose M here: the
  248. module will be called matrix_keypad.
  249. config 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. If you want full HIL support including support for multiple
  261. keyboards, mice, and tablets, you have to enable the
  262. "HP System Device Controller i8042 Support" in the input/serio
  263. submenu.
  264. config KEYBOARD_HIL
  265. tristate "HP HIL keyboard/pointer support"
  266. depends on GSC || HP300
  267. default y
  268. select HP_SDC
  269. select HIL_MLC
  270. select SERIO
  271. help
  272. The "Human Interface Loop" is a older, 8-channel USB-like
  273. controller used in several Hewlett Packard models.
  274. This driver implements support for HIL-keyboards and pointing
  275. devices (mice, tablets, touchscreens) attached
  276. to your machine, so normally you should say Y here.
  277. config KEYBOARD_HP6XX
  278. tristate "HP Jornada 6xx keyboard"
  279. depends on SH_HP6XX
  280. help
  281. Say Y here if you have a HP Jornada 620/660/680/690 and want to
  282. support the built-in keyboard.
  283. To compile this driver as a module, choose M here: the
  284. module will be called jornada680_kbd.
  285. config KEYBOARD_HP7XX
  286. tristate "HP Jornada 7xx keyboard"
  287. depends on SA1100_JORNADA720_SSP && SA1100_SSP
  288. help
  289. Say Y here if you have a HP Jornada 710/720/728 and want to
  290. support the built-in keyboard.
  291. To compile this driver as a module, choose M here: the
  292. module will be called jornada720_kbd.
  293. config KEYBOARD_LM8323
  294. tristate "LM8323 keypad chip"
  295. depends on I2C
  296. depends on LEDS_CLASS
  297. help
  298. If you say yes here you get support for the National Semiconductor
  299. LM8323 keypad controller.
  300. To compile this driver as a module, choose M here: the
  301. module will be called lm8323.
  302. config KEYBOARD_LM8333
  303. tristate "LM8333 keypad chip"
  304. depends on I2C
  305. select INPUT_MATRIXKMAP
  306. help
  307. If you say yes here you get support for the National Semiconductor
  308. LM8333 keypad controller.
  309. To compile this driver as a module, choose M here: the
  310. module will be called lm8333.
  311. config KEYBOARD_LOCOMO
  312. tristate "LoCoMo Keyboard Support"
  313. depends on SHARP_LOCOMO
  314. help
  315. Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA
  316. To compile this driver as a module, choose M here: the
  317. module will be called locomokbd.
  318. config KEYBOARD_LPC32XX
  319. tristate "LPC32XX matrix key scanner support"
  320. depends on ARCH_LPC32XX && OF
  321. select INPUT_MATRIXKMAP
  322. help
  323. Say Y here if you want to use NXP LPC32XX SoC key scanner interface,
  324. connected to a key matrix.
  325. To compile this driver as a module, choose M here: the
  326. module will be called lpc32xx-keys.
  327. config KEYBOARD_MAPLE
  328. tristate "Maple bus keyboard"
  329. depends on SH_DREAMCAST && MAPLE
  330. help
  331. Say Y here if you have a Dreamcast console running Linux and have
  332. a keyboard attached to its Maple bus.
  333. To compile this driver as a module, choose M here: the
  334. module will be called maple_keyb.
  335. config KEYBOARD_MAX7359
  336. tristate "Maxim MAX7359 Key Switch Controller"
  337. select INPUT_MATRIXKMAP
  338. depends on I2C
  339. help
  340. If you say yes here you get support for the Maxim MAX7359 Key
  341. Switch Controller chip. This providers microprocessors with
  342. management of up to 64 key switches
  343. To compile this driver as a module, choose M here: the
  344. module will be called max7359_keypad.
  345. config KEYBOARD_MCS
  346. tristate "MELFAS MCS Touchkey"
  347. depends on I2C
  348. help
  349. Say Y here if you have the MELFAS MCS5000/5080 touchkey controller
  350. chip in your system.
  351. If unsure, say N.
  352. To compile this driver as a module, choose M here: the
  353. module will be called mcs_touchkey.
  354. config 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. If unsure, say N.
  361. To compile this driver as a module, choose M here: the
  362. module will be called mpr121_touchkey.
  363. config KEYBOARD_SNVS_PWRKEY
  364. tristate "IMX SNVS Power Key Driver"
  365. depends on ARCH_MXC || (COMPILE_TEST && HAS_IOMEM)
  366. depends on OF
  367. help
  368. This is the snvs powerkey driver for the Freescale i.MX application
  369. processors.
  370. To compile this driver as a module, choose M here; the
  371. module will be called snvs_pwrkey.
  372. config KEYBOARD_IMX
  373. tristate "IMX keypad support"
  374. depends on ARCH_MXC || COMPILE_TEST
  375. select INPUT_MATRIXKMAP
  376. help
  377. Enable support for IMX keypad port.
  378. To compile this driver as a module, choose M here: the
  379. module will be called imx_keypad.
  380. config KEYBOARD_IMX_SC_KEY
  381. tristate "IMX SCU Key Driver"
  382. depends on IMX_SCU
  383. help
  384. This is the system controller key driver for NXP i.MX SoCs with
  385. system controller inside.
  386. To compile this driver as a module, choose M here: the
  387. module will be called imx_sc_key.
  388. config KEYBOARD_NEWTON
  389. tristate "Newton keyboard"
  390. select SERIO
  391. help
  392. Say Y here if you have a Newton keyboard on a serial port.
  393. To compile this driver as a module, choose M here: the
  394. module will be called newtonkbd.
  395. config KEYBOARD_NOMADIK
  396. tristate "ST-Ericsson Nomadik SKE keyboard"
  397. depends on (ARCH_NOMADIK || ARCH_U8500)
  398. select INPUT_MATRIXKMAP
  399. help
  400. Say Y here if you want to use a keypad provided on the SKE controller
  401. used on the Ux500 and Nomadik platforms
  402. To compile this driver as a module, choose M here: the
  403. module will be called nmk-ske-keypad.
  404. config KEYBOARD_NSPIRE
  405. tristate "TI-NSPIRE built-in keyboard"
  406. depends on ARCH_NSPIRE && OF
  407. select INPUT_MATRIXKMAP
  408. help
  409. Say Y here if you want to use the built-in keypad on TI-NSPIRE.
  410. To compile this driver as a module, choose M here: the
  411. module will be called nspire-keypad.
  412. config KEYBOARD_TEGRA
  413. tristate "NVIDIA Tegra internal matrix keyboard controller support"
  414. depends on ARCH_TEGRA && OF
  415. select INPUT_MATRIXKMAP
  416. help
  417. Say Y here if you want to use a matrix keyboard connected directly
  418. to the internal keyboard controller on Tegra SoCs.
  419. To compile this driver as a module, choose M here: the
  420. module will be called tegra-kbc.
  421. config KEYBOARD_OPENCORES
  422. tristate "OpenCores Keyboard Controller"
  423. depends on HAS_IOMEM
  424. help
  425. Say Y here if you want to use the OpenCores Keyboard Controller
  426. http://www.opencores.org/project,keyboardcontroller
  427. To compile this driver as a module, choose M here; the
  428. module will be called opencores-kbd.
  429. config KEYBOARD_PINEPHONE
  430. tristate "Pine64 PinePhone Keyboard"
  431. depends on I2C && REGULATOR
  432. select CRC8
  433. select INPUT_MATRIXKMAP
  434. help
  435. Say Y here to enable support for the keyboard in the Pine64 PinePhone
  436. keyboard case. This driver supports the FLOSS firmware available at
  437. https://megous.com/git/pinephone-keyboard/
  438. To compile this driver as a module, choose M here; the
  439. module will be called pinephone-keyboard.
  440. config KEYBOARD_PXA27x
  441. tristate "PXA27x/PXA3xx keypad support"
  442. depends on PXA27x || PXA3xx || ARCH_MMP
  443. select INPUT_MATRIXKMAP
  444. help
  445. Enable support for PXA27x/PXA3xx keypad controller.
  446. To compile this driver as a module, choose M here: the
  447. module will be called pxa27x_keypad.
  448. config KEYBOARD_PXA930_ROTARY
  449. tristate "PXA930/PXA935 Enhanced Rotary Controller Support"
  450. depends on CPU_PXA930 || CPU_PXA935
  451. help
  452. Enable support for PXA930/PXA935 Enhanced Rotary Controller.
  453. To compile this driver as a module, choose M here: the
  454. module will be called pxa930_rotary.
  455. config KEYBOARD_PMIC8XXX
  456. tristate "Qualcomm PMIC8XXX keypad support"
  457. depends on MFD_PM8XXX
  458. select INPUT_MATRIXKMAP
  459. help
  460. Say Y here if you want to enable the driver for the PMIC8XXX
  461. keypad provided as a reference design from Qualcomm. This is intended
  462. to support upto 18x8 matrix based keypad design.
  463. To compile this driver as a module, choose M here: the module will
  464. be called pmic8xxx-keypad.
  465. config KEYBOARD_SAMSUNG
  466. tristate "Samsung keypad support"
  467. depends on HAS_IOMEM && HAVE_CLK
  468. select INPUT_MATRIXKMAP
  469. help
  470. Say Y here if you want to use the keypad on your Samsung mobile
  471. device.
  472. To compile this driver as a module, choose M here: the
  473. module will be called samsung-keypad.
  474. config KEYBOARD_GOLDFISH_EVENTS
  475. depends on GOLDFISH || COMPILE_TEST
  476. tristate "Generic Input Event device for Goldfish"
  477. help
  478. Say Y here to get an input event device for the Goldfish virtual
  479. device emulator.
  480. To compile this driver as a module, choose M here: the
  481. module will be called goldfish-events.
  482. config KEYBOARD_STOWAWAY
  483. tristate "Stowaway keyboard"
  484. select SERIO
  485. help
  486. Say Y here if you have a Stowaway keyboard on a serial port.
  487. Stowaway compatible keyboards like Dicota Input-PDA keyboard
  488. are also supported by this driver.
  489. To compile this driver as a module, choose M here: the
  490. module will be called stowaway.
  491. config KEYBOARD_ST_KEYSCAN
  492. tristate "STMicroelectronics keyscan support"
  493. depends on ARCH_STI || COMPILE_TEST
  494. select INPUT_MATRIXKMAP
  495. help
  496. Say Y here if you want to use a keypad attached to the keyscan block
  497. on some STMicroelectronics SoC devices.
  498. To compile this driver as a module, choose M here: the
  499. module will be called st-keyscan.
  500. config KEYBOARD_SUNKBD
  501. tristate "Sun Type 4 and Type 5 keyboard"
  502. select SERIO
  503. help
  504. Say Y here if you want to use a Sun Type 4 or Type 5 keyboard,
  505. connected either to the Sun keyboard connector or to an serial
  506. (RS-232) port via a simple adapter.
  507. To compile this driver as a module, choose M here: the
  508. module will be called sunkbd.
  509. config KEYBOARD_SH_KEYSC
  510. tristate "SuperH KEYSC keypad support"
  511. depends on ARCH_SHMOBILE || COMPILE_TEST
  512. help
  513. Say Y here if you want to use a keypad attached to the KEYSC block
  514. on SuperH processors such as sh7722 and sh7343.
  515. To compile this driver as a module, choose M here: the
  516. module will be called sh_keysc.
  517. config KEYBOARD_STMPE
  518. tristate "STMPE keypad support"
  519. depends on MFD_STMPE
  520. depends on OF
  521. select INPUT_MATRIXKMAP
  522. help
  523. Say Y here if you want to use the keypad controller on STMPE I/O
  524. expanders.
  525. To compile this driver as a module, choose M here: the module will be
  526. called stmpe-keypad.
  527. config KEYBOARD_SUN4I_LRADC
  528. tristate "Allwinner sun4i low res adc attached tablet keys support"
  529. depends on ARCH_SUNXI
  530. help
  531. This selects support for the Allwinner low res adc attached tablet
  532. keys found on Allwinner sunxi SoCs.
  533. To compile this driver as a module, choose M here: the
  534. module will be called sun4i-lradc-keys.
  535. config KEYBOARD_DAVINCI
  536. tristate "TI DaVinci Key Scan"
  537. depends on ARCH_DAVINCI_DM365
  538. help
  539. Say Y to enable keypad module support for the TI DaVinci
  540. platforms (DM365).
  541. To compile this driver as a module, choose M here: the
  542. module will be called davinci_keyscan.
  543. config KEYBOARD_IPAQ_MICRO
  544. tristate "Buttons on Micro SoC (iPaq h3100,h3600,h3700)"
  545. depends on MFD_IPAQ_MICRO
  546. help
  547. Say Y to enable support for the buttons attached to
  548. Micro peripheral controller on iPAQ h3100/h3600/h3700
  549. To compile this driver as a module, choose M here: the
  550. module will be called ipaq-micro-keys.
  551. config KEYBOARD_IQS62X
  552. tristate "Azoteq IQS620A/621/622/624/625 keys and switches"
  553. depends on MFD_IQS62X
  554. help
  555. Say Y here to enable key and switch support for the Azoteq IQS620A,
  556. IQS621, IQS622, IQS624 and IQS625 multi-function sensors.
  557. To compile this driver as a module, choose M here: the module will
  558. be called iqs62x-keys.
  559. config KEYBOARD_OMAP
  560. tristate "TI OMAP keypad support"
  561. depends on ARCH_OMAP1
  562. select INPUT_MATRIXKMAP
  563. help
  564. Say Y here if you want to use the OMAP keypad.
  565. To compile this driver as a module, choose M here: the
  566. module will be called omap-keypad.
  567. config KEYBOARD_OMAP4
  568. tristate "TI OMAP4+ keypad support"
  569. depends on (OF && HAS_IOMEM) || ARCH_OMAP2PLUS
  570. select INPUT_MATRIXKMAP
  571. help
  572. Say Y here if you want to use the OMAP4+ keypad.
  573. To compile this driver as a module, choose M here: the
  574. module will be called omap4-keypad.
  575. config KEYBOARD_SPEAR
  576. tristate "ST SPEAR keyboard support"
  577. depends on PLAT_SPEAR
  578. select INPUT_MATRIXKMAP
  579. help
  580. Say Y here if you want to use the SPEAR keyboard.
  581. To compile this driver as a module, choose M here: the
  582. module will be called spear-keyboard.
  583. config KEYBOARD_TC3589X
  584. tristate "TC3589X Keypad support"
  585. depends on MFD_TC3589X
  586. select INPUT_MATRIXKMAP
  587. help
  588. Say Y here if you want to use the keypad controller on
  589. TC35892/3 I/O expander.
  590. To compile this driver as a module, choose M here: the
  591. module will be called tc3589x-keypad.
  592. config KEYBOARD_TM2_TOUCHKEY
  593. tristate "TM2 touchkey support"
  594. depends on I2C
  595. depends on LEDS_CLASS
  596. help
  597. Say Y here to enable device driver for tm2-touchkey with
  598. LED control for the Exynos5433 TM2 board.
  599. To compile this driver as a module, choose M here.
  600. module will be called tm2-touchkey.
  601. config KEYBOARD_TWL4030
  602. tristate "TI TWL4030/TWL5030/TPS659x0 keypad support"
  603. depends on TWL4030_CORE
  604. select INPUT_MATRIXKMAP
  605. help
  606. Say Y here if your board use the keypad controller on
  607. TWL4030 family chips. It's safe to say enable this
  608. even on boards that don't use the keypad controller.
  609. To compile this driver as a module, choose M here: the
  610. module will be called twl4030_keypad.
  611. config KEYBOARD_XTKBD
  612. tristate "XT keyboard"
  613. select SERIO
  614. help
  615. Say Y here if you want to use the old IBM PC/XT keyboard (or
  616. compatible) on your system. This is only possible with a
  617. parallel port keyboard adapter, you cannot connect it to the
  618. keyboard port on a PC that runs Linux.
  619. To compile this driver as a module, choose M here: the
  620. module will be called xtkbd.
  621. config KEYBOARD_CROS_EC
  622. tristate "ChromeOS EC keyboard"
  623. select INPUT_MATRIXKMAP
  624. select INPUT_VIVALDIFMAP
  625. depends on CROS_EC
  626. help
  627. Say Y here to enable the matrix keyboard used by ChromeOS devices
  628. and implemented on the ChromeOS EC. You must enable one bus option
  629. (CROS_EC_I2C or CROS_EC_SPI) to use this.
  630. To compile this driver as a module, choose M here: the
  631. module will be called cros_ec_keyb.
  632. config KEYBOARD_CAP11XX
  633. tristate "Microchip CAP11XX based touch sensors"
  634. depends on OF && I2C
  635. select REGMAP_I2C
  636. help
  637. Say Y here to enable the CAP11XX touch sensor driver.
  638. To compile this driver as a module, choose M here: the
  639. module will be called cap11xx.
  640. config KEYBOARD_BCM
  641. tristate "Broadcom keypad driver"
  642. depends on OF && HAVE_CLK && HAS_IOMEM
  643. select INPUT_MATRIXKMAP
  644. default ARCH_BCM_CYGNUS
  645. help
  646. Say Y here if you want to use Broadcom keypad.
  647. To compile this driver as a module, choose M here: the
  648. module will be called bcm-keypad.
  649. config KEYBOARD_MT6779
  650. tristate "MediaTek Keypad Support"
  651. depends on ARCH_MEDIATEK || COMPILE_TEST
  652. select REGMAP_MMIO
  653. select INPUT_MATRIXKMAP
  654. help
  655. Say Y here if you want to use the keypad on MediaTek SoCs.
  656. If unsure, say N.
  657. To compile this driver as a module, choose M here: the
  658. module will be called mt6779-keypad.
  659. config KEYBOARD_MTK_PMIC
  660. tristate "MediaTek PMIC keys support"
  661. depends on MFD_MT6397 || COMPILE_TEST
  662. help
  663. Say Y here if you want to use the pmic keys (powerkey/homekey).
  664. To compile this driver as a module, choose M here: the
  665. module will be called pmic-keys.
  666. config KEYBOARD_CYPRESS_SF
  667. tristate "Cypress StreetFighter touchkey support"
  668. depends on I2C
  669. help
  670. Say Y here if you want to enable support for Cypress StreetFighter
  671. touchkeys.
  672. To compile this driver as a module, choose M here: the
  673. module will be called cypress-sf.
  674. endif