TF-M Reference Manual  1.2.0
TrustedFirmware-M
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
tfm_multi_core_api.c File Reference
#include "os_wrapper/semaphore.h"
#include "tfm_api.h"
#include "tfm_mailbox.h"
#include "tfm_multi_core_api.h"
Include dependency graph for tfm_multi_core_api.c:

Go to the source code of this file.

Macros

#define MAX_SEMAPHORE_COUNT   NUM_MAILBOX_QUEUE_SLOT
 

Functions

enum tfm_status_e tfm_ns_interface_init (void)
 NS interface, Initialise the NS interface. More...
 
int32_t tfm_ns_wait_for_s_cpu_ready (void)
 Called on the non-secure CPU. Flags that the non-secure side has completed its initialization. Waits, if necessary, for the secure CPU to flag that it has completed its initialization. More...
 
uint32_t tfm_ns_multi_core_lock_acquire (void)
 Acquire the multi-core lock for synchronizing PSA client call(s) The actual implementation depends on the use scenario. More...
 
uint32_t tfm_ns_multi_core_lock_release (void)
 Release the multi-core lock for synchronizing PSA client call(s) The actual implementation depends on the use scenario. More...
 

Macro Definition Documentation

#define MAX_SEMAPHORE_COUNT   NUM_MAILBOX_QUEUE_SLOT

Definition at line 14 of file tfm_multi_core_api.c.

Function Documentation

enum tfm_status_e tfm_ns_interface_init ( void  )

NS interface, Initialise the NS interface.

This function needs to be called from the NS world to properly initialise the NS interface towards TF-M. This function will initialise all the objects required for runtime dispatching of TF-M requests to services

Returns
A value according to tfm_status_e

Definition at line 19 of file tfm_multi_core_api.c.

Here is the call graph for this function:

uint32_t tfm_ns_multi_core_lock_acquire ( void  )

Acquire the multi-core lock for synchronizing PSA client call(s) The actual implementation depends on the use scenario.

Returns
OS_WRAPPER_SUCCESS on success
OS_WRAPPER_ERROR on error

Definition at line 36 of file tfm_multi_core_api.c.

Here is the call graph for this function:

Here is the caller graph for this function:

uint32_t tfm_ns_multi_core_lock_release ( void  )

Release the multi-core lock for synchronizing PSA client call(s) The actual implementation depends on the use scenario.

Returns
OS_WRAPPER_SUCCESS on success
OS_WRAPPER_ERROR on error

Definition at line 42 of file tfm_multi_core_api.c.

Here is the call graph for this function:

Here is the caller graph for this function:

int32_t tfm_ns_wait_for_s_cpu_ready ( void  )

Called on the non-secure CPU. Flags that the non-secure side has completed its initialization. Waits, if necessary, for the secure CPU to flag that it has completed its initialization.

Returns
Return 0 if succeeds.
Otherwise, return specific error code.

Definition at line 31 of file tfm_multi_core_api.c.

Here is the call graph for this function: