[U-Boot] [PATCH v3 0/5] subject: efi_loader: add HII database protocol
AKASHI Takahiro
takahiro.akashi at linaro.org
Mon Jan 21 03:12:56 UTC 2019
HII database protocol is the last missing (major?) piece of code so that
we can run unmodified EDKII's shell and UEFI SCT on EFI-enabled u-boot.
The original code was initially written by Leif and Rob a year ago[1],
and now I'm reworking it. The implementation has not been much
enhanced from the original, but I tried to give it clearer implementation
to be able to add more functionality easily later on.
I also addressed the comments by Alex[2] and added a self test on
request of Heinrich.
HII configuration routing protocol and access protocol have only
a skeleton and should be implemented when we need to have *drivers*
that require configuration mechanism.
# Please note that a bunch of warnings are generated by checkpatch.pl,
# but there are also good reasons for not fixing them.
Changes in v3 (Jan 21, 2019)
* drope v2's patch#1("lib: add u16_strcpy/strdup functions") as it has
been merged
* define a "key" value as u32 in efi_key_descriptor
* simplify "if" condition in export_package_lists()
* access "packed" structures of HII packages through get_unaligned_xx()
* implement GetSecondaryLanguages()
* compare a language in case-insensitive way in GetString() & GetLanguages()
* cosmetic changes (including variable/struct member names)
Changes in v2 (Nov 16, 2018)
* add some descriptions to newly added functions
* rename EFI_HII_PACKAGE_[TYPE|LEN]_* to __EFI_HII_PACKAGE_[TYPE|LEN]_*
as they are of internal use only
* cast a return value (of efi_status_t) to "unsigned int" for printing
[1] https://lists.denx.de/pipermail/u-boot/2017-October/308999.html
[2] https://lists.denx.de/pipermail/u-boot/2017-October/309116.html
AKASHI Takahiro (4):
efi: hii: add guid package support
efi: hii: add keyboard layout package support
efi: hii: add HII config routing/access protocols
efi_selftest: add HII database protocols test
Leif Lindholm (1):
efi_loader: Initial HII database protocols
include/efi_api.h | 421 ++++++++-
include/efi_loader.h | 8 +
lib/efi_loader/Makefile | 1 +
lib/efi_loader/efi_boottime.c | 18 +
lib/efi_loader/efi_hii.c | 1095 ++++++++++++++++++++++
lib/efi_loader/efi_hii_config.c | 146 +++
lib/efi_selftest/Makefile | 1 +
lib/efi_selftest/efi_selftest_hii.c | 1046 +++++++++++++++++++++
lib/efi_selftest/efi_selftest_hii_data.c | 453 +++++++++
9 files changed, 3188 insertions(+), 1 deletion(-)
create mode 100644 lib/efi_loader/efi_hii.c
create mode 100644 lib/efi_loader/efi_hii_config.c
create mode 100644 lib/efi_selftest/efi_selftest_hii.c
create mode 100644 lib/efi_selftest/efi_selftest_hii_data.c
--
2.19.1
More information about the U-Boot
mailing list