When we are trying to change the mode from Secure_Supervisor to NON_Secure_Supervisor, we go to Secure_monitor by invoking "SMC #0".
As part of the Secure_monitor handler when we try to write SCR register by executing "mcr p15, 0, r1, c1, c1, 0"instruction, core gets hard reset. The same code is working perfectly fine in FAST model. Find the below Secure_monitor handler implementation
Please let us know if there are any extra settings/configuration required, to work this out in hardware.
Let us know if you need any more information regarding this issue.
Thanks
Nisar