78 lines
2.4 KiB
Plaintext
78 lines
2.4 KiB
Plaintext
|
# SPDX-License-Identifier: GPL-2.0-only
|
||
|
#
|
||
|
# For a description of the syntax of this configuration file,
|
||
|
# see Documentation/kbuild/kconfig-language.rst.
|
||
|
#
|
||
|
|
||
|
menu "Qualcomm firmware drivers"
|
||
|
|
||
|
config QCOM_SCM
|
||
|
select QCOM_TZMEM
|
||
|
tristate
|
||
|
|
||
|
config QCOM_TZMEM
|
||
|
tristate
|
||
|
select GENERIC_ALLOCATOR
|
||
|
|
||
|
choice
|
||
|
prompt "TrustZone interface memory allocator mode"
|
||
|
depends on QCOM_TZMEM
|
||
|
default QCOM_TZMEM_MODE_GENERIC
|
||
|
help
|
||
|
Selects the mode of the memory allocator providing memory buffers of
|
||
|
suitable format for sharing with the TrustZone. If in doubt, select
|
||
|
'Generic'.
|
||
|
|
||
|
config QCOM_TZMEM_MODE_GENERIC
|
||
|
bool "Generic"
|
||
|
help
|
||
|
Use the generic allocator mode. The memory is page-aligned, non-cachable
|
||
|
and physically contiguous.
|
||
|
|
||
|
config QCOM_TZMEM_MODE_SHMBRIDGE
|
||
|
bool "SHM Bridge"
|
||
|
help
|
||
|
Use Qualcomm Shared Memory Bridge. The memory has the same alignment as
|
||
|
in the 'Generic' allocator but is also explicitly marked as an SHM Bridge
|
||
|
buffer.
|
||
|
|
||
|
With this selected, all buffers passed to the TrustZone must be allocated
|
||
|
using the TZMem allocator or else the TrustZone will refuse to use them.
|
||
|
|
||
|
endchoice
|
||
|
|
||
|
config QCOM_QSEECOM
|
||
|
bool "Qualcomm QSEECOM interface driver"
|
||
|
depends on QCOM_SCM=y
|
||
|
select AUXILIARY_BUS
|
||
|
help
|
||
|
Various Qualcomm SoCs have a Secure Execution Environment (SEE) running
|
||
|
in the Trust Zone. This module provides an interface to that via the
|
||
|
QSEECOM mechanism, using SCM calls.
|
||
|
|
||
|
The QSEECOM interface allows, among other things, access to applications
|
||
|
running in the SEE. An example of such an application is 'uefisecapp',
|
||
|
which is required to access UEFI variables on certain systems. If
|
||
|
selected, the interface will also attempt to detect and register client
|
||
|
devices for supported applications.
|
||
|
|
||
|
Select Y here to enable the QSEECOM interface driver.
|
||
|
|
||
|
config QCOM_QSEECOM_UEFISECAPP
|
||
|
bool "Qualcomm SEE UEFI Secure App client driver"
|
||
|
depends on QCOM_QSEECOM
|
||
|
depends on EFI
|
||
|
help
|
||
|
Various Qualcomm SoCs do not allow direct access to EFI variables.
|
||
|
Instead, these need to be accessed via the UEFI Secure Application
|
||
|
(uefisecapp), residing in the Secure Execution Environment (SEE).
|
||
|
|
||
|
This module provides a client driver for uefisecapp, installing efivar
|
||
|
operations to allow the kernel accessing EFI variables, and via that also
|
||
|
provide user-space with access to EFI variables via efivarfs.
|
||
|
|
||
|
Select Y here to provide access to EFI variables on the aforementioned
|
||
|
platforms.
|
||
|
|
||
|
endmenu
|