xref: /openbmc/linux/drivers/firmware/efi/Kconfig (revision f3539c12)
1menu "EFI (Extensible Firmware Interface) Support"
2	depends on EFI
3
4config 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
21config EFI_ESRT
22	bool
23	depends on EFI && !IA64
24	default y
25
26config 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
35config 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
44config 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
55config 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
67config 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
77config 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
84config EFI_RUNTIME_WRAPPERS
85	bool
86
87config EFI_ARMSTUB
88	bool
89
90config 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
105config 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
115endmenu
116
117config UEFI_CPER
118	bool
119