
From: Simon Glass <sjg@chromium.org> This series expand the EFI app to include more of the required functionality for booting: - access to device-path functions - disable networking (to be dealt with later) - rename BOOTMETH_EFI_LOADER since this should be usable by the app - move towards getting EFI booting going in the app - various script improvemens to support continued development Simon Glass (26): scripts: Adjust EFI script to support an OS scripts: build-qemu: Move memory size to the helper scripts: build-qemu: Move qemu program-name to the helper scripts: build-qemu: Move virtiofsd code into the helper scripts: build-qemu: Support Tianocore on ARM scripts: build-qemu: Correct networking scripts: build-qemu: Enable the display on ARM scripts: build-qemu: Always call the run() function scripts: build-efi: Enable the display on ARM scripts: Correct virtio-sci typo ide: Allow IDE_BUS() to be used without CONFIG_IDE efi_client: Provide generic malloc() and free() functions efi: Disable networking for the ARM EFI app efi: arm: Allow --gc-sections in the EFI app efi: Use variables in dp_size() efi: Move most of efi_device_path into lib/efi efi: Move EFI_FDT_USE_INTERNAL to a common header efi: Move efi_bootflow_run() to a common file efi_loader: Split out efi_binary_run_dp() et all efi_client: Allow access to the parent image efi_client: Support running an app efi: Rename BOOTMETH_EFILOADER to BOOTMETH_EFI efi: Move EFI_BINARY_EXEC to lib/efi boot: Update BOOTM_EFI to depend on EFI_LOADER fs: Avoid calling efi_set_bootdev() from the app boot: Pass the maximum size to efiload_read_file() arch/arm/config.mk | 2 - arch/arm/lib/elf_aarch64_efi.lds | 2 +- boot/Kconfig | 6 +- boot/Makefile | 2 +- boot/bootmeth_efi.c | 7 +- configs/efi-arm_app64_defconfig | 4 +- configs/khadas-vim3_android_ab_defconfig | 2 +- configs/khadas-vim3_android_defconfig | 2 +- configs/khadas-vim3l_android_ab_defconfig | 2 +- configs/khadas-vim3l_android_defconfig | 2 +- fs/fs_legacy.c | 8 +- include/blk.h | 1 + include/efi.h | 59 ++ include/efi_loader.h | 3 - include/ide.h | 4 +- lib/efi/Kconfig | 10 + lib/efi/Makefile | 2 + lib/efi/device_path.c | 1165 +++++++++++++++++++++ lib/efi/run.c | 136 +++ lib/efi_client/Makefile | 2 +- lib/efi_client/app_run.c | 90 ++ lib/efi_client/efi.c | 20 + lib/efi_loader/Kconfig | 9 - lib/efi_loader/Makefile | 2 + lib/efi_loader/efi_bootbin.c | 201 ---- lib/efi_loader/efi_device_path.c | 1132 -------------------- lib/efi_loader/efi_image_loader.c | 9 - lib/efi_loader/efi_root_node.c | 2 - lib/efi_loader/loader_run.c | 67 ++ scripts/build-efi | 3 + scripts/build-qemu | 129 +-- scripts/build_helper.py | 102 +- 32 files changed, 1703 insertions(+), 1484 deletions(-) create mode 100644 lib/efi/device_path.c create mode 100644 lib/efi/run.c create mode 100644 lib/efi_client/app_run.c create mode 100644 lib/efi_loader/loader_run.c -- 2.43.0 base-commit: 091ac902b19008601ed47587f534ede7e531d6ed branch: loadi