We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I found this documentation: https://cs140e.sergio.bz/docs/ARMv8-Reference-Manual.pdf
On page D7-2464, it mentions that SCTLR_EL1 of the Non-Secure world can be accessed from EL3.
I am using ARMv8 FVP.
Can anyone provide guidance on how to access and update SCTLR_EL1 of the Non-Secure world (Linux) from EL3?
SCTLR_EL1
Thank you for your reply.However, I am getting different values in EL1 and EL3 for same register.I used the MRS instruction to read SCTLR_EL1 from Linux (EL1), and then I used the same MRS instruction from EL3 to read SCTLR_EL1.But the value I got from EL3 is different from the value I got from EL1. Why is that?I implemented a system call in which I read SCTLR_EL1, then performed an SMC, and read the same register from EL3.I tried reading it from various places in trusted firmware (from runtime_exception.S, Context.S), but I never got the same value in EL3 as in EL1.
Without knowing more, some guesses: