GNU Linux-libre 6.8.9-gnu
[releases.git] / drivers / firmware / qcom / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # For a description of the syntax of this configuration file,
4 # see Documentation/kbuild/kconfig-language.rst.
5 #
6
7 menu "Qualcomm firmware drivers"
8
9 config QCOM_SCM
10         tristate
11
12 config QCOM_SCM_DOWNLOAD_MODE_DEFAULT
13         bool "Qualcomm download mode enabled by default"
14         depends on QCOM_SCM
15         help
16           A device with "download mode" enabled will upon an unexpected
17           warm-restart enter a special debug mode that allows the user to
18           "download" memory content over USB for offline postmortem analysis.
19           The feature can be enabled/disabled on the kernel command line.
20
21           Say Y here to enable "download mode" by default.
22
23 config QCOM_QSEECOM
24         bool "Qualcomm QSEECOM interface driver"
25         depends on QCOM_SCM=y
26         select AUXILIARY_BUS
27         help
28           Various Qualcomm SoCs have a Secure Execution Environment (SEE) running
29           in the Trust Zone. This module provides an interface to that via the
30           QSEECOM mechanism, using SCM calls.
31
32           The QSEECOM interface allows, among other things, access to applications
33           running in the SEE. An example of such an application is 'uefisecapp',
34           which is required to access UEFI variables on certain systems. If
35           selected, the interface will also attempt to detect and register client
36           devices for supported applications.
37
38           Select Y here to enable the QSEECOM interface driver.
39
40 config QCOM_QSEECOM_UEFISECAPP
41         bool "Qualcomm SEE UEFI Secure App client driver"
42         depends on QCOM_QSEECOM
43         depends on EFI
44         help
45           Various Qualcomm SoCs do not allow direct access to EFI variables.
46           Instead, these need to be accessed via the UEFI Secure Application
47           (uefisecapp), residing in the Secure Execution Environment (SEE).
48
49           This module provides a client driver for uefisecapp, installing efivar
50           operations to allow the kernel accessing EFI variables, and via that also
51           provide user-space with access to EFI variables via efivarfs.
52
53           Select Y here to provide access to EFI variables on the aforementioned
54           platforms.
55
56 endmenu