1 # SPDX-License-Identifier: GPL-2.0-only
3 # For a description of the syntax of this configuration file,
4 # see Documentation/kbuild/kconfig-language.rst.
7 menu "Qualcomm firmware drivers"
15 select GENERIC_ALLOCATOR
18 prompt "TrustZone interface memory allocator mode"
20 default QCOM_TZMEM_MODE_GENERIC
22 Selects the mode of the memory allocator providing memory buffers of
23 suitable format for sharing with the TrustZone. If in doubt, select
26 config QCOM_TZMEM_MODE_GENERIC
29 Use the generic allocator mode. The memory is page-aligned, non-cachable
30 and physically contiguous.
32 config QCOM_TZMEM_MODE_SHMBRIDGE
35 Use Qualcomm Shared Memory Bridge. The memory has the same alignment as
36 in the 'Generic' allocator but is also explicitly marked as an SHM Bridge
39 With this selected, all buffers passed to the TrustZone must be allocated
40 using the TZMem allocator or else the TrustZone will refuse to use them.
44 config QCOM_SCM_DOWNLOAD_MODE_DEFAULT
45 bool "Qualcomm download mode enabled by default"
48 A device with "download mode" enabled will upon an unexpected
49 warm-restart enter a special debug mode that allows the user to
50 "download" memory content over USB for offline postmortem analysis.
51 The feature can be enabled/disabled on the kernel command line.
53 Say Y here to enable "download mode" by default.
56 bool "Qualcomm QSEECOM interface driver"
60 Various Qualcomm SoCs have a Secure Execution Environment (SEE) running
61 in the Trust Zone. This module provides an interface to that via the
62 QSEECOM mechanism, using SCM calls.
64 The QSEECOM interface allows, among other things, access to applications
65 running in the SEE. An example of such an application is 'uefisecapp',
66 which is required to access UEFI variables on certain systems. If
67 selected, the interface will also attempt to detect and register client
68 devices for supported applications.
70 Select Y here to enable the QSEECOM interface driver.
72 config QCOM_QSEECOM_UEFISECAPP
73 bool "Qualcomm SEE UEFI Secure App client driver"
74 depends on QCOM_QSEECOM
77 Various Qualcomm SoCs do not allow direct access to EFI variables.
78 Instead, these need to be accessed via the UEFI Secure Application
79 (uefisecapp), residing in the Secure Execution Environment (SEE).
81 This module provides a client driver for uefisecapp, installing efivar
82 operations to allow the kernel accessing EFI variables, and via that also
83 provide user-space with access to EFI variables via efivarfs.
85 Select Y here to provide access to EFI variables on the aforementioned