7e13ee54b25526c691f0911f00b34f48eb5ba7e8
[platform/kernel/u-boot.git] / lib / efi_loader / Kconfig
1 config EFI_LOADER
2         bool "Support running UEFI applications"
3         depends on (ARM || X86 || RISCV || SANDBOX) && OF_LIBFDT
4         # 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
8         default y
9         select LIB_UUID
10         select HAVE_BLOCK_DEVICE
11         select REGEX
12         imply CFB_CONSOLE_ANSI
13         help
14           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.
18
19 if EFI_LOADER
20
21 config EFI_DEVICE_PATH_TO_TEXT
22         bool "Device path to text protocol"
23         default y
24         help
25           The device path to text protocol converts device nodes and paths to
26           human readable strings.
27
28 config EFI_LOADER_HII
29         bool "HII protocols"
30         default y
31         help
32           The Human Interface Infrastructure is a complicated framework that
33           allows UEFI applications to draw fancy menus and hook strings using
34           a translation framework.
35
36           U-Boot implements enough of its features to be able to run the UEFI
37           Shell, but not more than that.
38
39 config EFI_UNICODE_COLLATION_PROTOCOL2
40         bool "Unicode collation protocol"
41         default y
42         help
43           The Unicode collation protocol is used for lexical comparisons. It is
44           required to run the UEFI shell.
45
46 if EFI_UNICODE_COLLATION_PROTOCOL2
47
48 config EFI_UNICODE_CAPITALIZATION
49         bool "Support Unicode capitalization"
50         default y
51         help
52           Select this option to enable correct handling of the capitalization of
53           Unicode codepoints in the range 0x0000-0xffff. If this option is not
54           set, only the the correct handling of the letters of the codepage
55           used by the FAT file system is ensured.
56
57 endif
58
59 config EFI_LOADER_BOUNCE_BUFFER
60         bool "EFI Applications use bounce buffers for DMA operations"
61         depends on ARM64
62         default n
63         help
64           Some hardware does not support DMA to full 64bit addresses. For this
65           hardware we can create a bounce buffer so that payloads don't have to
66           worry about platform details.
67
68 config EFI_PLATFORM_LANG_CODES
69         string "Language codes supported by firmware"
70         default "en-US"
71         help
72           This value is used to initialize the PlatformLangCodes variable. Its
73           value is a semicolon (;) separated list of language codes in native
74           RFC 4646 format, e.g. "en-US;de-DE". The first language code is used
75           to initialize the PlatformLang variable.
76
77 endif