Merge tag 'for-linus-4.9-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git...
[cascardo/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_BOOTLOADER_CONTROL
91         tristate "EFI Bootloader Control"
92         depends on EFI_VARS
93         default n
94         ---help---
95           This module installs a reboot hook, such that if reboot() is
96           invoked with a string argument NNN, "NNN" is copied to the
97           "LoaderEntryOneShot" EFI variable, to be read by the
98           bootloader. If the string matches one of the boot labels
99           defined in its configuration, the bootloader will boot once
100           to that label. The "LoaderEntryRebootReason" EFI variable is
101           set with the reboot reason: "reboot" or "shutdown". The
102           bootloader reads this reboot reason and takes particular
103           action according to its policy.
104
105 config EFI_CAPSULE_LOADER
106         tristate "EFI capsule loader"
107         depends on EFI
108         help
109           This option exposes a loader interface "/dev/efi_capsule_loader" for
110           users to load EFI capsules. This driver requires working runtime
111           capsule support in the firmware, which many OEMs do not provide.
112
113           Most users should say N.
114
115 config EFI_TEST
116         tristate "EFI Runtime Service Tests Support"
117         depends on EFI
118         default n
119         help
120           This driver uses the efi.<service> function pointers directly instead
121           of going through the efivar API, because it is not trying to test the
122           kernel subsystem, just for testing the UEFI runtime service
123           interfaces which are provided by the firmware. This driver is used
124           by the Firmware Test Suite (FWTS) for testing the UEFI runtime
125           interfaces readiness of the firmware.
126           Details for FWTS are available from:
127           <https://wiki.ubuntu.com/FirmwareTestSuite>
128
129           Say Y here to enable the runtime services support via /dev/efi_test.
130           If unsure, say N.
131
132 endmenu
133
134 config UEFI_CPER
135         bool