1 menu "EFI (Extensible Firmware Interface) Support"
5 tristate "EFI Variable Support via sysfs"
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.
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
16 <http://linux.dell.com/efibootmgr/testing/efibootmgr-0.5.0-test3.tar.gz>
18 Subsequent efibootmgr releases may be found at:
19 <http://github.com/vathpela/efibootmgr>
23 depends on EFI && !IA64
26 config EFI_VARS_PSTORE
27 tristate "Register efivars backend for pstore"
28 depends on EFI_VARS && PSTORE
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.
35 config EFI_VARS_PSTORE_DEFAULT_DISABLE
36 bool "Disable using efivars as a pstore backend by default"
37 depends on EFI_VARS_PSTORE
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.
44 config EFI_RUNTIME_MAP
45 bool "Export efi runtime maps to sysfs"
46 depends on X86 && EFI && KEXEC_CORE
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.
53 See also Documentation/ABI/testing/sysfs-firmware-efi-runtime-map.
55 config EFI_FAKE_MEMMAP
56 bool "Enable EFI fake memory map"
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)
64 This is useful for debugging of EFI memmap related feature.
65 e.g. Address Range Mirroring feature.
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
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.
77 config EFI_PARAMS_FROM_FDT
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.
84 config EFI_RUNTIME_WRAPPERS
90 config EFI_ARMSTUB_DTB_LOADER
91 bool "Enable the DTB loader"
92 depends on EFI_ARMSTUB
94 Select this config option to add support for the dtb= command
95 line parameter, allowing a device tree blob to be loaded into
96 memory from the EFI System Partition by the stub.
98 The device tree is typically provided by the platform or by
99 the bootloader, so this option is mostly for development
102 config EFI_BOOTLOADER_CONTROL
103 tristate "EFI Bootloader Control"
107 This module installs a reboot hook, such that if reboot() is
108 invoked with a string argument NNN, "NNN" is copied to the
109 "LoaderEntryOneShot" EFI variable, to be read by the
110 bootloader. If the string matches one of the boot labels
111 defined in its configuration, the bootloader will boot once
112 to that label. The "LoaderEntryRebootReason" EFI variable is
113 set with the reboot reason: "reboot" or "shutdown". The
114 bootloader reads this reboot reason and takes particular
115 action according to its policy.
117 config EFI_CAPSULE_LOADER
118 tristate "EFI capsule loader"
121 This option exposes a loader interface "/dev/efi_capsule_loader" for
122 users to load EFI capsules. This driver requires working runtime
123 capsule support in the firmware, which many OEMs do not provide.
125 Most users should say N.
127 config EFI_CAPSULE_QUIRK_QUARK_CSH
128 bool "Add support for Quark capsules with non-standard headers"
129 depends on X86 && !64BIT
130 select EFI_CAPSULE_LOADER
133 Add support for processing Quark X1000 EFI capsules, whose header
134 layout deviates from the layout mandated by the UEFI specification.
137 tristate "EFI Runtime Service Tests Support"
141 This driver uses the efi.<service> function pointers directly instead
142 of going through the efivar API, because it is not trying to test the
143 kernel subsystem, just for testing the UEFI runtime service
144 interfaces which are provided by the firmware. This driver is used
145 by the Firmware Test Suite (FWTS) for testing the UEFI runtime
146 interfaces readiness of the firmware.
147 Details for FWTS are available from:
148 <https://wiki.ubuntu.com/FirmwareTestSuite>
150 Say Y here to enable the runtime services support via /dev/efi_test.
153 config APPLE_PROPERTIES
154 bool "Apple Device Properties"
155 depends on EFI_STUB && X86
156 select EFI_DEV_PATH_PARSER
159 Retrieve properties from EFI on Apple Macs and assign them to
160 devices, allowing for improved support of Apple hardware.
161 Properties that would otherwise be missing include the
162 Thunderbolt Device ROM and GPU configuration data.
164 If unsure, say Y if you have a Mac. Otherwise N.
166 config RESET_ATTACK_MITIGATION
167 bool "Reset memory attack mitigation"
170 Request that the firmware clear the contents of RAM after a reboot
171 using the TCG Platform Reset Attack Mitigation specification. This
172 protects against an attacker forcibly rebooting the system while it
173 still contains secrets in RAM, booting another OS and extracting the
174 secrets. This should only be enabled when userland is configured to
175 clear the MemoryOverwriteRequest flag on clean shutdown after secrets
176 have been evicted, since otherwise it will trigger even on clean
186 depends on UEFI_CPER && ( ARM || ARM64 )
191 depends on UEFI_CPER && X86
194 config EFI_DEV_PATH_PARSER