History log of /haiku/src/system/boot/platform/efi/arch/riscv64/crt0-efi-riscv64.S
Revision Date Author Comments
# bc33f9dd 02-Mar-2021 Daniel Schaefer <git@danielschaefer.me>

efi/riscv64: Fix NumberOfRvaAndSizes of PE header

The riscv64 UEFI executable has inconsistent header and therefore cannot
be loaded by the EDK2 implementation of UEFI. Apparently Uboot doesn't
care about this detail but EDK2 validates it.

Specifically NumberOfRvaAndSizes should be the number of data directory
entries. It is set to 6 but there are actually 16.
(All entries below NumberOfRvaAndSizes until section_table)

This was probably a typo 0x6 -> 16 (or 0x10).

This is the check of EDK2:
https://github.com/tianocore/edk2/blob/stable/202011/MdePkg/Library/BasePeCoffLib/BasePeCoff.c#L313-L321

Fixes #16824

Change-Id: I5c0dc080cb1cd191b44e016298656db9edd9ca8d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3761
Reviewed-by: X512 <danger_mail@list.ru>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>


# 4d0b11bd 13-Jan-2021 Alexander von Gluck IV <kallisti5@unixzen.com>

efi/riscv64: Fix missing PE32+ sections, fix characteristics

Change-Id: I13726e7b0ca7500edbb6f182d2c2e7caaddfb72e


# b24dbf95 27-Aug-2020 Alexander von Gluck IV <kallisti5@unixzen.com>

riscv64/boot: Add same u-boot potential that arm has, drop L_DYNAMIC

* Tianocore is still in an early state for RISCV64 with a lot of work
needed around qemu support.
* u-boot however is working, and can load EFI binaries... so follow the
arm model for now. (EFI via u-boot, or EFI via EFI Bios)

Change-Id: I3dfde25db17b114aedce6faefc58d7556e17a46a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3176
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 9ba143a5 19-Aug-2020 Alexander von Gluck IV <kallisti5@unixzen.com>

riscv64: Finish initial work on an EFI loader

Change-Id: Ia386d9155dda37ff6608a33dee349bf5332890c3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3162
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: François Revol <revol@free.fr>