]> asedeno.scripts.mit.edu Git - linux.git/blob - drivers/firmware/efi/Kconfig
Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[linux.git] / drivers / firmware / efi / Kconfig
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
15           available from:
16           <http://linux.dell.com/efibootmgr/testing/efibootmgr-0.5.0-test3.tar.gz>
17
18           Subsequent efibootmgr releases may be found at:
19           <http://github.com/vathpela/efibootmgr>
20
21 config EFI_ESRT
22         bool
23         depends on EFI && !IA64
24         default y
25
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
44 config EFI_RUNTIME_MAP
45         bool "Export efi runtime maps to sysfs"
46         depends on X86 && EFI && KEXEC_CORE
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
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
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
84 config EFI_RUNTIME_WRAPPERS
85         bool
86
87 config EFI_ARMSTUB
88         bool
89
90 config EFI_ARMSTUB_DTB_LOADER
91         bool "Enable the DTB loader"
92         depends on EFI_ARMSTUB
93         help
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.
97
98           The device tree is typically provided by the platform or by
99           the bootloader, so this option is mostly for development
100           purposes only.
101
102 config EFI_BOOTLOADER_CONTROL
103         tristate "EFI Bootloader Control"
104         depends on EFI_VARS
105         default n
106         ---help---
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.
116
117 config EFI_CAPSULE_LOADER
118         tristate "EFI capsule loader"
119         depends on EFI
120         help
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.
124
125           Most users should say N.
126
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
131         default y
132         help
133           Add support for processing Quark X1000 EFI capsules, whose header
134           layout deviates from the layout mandated by the UEFI specification.
135
136 config EFI_TEST
137         tristate "EFI Runtime Service Tests Support"
138         depends on EFI
139         default n
140         help
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>
149
150           Say Y here to enable the runtime services support via /dev/efi_test.
151           If unsure, say N.
152
153 config APPLE_PROPERTIES
154         bool "Apple Device Properties"
155         depends on EFI_STUB && X86
156         select EFI_DEV_PATH_PARSER
157         select UCS2_STRING
158         help
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.
163
164           If unsure, say Y if you have a Mac.  Otherwise N.
165
166 config RESET_ATTACK_MITIGATION
167         bool "Reset memory attack mitigation"
168         depends on EFI_STUB
169         help
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
177           reboots.
178
179 endmenu
180
181 config UEFI_CPER
182         bool
183
184 config UEFI_CPER_ARM
185         bool
186         depends on UEFI_CPER && ( ARM || ARM64 )
187         default y
188
189 config UEFI_CPER_X86
190         bool
191         depends on UEFI_CPER && X86
192         default y
193
194 config EFI_DEV_PATH_PARSER
195         bool
196         depends on ACPI
197         default n