Commit | Line | Data |
---|---|---|
04851772 MF |
1 | menu "EFI (Extensible Firmware Interface) Support" |
2 | depends on EFI | |
3 | ||
4 | config EFI_VARS | |
5 | tristate "EFI Variable Support via sysfs" | |
6 | depends on EFI | |
7 | default n | |
8 | help | |
9 | If you say Y here, you are able to get EFI (Extensible Firmware | |
10 | Interface) variable information via sysfs. You may read, | |
11 | write, create, and destroy EFI variables through this interface. | |
12 | ||
13 | Note that using this driver in concert with efibootmgr requires | |
14 | at least test release version 0.5.0-test3 or later, which is | |
0e4ca02b | 15 | available from: |
04851772 MF |
16 | <http://linux.dell.com/efibootmgr/testing/efibootmgr-0.5.0-test3.tar.gz> |
17 | ||
18 | Subsequent efibootmgr releases may be found at: | |
0e4ca02b | 19 | <http://github.com/vathpela/efibootmgr> |
04851772 | 20 | |
3846c158 PJ |
21 | config EFI_ESRT |
22 | bool | |
23 | depends on EFI && !IA64 | |
24 | default y | |
25 | ||
04851772 MF |
26 | config EFI_VARS_PSTORE |
27 | tristate "Register efivars backend for pstore" | |
28 | depends on EFI_VARS && PSTORE | |
29 | default y | |
30 | help | |
31 | Say Y here to enable use efivars as a backend to pstore. This | |
32 | will allow writing console messages, crash dumps, or anything | |
33 | else supported by pstore to EFI variables. | |
34 | ||
35 | config EFI_VARS_PSTORE_DEFAULT_DISABLE | |
36 | bool "Disable using efivars as a pstore backend by default" | |
37 | depends on EFI_VARS_PSTORE | |
38 | default n | |
39 | help | |
40 | Saying Y here will disable the use of efivars as a storage | |
41 | backend for pstore by default. This setting can be overridden | |
42 | using the efivars module's pstore_disable parameter. | |
43 | ||
926172d4 DY |
44 | config EFI_RUNTIME_MAP |
45 | bool "Export efi runtime maps to sysfs" | |
2965faa5 | 46 | depends on X86 && EFI && KEXEC_CORE |
926172d4 DY |
47 | default y |
48 | help | |
49 | Export efi runtime memory maps to /sys/firmware/efi/runtime-map. | |
50 | That memory map is used for example by kexec to set up efi virtual | |
51 | mapping the 2nd kernel, but can also be used for debugging purposes. | |
52 | ||
53 | See also Documentation/ABI/testing/sysfs-firmware-efi-runtime-map. | |
54 | ||
0f96a99d TI |
55 | config EFI_FAKE_MEMMAP |
56 | bool "Enable EFI fake memory map" | |
57 | depends on EFI && X86 | |
58 | default n | |
59 | help | |
60 | Saying Y here will enable "efi_fake_mem" boot option. | |
61 | By specifying this parameter, you can add arbitrary attribute | |
62 | to specific memory range by updating original (firmware provided) | |
63 | EFI memmap. | |
64 | This is useful for debugging of EFI memmap related feature. | |
65 | e.g. Address Range Mirroring feature. | |
66 | ||
67 | config EFI_MAX_FAKE_MEM | |
68 | int "maximum allowable number of ranges in efi_fake_mem boot option" | |
69 | depends on EFI_FAKE_MEMMAP | |
70 | range 1 128 | |
71 | default 8 | |
72 | help | |
73 | Maximum allowable number of ranges in efi_fake_mem boot option. | |
74 | Ranges can be set up to this value using comma-separated list. | |
75 | The default value is 8. | |
76 | ||
0302f71c MS |
77 | config EFI_PARAMS_FROM_FDT |
78 | bool | |
79 | help | |
80 | Select this config option from the architecture Kconfig if | |
81 | the EFI runtime support gets system table address, memory | |
82 | map address, and other parameters from the device tree. | |
83 | ||
022ee6c5 AB |
84 | config EFI_RUNTIME_WRAPPERS |
85 | bool | |
86 | ||
f4f75ad5 AB |
87 | config EFI_ARMSTUB |
88 | bool | |
89 | ||
3d7ee348 AB |
90 | config EFI_ARMSTUB_DTB_LOADER |
91 | bool "Enable the DTB loader" | |
92 | depends on EFI_ARMSTUB | |
d3109593 | 93 | default y |
3d7ee348 AB |
94 | help |
95 | Select this config option to add support for the dtb= command | |
96 | line parameter, allowing a device tree blob to be loaded into | |
97 | memory from the EFI System Partition by the stub. | |
98 | ||
d3109593 SB |
99 | If the device tree is provided by the platform or by |
100 | the bootloader this option may not be needed. | |
101 | But, for various development reasons and to maintain existing | |
102 | functionality for bootloaders that do not have such support | |
103 | this option is necessary. | |
3d7ee348 | 104 | |
06f7d4a1 CJ |
105 | config EFI_BOOTLOADER_CONTROL |
106 | tristate "EFI Bootloader Control" | |
107 | depends on EFI_VARS | |
108 | default n | |
109 | ---help--- | |
110 | This module installs a reboot hook, such that if reboot() is | |
111 | invoked with a string argument NNN, "NNN" is copied to the | |
112 | "LoaderEntryOneShot" EFI variable, to be read by the | |
113 | bootloader. If the string matches one of the boot labels | |
114 | defined in its configuration, the bootloader will boot once | |
115 | to that label. The "LoaderEntryRebootReason" EFI variable is | |
116 | set with the reboot reason: "reboot" or "shutdown". The | |
117 | bootloader reads this reboot reason and takes particular | |
118 | action according to its policy. | |
119 | ||
65117f1a KHL |
120 | config EFI_CAPSULE_LOADER |
121 | tristate "EFI capsule loader" | |
122 | depends on EFI | |
123 | help | |
124 | This option exposes a loader interface "/dev/efi_capsule_loader" for | |
125 | users to load EFI capsules. This driver requires working runtime | |
126 | capsule support in the firmware, which many OEMs do not provide. | |
127 | ||
128 | Most users should say N. | |
129 | ||
2959c95d | 130 | config EFI_CAPSULE_QUIRK_QUARK_CSH |
1ae83c5c | 131 | bool "Add support for Quark capsules with non-standard headers" |
2959c95d JK |
132 | depends on X86 && !64BIT |
133 | select EFI_CAPSULE_LOADER | |
134 | default y | |
135 | help | |
136 | Add support for processing Quark X1000 EFI capsules, whose header | |
137 | layout deviates from the layout mandated by the UEFI specification. | |
138 | ||
ff6301da IH |
139 | config EFI_TEST |
140 | tristate "EFI Runtime Service Tests Support" | |
141 | depends on EFI | |
142 | default n | |
143 | help | |
144 | This driver uses the efi.<service> function pointers directly instead | |
145 | of going through the efivar API, because it is not trying to test the | |
146 | kernel subsystem, just for testing the UEFI runtime service | |
147 | interfaces which are provided by the firmware. This driver is used | |
148 | by the Firmware Test Suite (FWTS) for testing the UEFI runtime | |
149 | interfaces readiness of the firmware. | |
150 | Details for FWTS are available from: | |
151 | <https://wiki.ubuntu.com/FirmwareTestSuite> | |
152 | ||
153 | Say Y here to enable the runtime services support via /dev/efi_test. | |
154 | If unsure, say N. | |
155 | ||
58c5475a LW |
156 | config APPLE_PROPERTIES |
157 | bool "Apple Device Properties" | |
158 | depends on EFI_STUB && X86 | |
159 | select EFI_DEV_PATH_PARSER | |
160 | select UCS2_STRING | |
161 | help | |
162 | Retrieve properties from EFI on Apple Macs and assign them to | |
163 | devices, allowing for improved support of Apple hardware. | |
164 | Properties that would otherwise be missing include the | |
165 | Thunderbolt Device ROM and GPU configuration data. | |
166 | ||
167 | If unsure, say Y if you have a Mac. Otherwise N. | |
168 | ||
ccc829ba MG |
169 | config RESET_ATTACK_MITIGATION |
170 | bool "Reset memory attack mitigation" | |
171 | depends on EFI_STUB | |
172 | help | |
173 | Request that the firmware clear the contents of RAM after a reboot | |
174 | using the TCG Platform Reset Attack Mitigation specification. This | |
175 | protects against an attacker forcibly rebooting the system while it | |
176 | still contains secrets in RAM, booting another OS and extracting the | |
a5c03c31 MG |
177 | secrets. This should only be enabled when userland is configured to |
178 | clear the MemoryOverwriteRequest flag on clean shutdown after secrets | |
179 | have been evicted, since otherwise it will trigger even on clean | |
180 | reboots. | |
ccc829ba | 181 | |
04851772 | 182 | endmenu |
fce7d3bf JB |
183 | |
184 | config UEFI_CPER | |
185 | bool | |
46cd4b75 | 186 | |
c6d8c8ef TB |
187 | config UEFI_CPER_ARM |
188 | bool | |
189 | depends on UEFI_CPER && ( ARM || ARM64 ) | |
190 | default y | |
191 | ||
f9e1bdb9 YG |
192 | config UEFI_CPER_X86 |
193 | bool | |
194 | depends on UEFI_CPER && X86 | |
195 | default y | |
196 | ||
46cd4b75 LW |
197 | config EFI_DEV_PATH_PARSER |
198 | bool | |
199 | depends on ACPI | |
200 | default n |