Kconfig 2.32 KB
# SPDX-License-Identifier: GPL-2.0-only
#
# Trusty driver
#

menu "Trusty driver"

config TRUSTY
	tristate "Trusty core driver"
	depends on ARM || ARM64
	help
	  Trusty is a secure OS that provides a Trusted Execution Environment
	  (TEE) for Android.  Trusty runs on the same processor as Linux but is
	  isolated from the rest of the system by both hardware and software.

	  This option enables the core part of the Linux kernel driver for
	  Trusty.  This doesn't do much by itself; you'll need to enable some of
	  the sub-modules too.

	  If you build this as a module, it will be called trusty-core.

if TRUSTY

config TRUSTY_IRQ
	tristate "Trusty IRQ support"
	default y
	help
	  Enable forwarding of IRQs from Linux to Trusty.  This module retrieves
	  from Trusty a list of IRQs that Trusty uses, and it registers handlers
	  for them which notify Trusty that the IRQ has been received.

	  If you build this as a module, it will be called trusty-irq.

	  Usually this is needed for Trusty to work, so say 'y' or 'm'.

config TRUSTY_LOG
	tristate "Trusty log support"
	default y
	help
	  Print log messages generated by the secure OS to the Linux kernel log.

	  While this module is loaded, messages are retrieved and printed after
	  each call into Trusty, and also during Linux kernel panics.

	  If you build this as a module, it will be called trusty-log.

config TRUSTY_TEST
	tristate "Trusty stdcall test"
	default y
	help
	  Allow running tests of the Trusty stdcall interface.  Running these
	  tests is initiated by userspace writing to a sysfs file.

	  This depends on having a test sevice running on the Trusty side.

	  If you build this as a module, it will be called trusty-test.

config TRUSTY_VIRTIO
	tristate "Trusty virtio support"
	select VIRTIO
	default y
	help
	  Enable the Trusty virtio driver, which is responsible for management
	  and interaction with virtio devices exposed by Trusty.  This driver
	  requests the virtio device descriptors from Trusty, then parses them
	  and adds the corresponding virtio devices.

	  If you build this as a module, it will be called trusty-virtio.

config TRUSTY_VIRTIO_IPC
	tristate "Trusty Virtio IPC driver"
	depends on TRUSTY_VIRTIO
	default y
	help
	  Enable support for communicating with Trusty services.

	  If you build this as a module, it will be called trusty-ipc.

endif # TRUSTY

endmenu