As we know, PendSV can be used for context switching, for example in RTOS and software in non-secure state typicall trigger the non-secure PendSV handler.
However, whether we can make the RTOS triggers the secure PendSV handler to process some logics regarding to security purposes and then return to non-secure PendSV handler to process the normal context switching?
As per Armv8-M architecture, PendSV exception is banked between security states.
A secure software can program AIRCR.PRIS bit such that non-secure exceptions are forcibly made to have lower priority than the lowest priority secure exception. Hence a secure exception always gets triggered before non-secure exception when pended.
The Nested Vectored Interrupt Controller (NVIC) dialog (for ARMv8 architecture) shows the status of all exceptions, including exceptions that have Secure (S) and Non-secure (NS) states. For example, SYSTICK (S) and SYSTICK (NS). For each exception, the dialog shows the number, source, name, state, and priority. >> MyBalanceNow
To set up a SAU region the following procedure happens: