blob: 3feb04a5ede2f0835f94daf135364d63a7328dc0 [file] [log] [blame]
Alexander Graf67ee7052016-03-04 01:10:07 +01001config EFI_LOADER
Heinrich Schuchardt96b236a2019-05-11 10:27:58 +02002 bool "Support running UEFI applications"
Simon Glass82c5388f2018-09-15 00:50:53 -06003 depends on (ARM || X86 || RISCV || SANDBOX) && OF_LIBFDT
Alexander Graf5e247172018-01-24 14:54:21 +01004 # We need EFI_STUB_64BIT to be set on x86_64 with EFI_STUB
5 depends on !EFI_STUB || !X86_64 || EFI_STUB_64BIT
6 # We need EFI_STUB_32BIT to be set on x86_32 with EFI_STUB
7 depends on !EFI_STUB || !X86 || X86_64 || EFI_STUB_32BIT
Alexander Graf67ee7052016-03-04 01:10:07 +01008 default y
Adam Ford70c8f052018-02-06 12:14:28 -06009 select LIB_UUID
Adam Fordb10ba902018-02-06 12:43:56 -060010 select HAVE_BLOCK_DEVICE
Heinrich Schuchardt9e18bfa2019-01-22 21:35:23 +010011 select REGEX
Heinrich Schuchardt35550cc2018-04-29 23:37:12 +020012 imply CFB_CONSOLE_ANSI
Alexander Graf67ee7052016-03-04 01:10:07 +010013 help
Heinrich Schuchardt96b236a2019-05-11 10:27:58 +020014 Select this option if you want to run UEFI applications (like GNU
15 GRUB or iPXE) on top of U-Boot. If this option is enabled, U-Boot
16 will expose the UEFI API to a loaded application, enabling it to
17 reuse U-Boot's device drivers.
Alexander Graf7c00a3c2016-05-11 18:25:48 +020018
Heinrich Schuchardt0cbab582019-05-08 23:17:38 +020019if EFI_LOADER
20
21config EFI_LOADER_HII
22 bool "HII protocols"
23 default y
24 help
25 The Human Interface Infrastructure is a complicated framework that
26 allows UEFI applications to draw fancy menus and hook strings using
27 a translation framework.
28
29 U-Boot implements enough of its features to be able to run the UEFI
30 Shell, but not more than that.
31
Heinrich Schuchardt532fec72019-05-08 23:24:26 +020032config EFI_UNICODE_COLLATION_PROTOCOL
33 bool "Unicode collation protocol"
34 default y
35 help
36 The Unicode collation protocol is used for lexical comparisons. It is
37 required to run the UEFI shell.
38
39if EFI_UNICODE_COLLATION_PROTOCOL
40
Heinrich Schuchardt58ddcd32018-09-04 19:34:56 +020041config EFI_UNICODE_CAPITALIZATION
42 bool "Support Unicode capitalization"
Heinrich Schuchardt58ddcd32018-09-04 19:34:56 +020043 default y
44 help
45 Select this option to enable correct handling of the capitalization of
46 Unicode codepoints in the range 0x0000-0xffff. If this option is not
47 set, only the the correct handling of the letters of the codepage
48 used by the FAT file system is ensured.
49
Heinrich Schuchardt532fec72019-05-08 23:24:26 +020050endif
51
Alexander Graf7c00a3c2016-05-11 18:25:48 +020052config EFI_LOADER_BOUNCE_BUFFER
53 bool "EFI Applications use bounce buffers for DMA operations"
Heinrich Schuchardt0cbab582019-05-08 23:17:38 +020054 depends on ARM64
Alexander Graf7c00a3c2016-05-11 18:25:48 +020055 default n
56 help
57 Some hardware does not support DMA to full 64bit addresses. For this
58 hardware we can create a bounce buffer so that payloads don't have to
59 worry about platform details.
Alexander Graf44be5da2019-02-11 15:24:00 +010060
Heinrich Schuchardt0cbab582019-05-08 23:17:38 +020061config EFI_PLATFORM_LANG_CODES
62 string "Language codes supported by firmware"
63 default "en-US"
Alexander Graf44be5da2019-02-11 15:24:00 +010064 help
Heinrich Schuchardt0cbab582019-05-08 23:17:38 +020065 This value is used to initialize the PlatformLangCodes variable. Its
66 value is a semicolon (;) separated list of language codes in native
67 RFC 4646 format, e.g. "en-US;de-DE". The first language code is used
68 to initialize the PlatformLang variable.
Alexander Graf44be5da2019-02-11 15:24:00 +010069
Heinrich Schuchardt0cbab582019-05-08 23:17:38 +020070endif