TF-M Reference Manual  1.2.0
TrustedFirmware-M
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
tfm_arch_v6m_v7m.h File Reference
#include <stdint.h>
#include <stdbool.h>
#include "cmsis_compiler.h"
#include "utilities.h"
Include dependency graph for tfm_arch_v6m_v7m.h:

Go to the source code of this file.

Data Structures

struct  tfm_arch_ctx_t
 

Macros

#define EXC_RETURN_THREAD_S_PSP   0xFFFFFFFD
 

Functions

__STATIC_INLINE bool is_return_secure_stack (uint32_t lr)
 Check whether Secure or Non-secure stack is used to restore stack frame on exception return. More...
 
__STATIC_INLINE void tfm_arch_set_psplim (uint32_t psplim)
 Set PSP limit value. More...
 
__STATIC_INLINE uintptr_t tfm_arch_seal_thread_stack (uintptr_t stk)
 Seal the thread stack. More...
 
__STATIC_INLINE void tfm_arch_update_ctx (struct tfm_arch_ctx_t *p_actx)
 Update architecture context value into hardware. More...
 
__STATIC_INLINE void tfm_arch_init_secure_msp (uint32_t msplim)
 Secure the MSP. More...
 

Macro Definition Documentation

#define EXC_RETURN_THREAD_S_PSP   0xFFFFFFFD

Definition at line 24 of file tfm_arch_v6m_v7m.h.

Function Documentation

__STATIC_INLINE bool is_return_secure_stack ( uint32_t  lr)

Check whether Secure or Non-secure stack is used to restore stack frame on exception return.

Parameters
[in]lrLR register containing the EXC_RETURN value.
Return values
trueAlways return to Secure stack on secure core in multi-core topology.

Definition at line 48 of file tfm_arch_v6m_v7m.h.

Here is the caller graph for this function:

__STATIC_INLINE void tfm_arch_init_secure_msp ( uint32_t  msplim)

Secure the MSP.

Parameters
[in]msplimMSP limit value to be written.

Definition at line 128 of file tfm_arch_v6m_v7m.h.

Here is the caller graph for this function:

__STATIC_INLINE uintptr_t tfm_arch_seal_thread_stack ( uintptr_t  stk)

Seal the thread stack.

Parameters
[in]stkThread stack address.
Return values
stackUpdated thread stack address.

Definition at line 107 of file tfm_arch_v6m_v7m.h.

Here is the caller graph for this function:

__STATIC_INLINE void tfm_arch_set_psplim ( uint32_t  psplim)

Set PSP limit value.

Parameters
[in]psplimPSP limit value to be written.

Definition at line 91 of file tfm_arch_v6m_v7m.h.

Here is the caller graph for this function:

__STATIC_INLINE void tfm_arch_update_ctx ( struct tfm_arch_ctx_t p_actx)

Update architecture context value into hardware.

Parameters
[in]p_actxPointer of context data

Definition at line 118 of file tfm_arch_v6m_v7m.h.

Here is the caller graph for this function: