[U-Boot] [PATCH] armv8: Remove the codes about switching to EL1 before jumping to kernel
Alexander Graf
agraf at suse.de
Mon Jul 18 08:22:55 CEST 2016
On 18.07.16 05:24, Huan Wang wrote:
> Hi, Alex,
>
>
>
> As there is strong objection to remove the codes about
> switching to EL1, I think we have to remain it, do you agree?
I agree, yes.
> If it is remained, I think your suggestion about
> **always** jumping to ep for both switching to AArch64 and AArch32 modes
> will make the code hard to realize and very complicated. So I prefer to
> keep the process in v4 patches. What is your opinion?
I think we should still convert it to a function call based approach.
You can either just convert the current flow to functions:
static void enter_in_el1(...)
{
call_in_el1(payload_pc, payload_bits, ...);
}
#ifdef ENTER_PAYLOAD_IN_EL1
call_in_el2(enter_in_el1, 64bit, ...);
#else
call_in_el2(payload_pc, payload_bits, ...);
#endif
Or you could add a check in the EL1 caller if you are in EL3 that you
want to go to EL2 first:
long call_in_el1(...)
{
if (current_el() == 3)
return call_in_el2(call_in_el1, ...);
asm_call_in_el1(...);
}
Alex
More information about the U-Boot
mailing list