Add MBED_NONSECURE_ENTRY for all-toolchain secure gateway functions

pull/6630/head
ccli8 2018-04-16 09:38:39 +08:00
parent a62c0796c5
commit 1b7b94e0ad
1 changed files with 21 additions and 0 deletions

View File

@ -412,6 +412,27 @@
#define EXTERN extern
#endif
/** MBED_NONSECURE_ENTRY
* Declare a function that can be called from non-secure world or secure world
*
* @code
* #include "mbed_toolchain.h"
*
* MBED_NONSECURE_ENTRY void foo() {
*
* }
* @endcode
*/
#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3L)
#if defined (__ICCARM__)
#define MBED_NONSECURE_ENTRY __cmse_nonsecure_entry
#else
#define MBED_NONSECURE_ENTRY __attribute__((cmse_nonsecure_entry))
#endif
#else
#define MBED_NONSECURE_ENTRY
#endif
#endif
/** @}*/