Please note: We are aware of an issue affecting replies on the Arm Community forums, which may not be loading as expected.
We apologize for any inconvenience and appreciate your patience while we investigate and work to resolve the issue.
Thank you for your understanding.
Dear All,
Please help me to change the cpu state from secure to non-secure hust after starting in reset handler itself.
Is there any way to change its state to the non-secure region.
From the docs:
C2.4.25 BLX, BLXNSBranch with Link and Exchange (Non-secure). Branch with Link and Exchange calls a subroutine at an address,with the address and instruction set specified by a register. Bit[0] complies with the Arm architecture interworkingrules for switching between the A32 and T32 instruction sets. However, Armv8-M only supports the T32 instructionset, so bit[0] must be 1. If bit[0] is 0 the PE takes an INVSTATE UsageFault exception on the instruction at thetarget address.Branch with Link and Exchange Non-secure calls a subroutine at an address specified by a register, and if bit[0] ofthe target address is 0 then the instruction causes a transition from Secure to Non-secure state. This variant of theinstruction must only be used when the additional steps required to make such a transition safe have been taken.