Loading...
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.