• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1config EFI_LOADER
2	bool "Support running UEFI applications"
3	depends on OF_LIBFDT && ( \
4		ARM && (SYS_CPU = arm1136 || \
5			SYS_CPU = arm1176 || \
6			SYS_CPU = armv7   || \
7			SYS_CPU = armv8)  || \
8		X86 || RISCV || SANDBOX)
9	# We need EFI_STUB_64BIT to be set on x86_64 with EFI_STUB
10	depends on !EFI_STUB || !X86_64 || EFI_STUB_64BIT
11	# We need EFI_STUB_32BIT to be set on x86_32 with EFI_STUB
12	depends on !EFI_STUB || !X86 || X86_64 || EFI_STUB_32BIT
13	default y if !ARM || SYS_CPU = armv7 || SYS_CPU = armv8
14	select LIB_UUID
15	select HAVE_BLOCK_DEVICE
16	select REGEX
17	imply CFB_CONSOLE_ANSI
18	help
19	  Select this option if you want to run UEFI applications (like GNU
20	  GRUB or iPXE) on top of U-Boot. If this option is enabled, U-Boot
21	  will expose the UEFI API to a loaded application, enabling it to
22	  reuse U-Boot's device drivers.
23
24if EFI_LOADER
25
26config EFI_GET_TIME
27	bool "GetTime() runtime service"
28	depends on DM_RTC
29	default y
30	help
31	  Provide the GetTime() runtime service at boottime. This service
32	  can be used by an EFI application to read the real time clock.
33
34config EFI_SET_TIME
35	bool "SetTime() runtime service"
36	depends on EFI_GET_TIME
37	default n
38	help
39	  Provide the SetTime() runtime service at boottime. This service
40	  can be used by an EFI application to adjust the real time clock.
41
42config EFI_DEVICE_PATH_TO_TEXT
43	bool "Device path to text protocol"
44	default y
45	help
46	  The device path to text protocol converts device nodes and paths to
47	  human readable strings.
48
49config EFI_LOADER_HII
50	bool "HII protocols"
51	default y
52	help
53	  The Human Interface Infrastructure is a complicated framework that
54	  allows UEFI applications to draw fancy menus and hook strings using
55	  a translation framework.
56
57	  U-Boot implements enough of its features to be able to run the UEFI
58	  Shell, but not more than that.
59
60config EFI_UNICODE_COLLATION_PROTOCOL2
61	bool "Unicode collation protocol"
62	default y
63	help
64	  The Unicode collation protocol is used for lexical comparisons. It is
65	  required to run the UEFI shell.
66
67if EFI_UNICODE_COLLATION_PROTOCOL2
68
69config EFI_UNICODE_CAPITALIZATION
70	bool "Support Unicode capitalization"
71	default y
72	help
73	  Select this option to enable correct handling of the capitalization of
74	  Unicode codepoints in the range 0x0000-0xffff. If this option is not
75	  set, only the the correct handling of the letters of the codepage
76	  used by the FAT file system is ensured.
77
78config EFI_UNICODE_COLLATION_PROTOCOL
79	bool "Deprecated version of the Unicode collation protocol"
80	default n
81	help
82	  In EFI 1.10 a version of the Unicode collation protocol using ISO
83	  639-2 language codes existed. This protocol is not part of the UEFI
84	  specification any longer. Unfortunately it is required to run the
85	  UEFI Self Certification Test (SCT) II, version 2.6, 2017.
86
87	  Choose this option for testing only. It is bound to be removed.
88
89endif
90
91config EFI_LOADER_BOUNCE_BUFFER
92	bool "EFI Applications use bounce buffers for DMA operations"
93	depends on ARM64
94	default n
95	help
96	  Some hardware does not support DMA to full 64bit addresses. For this
97	  hardware we can create a bounce buffer so that payloads don't have to
98	  worry about platform details.
99
100config EFI_PLATFORM_LANG_CODES
101	string "Language codes supported by firmware"
102	default "en-US"
103	help
104	  This value is used to initialize the PlatformLangCodes variable. Its
105	  value is a semicolon (;) separated list of language codes in native
106	  RFC 4646 format, e.g. "en-US;de-DE". The first language code is used
107	  to initialize the PlatformLang variable.
108
109config EFI_HAVE_RUNTIME_RESET
110	# bool "Reset runtime service is available"
111	bool
112	default y
113	depends on ARCH_BCM283X || FSL_LAYERSCAPE || PSCI_RESET || SYSRESET_X86
114
115config EFI_GRUB_ARM32_WORKAROUND
116	bool "Workaround for GRUB on 32bit ARM"
117	default y
118	depends on ARM && !ARM64
119	help
120	  GRUB prior to version 2.04 requires U-Boot to disable caches. This
121	  workaround currently is also needed on systems with caches that
122	  cannot be managed via CP15.
123endif
124