This patch adds the support in u-boot for new RISCV_EFI_BOOT_PROTOCOL for RISC-V UEFI platforms. This protocol is required to communicate the boot hart ID to the bootloader/kernel which need to follow the EFI calling conventions.
The latest draft spec of this new protocol is available at https://github.com/riscv-non-isa/riscv-uefi/releases/download/1.0-rc2/RISCV_UEFI_PROTOCOL-spec.pdf This u-boot patch can be found in: riscv_boot_protocol_rfc_v1 branch at https://github.com/vlsunil/u-boot.git This patch is tested in qemu. To fully test the feature, we need Linux changes which consume this protocol. The linux patch can be found in: riscv_boot_protocol_rfc_v1 branch at https://github.com/vlsunil/linux.git Sunil V L (1): efi_loader: Enable RISCV_EFI_BOOT_PROTOCOL support include/efi_api.h | 4 +++ include/efi_loader.h | 2 ++ include/efi_riscv.h | 16 +++++++++ lib/efi_loader/Kconfig | 7 ++++ lib/efi_loader/Makefile | 1 + lib/efi_loader/efi_riscv.c | 69 ++++++++++++++++++++++++++++++++++++++ lib/efi_loader/efi_setup.c | 6 ++++ 7 files changed, 105 insertions(+) create mode 100644 include/efi_riscv.h create mode 100644 lib/efi_loader/efi_riscv.c -- 2.25.1