SPM: Depreciate vague header 'tfm_internal.h'
The name of this file is vague. Depreciate it by:
- Remove tfm_internal.h
- Move function model architecture code into a new create arch.h
- Create tfm_boot_data.h and put boot related function declaration
in it
Change-Id: Ia2ad1b0f95c1137624f99a4e81807bedf9086857
Signed-off-by: Summer Qin <summer.qin@arm.com>
diff --git a/secure_fw/spm/cmsis_func/arch.h b/secure_fw/spm/cmsis_func/arch.h
new file mode 100644
index 0000000..964ddf7
--- /dev/null
+++ b/secure_fw/spm/cmsis_func/arch.h
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2020, Arm Limited. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ *
+ */
+
+#ifndef __ARCH_H__
+#define __ARCH_H__
+
+/*
+ * This function pointer is meant to only hold non secure function pointers.
+ * It will be turned into a non-secure one (LSB cleared) before being called
+ * whatever happens anyway (unless cast to another function pointer type).
+ * Registers will be cleared before branching so that no information leaks
+ * from secure to non-secure world.
+ */
+typedef void (*nsfptr_t) (void) __attribute__((cmse_nonsecure_call));
+
+extern nsfptr_t ns_entry;
+
+/**
+ * \brief Jump to non-secure code.
+ */
+void jump_to_ns_code(void);
+
+#endif /* __ARCH_H__ */