10 #include "tfm_hal_device_header.h"
15 #if !defined(__ARM_ARCH_8M_BASE__)
16 #error "Unsupported ARM Architecture."
48 #if defined(__ICCARM__)
49 #pragma required = tfm_pendsv_do_schedule
57 "push {r0, r1, r2, lr} \n"
65 "bl tfm_pendsv_do_schedule \n"
81 uint32_t sp, uint32_t sp_limit)
84 p_actx->sp_limit = sp_limit;
110 #if defined(__ICCARM__)
112 #pragma required = tfm_core_svc_handler
128 "BL tfm_core_svc_handler \n"
141 VECTKEY = (~AIRCR & SCB_AIRCR_VECTKEYSTAT_Msk);
142 scb->AIRCR = SCB_AIRCR_PRIS_Msk |
144 (AIRCR & ~SCB_AIRCR_VECTKEY_Msk);
146 NVIC_SetPriority(SVCall_IRQn, 0);
147 #ifdef TFM_MULTI_CORE_TOPOLOGY
148 NVIC_SetPriority(PendSV_IRQn, (1 << __NVIC_PRIO_BITS) - 1);
165 NVIC_SetPriority(PendSV_IRQn, (1 << (__NVIC_PRIO_BITS - 1)) - 1);
void HardFault_Handler(void)
Overwrites default Hard fault handler.
void tfm_arch_configure_coprocessors(void)
Configure coprocessors.
void PendSV_Handler(void)
void tfm_arch_init_actx(struct tfm_arch_ctx_t *p_actx, uint32_t sp, uint32_t sp_limit)
void tfm_arch_set_secure_exception_priorities(void)
#define EXC_RETURN_THREAD_S_PSP
void tfm_arch_clear_fp_status(void)
uint32_t tfm_core_svc_handler(uint32_t *svc_args, uint32_t lr, uint32_t *msp)