
On Tue, Jun 03 2014 at 10:41:51 am BST, "TigerLiu@via-alliance.com" TigerLiu@via-alliance.com wrote:
Hi, Marc:
My understanding is that if you're using the Trusted Firmware, then you have an implementation of PSCI, and that's what you must use to bring the CPUs into u-boot. U-Boot will be running non-secure anyway, so it requires the firmware to perform S to NS transition on its behalf.
Do you mean : Waking up Non-BSP cores through PSCI interface, and then let them switch to Non-Secure state through smp_kick_all_cpus()?
No. You don't need smp_kick_all_cpus at all. Just call the PSCI firmware to wake up the secondary CPUs, and they will be directly placed in non-secure mode.
And another question:
- how to determine successfully transitioning to Non-Secure? Is there any register to indicate current state is Non-Secure state? And after transitioning to non-secure state, I tried to access SCR
register,but it caused system hang.
No, there is no architectural way. But if you go from EL3 to EL2, looking at the mode in PSTATE is pretty easy.
M.