Files
u-boot/drivers/input/Kconfig
Simon Glass f2c7cf87da x86: efi: Disable i8042 in the x86 app
We should not try to directly access the keyboard when running as an EFI
app. Disable CONFIG_I8042_KEYB option to prevent that.

Signed-off-by: Simon Glass <sjg@chromium.org>
2025-10-07 09:55:12 -06:00

146 lines
4.7 KiB
Plaintext

config INPUT
bool "Enable input subsystem"
depends on DM
default y
config SPL_INPUT
bool "Enable input subsystem for SPL"
depends on SPL_DM
config TPL_INPUT
bool "Enable input subsystem for TPL"
depends on TPL_DM
config DM_KEYBOARD
bool "Enable driver model keyboard support"
depends on DM
default y if EFI_APP
help
This adds a uclass for keyboards and implements keyboard support
using driver model. The API is implemented by keyboard.h and
includes methods to start/stop the device, check for available
input and update LEDs if the keyboard has them.
config SPL_DM_KEYBOARD
bool "Enable driver model keyboard support for SPL"
depends on SPL_DM
help
This adds a uclass for keyboards and implements keyboard support
using driver model. The API is implemented by keyboard.h and
includes methods to start/stop the device, check for available
input and update LEDs if the keyboard has them.
config TPL_DM_KEYBOARD
bool "Enable driver model keyboard support for TPL"
depends on TPL_DM
help
This adds a uclass for keyboards and implements keyboard support
using driver model. The API is implemented by keyboard.h and
includes methods to start/stop the device, check for available
input and update LEDs if the keyboard has them.
config APPLE_SPI_KEYB
bool "Enable Apple SPI keyboard support"
depends on DM_KEYBOARD && DM_SPI
help
This adds a driver for the keyboards found on various
laptops based on Apple SoCs. These keyboards use an
Apple-specific HID-over-SPI protocol.
config BUTTON_KEYBOARD
bool "Buttons as keyboard"
depends on DM_KEYBOARD
select BUTTON_GPIO
help
Enable support for mapping buttons to keycode events. Use linux,code button driver
dt node to define button-event mapping.
For example, an arrows and enter may be implemented to navigate boot menu.
config CROS_EC_KEYB
bool "Enable Chrome OS EC keyboard support"
depends on INPUT
help
Most ARM Chromebooks use an EC to provide access to the keyboard.
Messages are used to request key scans from the EC and these are
then decoded into keys by this driver.
config EFI_KEYB
bool "Keyboard on top of EFI"
depends on DM_KEYBOARD && EFI_APP
default y
help
Provides a keyboard driver for EFI. While this is often connected
to the serial driver, that can be confusing on a device which has
both serial and keyboard devices. Provide a separate keyboard
driver.
For now this is not used, pending further work on teasing this
apart within the EFI subsystem.
config SPL_CROS_EC_KEYB
bool "Enable Chrome OS EC keyboard support in SPL"
depends on SPL_INPUT
help
Most ARM Chromebooks use an EC to provide access to the keyboard.
Messages are used to request key scans from the EC and these are
then decoded into keys by this driver.
config TPL_CROS_EC_KEYB
bool "Enable Chrome OS EC keyboard support in TPL"
depends on TPL_INPUT
help
Most ARM Chromebooks use an EC to provide access to the keyboard.
Messages are used to request key scans from the EC and these are
then decoded into keys by this driver.
config I8042_KEYB
bool "Enable Intel i8042 keyboard support"
depends on DM_KEYBOARD
default X86 && !EFI_APP
help
This adds a driver for the i8042 keyboard controller, allowing the
keyboard to be used on devices which support this controller. The
driver handles English and German keyboards - set the environment
variable 'keymap' to "de" to select German. Keyboard repeat is
handled by the keyboard itself.
config TEGRA_KEYBOARD
bool "NVIDIA Tegra internal matrix keyboard controller support"
help
A matrix keyboard connected directly to the internal keyboard
controller on Tegra SoCs.
config TWL4030_INPUT
bool "Enable TWL4030 Input controller"
help
Enable TWL4030 Input controller
config MOUSE
bool "Support for mice and other pointing devices"
depends on INPUT
default y if SANDBOX || EFI_APP || MACH_QEMU
help
This allows U-Boot to access mouse input, typically needed for
graphics boot menus and the like. The driver can provide mouse
events based on user interaction and these can be used to control
U-Boot's operation.
config USB_MOUSE
bool "USB mouse support"
default y if MACH_QEMU
help
This enables using a USB mouse to control a feature in U-Boot,
typically a boot menu. The driver uses the USB boot interface of
the mouse and attempts to auto-configure itself for normal
operation.
config EFI_MOUSE
bool "EFI mouse support"
depends on EFI_APP
default y if EFI_APP
help
This enables mouse support when U-Boot is running as an EFI
application. It uses the EFI Simple Pointer Protocol to access
mouse input from the underlying EFI firmware. This is useful
when U-Boot is used as an EFI boot manager or application.