Hi Heinrich > On 28.09.20 09:45, Rick Chen wrote: > >> From: Heinrich Schuchardt [mailto:[email protected]] > >> Sent: Sunday, September 27, 2020 4:24 PM > >> To: Rick Jian-Zhi Chen(陳建志) > >> Cc: Simon Glass; Sean Anderson; Bin Meng; [email protected]; Alexander > >> Graf; Abner Chang; Heinrich Schuchardt > >> Subject: [PATCH v2 1/1] riscv: restore global data pointer in trap handler > >> > >> The gp register is used to store U-Boot's global data pointer. We should > >> not assume that an UEFI application leaves the gp register unchanged as > >> the UEFI specifications does not define who is the owner of the gp and tp > >> registers. > >> > >> So the following sequence should be followed in the trap handler: > >> > >> * save the caller's gp register > >> * restore the global data pointer > >> * serve interrupts or print crash dump and reset > >> * restore the caller's gp register > >> > >> Cc: Abner Chang <[email protected]> > >> Signed-off-by: Heinrich Schuchardt <[email protected]> > >> --- > >> v2: > >> Saving and restoring the caller's x3 is already handled in mtrap.S. > >> efi_loader.h provides an empty fallback efi_restore_gd() function > >> if CONFIG_EFI_LOADER=n. > >> --- > >> arch/riscv/lib/interrupts.c | 3 +++ > >> 1 file changed, 3 insertions(+) > > > > Reviewed-by: Rick Chen <[email protected]> > > > > Hello Rick, > > I have two other corrections for the UEFI sub-system and would like to > add this patch to my pull-request for v2020.10. Is that ok with you?
I am OK with it. Thanks, Rick > > Best regards > > Heinrich

