
The following 2 commits add the ESRT and provide some intial testing.
The first commit adds the ESRT as defined in the UEFI 2.8 specification. The ESRT is created during the execution of the efi_init_obj_list(). The ESRT will, during initialization, look for FMP instances already present in the system and populate the corresponding FW image entries.
When a new FMP is added, via efi_add_protocol(), the method esrt_add_from_fmp() is called to populate the corresponding ESRT entries.
The second commit creates a fake FMP instance with the intent of testing the code populating the ESRT entries.
CC: Heinrich Schuchardt xypron.glpki@gmx.de CC: Sughosh Ganu sughosh.ganu@linaro.org CC: AKASHI Takahiro takahiro.akashi@linaro.org CC: Andre Przywara andre.przywara@arm.com CC: Alexander Graf agraf@csgraf.de CC: nd@arm.com
Jose Marinho (2): efi: Add ESRT to the EFI system table efi: Add fake FMP instance to test ESRT creation
include/efi_api.h | 21 +++ include/efi_loader.h | 22 +++ lib/efi_loader/Makefile | 2 + lib/efi_loader/efi_boottime.c | 12 ++ lib/efi_loader/efi_esrt.c | 294 ++++++++++++++++++++++++++++++++++ lib/efi_loader/efi_fake_fmp.c | 172 ++++++++++++++++++++ lib/efi_loader/efi_setup.c | 4 + 7 files changed, 527 insertions(+) create mode 100644 lib/efi_loader/efi_esrt.c create mode 100644 lib/efi_loader/efi_fake_fmp.c