Simon Glass | 985ca39 | 2018-10-01 12:22:10 -0600 | [diff] [blame] | 1 | config INPUT |
| 2 | bool "Enable input subsystem" |
| 3 | depends on DM |
| 4 | default y |
| 5 | |
| 6 | config SPL_INPUT |
| 7 | bool "Enable input subsystem for SPL" |
| 8 | depends on SPL_DM |
| 9 | |
| 10 | config TPL_INPUT |
| 11 | bool "Enable input subsystem for TPL" |
| 12 | depends on TPL_DM |
| 13 | |
Simon Glass | e84421d | 2015-10-18 21:17:10 -0600 | [diff] [blame] | 14 | config DM_KEYBOARD |
| 15 | bool "Enable driver model keyboard support" |
| 16 | depends on DM |
| 17 | help |
| 18 | This adds a uclass for keyboards and implements keyboard support |
| 19 | using driver model. The API is implemented by keyboard.h and |
| 20 | includes methods to start/stop the device, check for available |
| 21 | input and update LEDs if the keyboard has them. |
| 22 | |
Simon Glass | 985ca39 | 2018-10-01 12:22:10 -0600 | [diff] [blame] | 23 | config SPL_DM_KEYBOARD |
Marcin Juszkiewicz | 3e2aea7 | 2020-05-26 19:07:14 +0200 | [diff] [blame] | 24 | bool "Enable driver model keyboard support for SPL" |
Simon Glass | 985ca39 | 2018-10-01 12:22:10 -0600 | [diff] [blame] | 25 | depends on SPL_DM |
| 26 | help |
| 27 | This adds a uclass for keyboards and implements keyboard support |
| 28 | using driver model. The API is implemented by keyboard.h and |
| 29 | includes methods to start/stop the device, check for available |
| 30 | input and update LEDs if the keyboard has them. |
| 31 | |
| 32 | config TPL_DM_KEYBOARD |
Marcin Juszkiewicz | 3e2aea7 | 2020-05-26 19:07:14 +0200 | [diff] [blame] | 33 | bool "Enable driver model keyboard support for TPL" |
Simon Glass | 985ca39 | 2018-10-01 12:22:10 -0600 | [diff] [blame] | 34 | depends on TPL_DM |
| 35 | help |
| 36 | This adds a uclass for keyboards and implements keyboard support |
| 37 | using driver model. The API is implemented by keyboard.h and |
| 38 | includes methods to start/stop the device, check for available |
| 39 | input and update LEDs if the keyboard has them. |
| 40 | |
Mark Kettenis | d42f107 | 2022-01-23 16:48:13 +0100 | [diff] [blame] | 41 | config APPLE_SPI_KEYB |
| 42 | bool "Enable Apple SPI keyboard support" |
| 43 | depends on DM_KEYBOARD && DM_SPI |
| 44 | help |
| 45 | This adds a driver for the keyboards found on various |
| 46 | laptops based on Apple SoCs. These keyboards use an |
| 47 | Apple-specific HID-over-SPI protocol. |
| 48 | |
Dzmitry Sankouski | e877996 | 2023-01-22 18:21:25 +0300 | [diff] [blame] | 49 | config BUTTON_KEYBOARD |
| 50 | bool "Buttons as keyboard" |
Dzmitry Sankouski | e877996 | 2023-01-22 18:21:25 +0300 | [diff] [blame] | 51 | depends on DM_KEYBOARD |
Svyatoslav Ryhel | 25df915 | 2023-03-20 21:06:30 +0200 | [diff] [blame] | 52 | select BUTTON_GPIO |
Dzmitry Sankouski | e877996 | 2023-01-22 18:21:25 +0300 | [diff] [blame] | 53 | help |
| 54 | Enable support for mapping buttons to keycode events. Use linux,code button driver |
| 55 | dt node to define button-event mapping. |
| 56 | For example, an arrows and enter may be implemented to navigate boot menu. |
| 57 | |
Simon Glass | 6fb9ac1 | 2015-02-13 12:20:47 -0700 | [diff] [blame] | 58 | config CROS_EC_KEYB |
| 59 | bool "Enable Chrome OS EC keyboard support" |
Simon Glass | 985ca39 | 2018-10-01 12:22:10 -0600 | [diff] [blame] | 60 | depends on INPUT |
| 61 | help |
| 62 | Most ARM Chromebooks use an EC to provide access to the keyboard. |
| 63 | Messages are used to request key scans from the EC and these are |
| 64 | then decoded into keys by this driver. |
| 65 | |
| 66 | config SPL_CROS_EC_KEYB |
| 67 | bool "Enable Chrome OS EC keyboard support in SPL" |
| 68 | depends on SPL_INPUT |
| 69 | help |
| 70 | Most ARM Chromebooks use an EC to provide access to the keyboard. |
| 71 | Messages are used to request key scans from the EC and these are |
| 72 | then decoded into keys by this driver. |
| 73 | |
| 74 | config TPL_CROS_EC_KEYB |
| 75 | bool "Enable Chrome OS EC keyboard support in TPL" |
| 76 | depends on TPL_INPUT |
Simon Glass | 6fb9ac1 | 2015-02-13 12:20:47 -0700 | [diff] [blame] | 77 | help |
| 78 | Most ARM Chromebooks use an EC to provide access to the keyboard. |
| 79 | Messages are used to request key scans from the EC and these are |
| 80 | then decoded into keys by this driver. |
Simon Glass | b0abfef | 2015-11-11 10:05:42 -0700 | [diff] [blame] | 81 | |
| 82 | config I8042_KEYB |
| 83 | bool "Enable Intel i8042 keyboard support" |
| 84 | depends on DM_KEYBOARD |
Masahiro Yamada | b98278b | 2016-09-08 18:47:36 +0900 | [diff] [blame] | 85 | default X86 |
Simon Glass | b0abfef | 2015-11-11 10:05:42 -0700 | [diff] [blame] | 86 | help |
| 87 | This adds a driver for the i8042 keyboard controller, allowing the |
| 88 | keyboard to be used on devices which support this controller. The |
| 89 | driver handles English and German keyboards - set the environment |
| 90 | variable 'keymap' to "de" to select German. Keyboard repeat is |
| 91 | handled by the keyboard itself. |
Adam Ford | cc3fedb | 2018-08-06 14:26:50 -0500 | [diff] [blame] | 92 | |
Peter Robinson | 06b070e | 2019-02-20 12:17:28 +0000 | [diff] [blame] | 93 | config TEGRA_KEYBOARD |
| 94 | bool "NVIDIA Tegra internal matrix keyboard controller support" |
| 95 | help |
| 96 | A matrix keyboard connected directly to the internal keyboard |
| 97 | controller on Tegra SoCs. |
| 98 | |
Adam Ford | cc3fedb | 2018-08-06 14:26:50 -0500 | [diff] [blame] | 99 | config TWL4030_INPUT |
| 100 | bool "Enable TWL4030 Input controller" |
| 101 | help |
| 102 | Enable TWL4030 Input controller |