blob: f374f9c9bedb9513893be2fde187416170fa1a05 [file] [log] [blame]
Summer Qind0f42b12020-06-24 16:19:23 +08001/*
Kevin Pengfc7b7712021-05-08 13:42:56 +08002 * Copyright (c) 2020-2021, Arm Limited. All rights reserved.
Summer Qind0f42b12020-06-24 16:19:23 +08003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 *
6 */
7
8#include "cmsis_compiler.h"
9#include "service_api.h"
Kevin Pengfc7b7712021-05-08 13:42:56 +080010#ifdef TFM_PSA_API
Kevin Pengeca45b92021-02-09 14:46:50 +080011#include "psa/service.h"
Kevin Pengfc7b7712021-05-08 13:42:56 +080012#include "svc_num.h"
13#else
14#include "tfm_core_svc.h"
15#endif /* TFM_PSA_API */
Summer Qind0f42b12020-06-24 16:19:23 +080016
17__attribute__((naked))
18int32_t tfm_core_get_boot_data(uint8_t major_type,
19 struct tfm_boot_data *boot_status,
20 uint32_t len)
21{
22 __ASM volatile(
23 "SVC %0\n"
24 "BX lr\n"
25 : : "I" (TFM_SVC_GET_BOOT_DATA));
26}
Kevin Pengeca45b92021-02-09 14:46:50 +080027
28#ifdef TFM_PSA_API
29/* Entry point when Partition FLIH functions return */
30__attribute__((naked))
31void tfm_flih_func_return(psa_flih_result_t result)
32{
33 __ASM volatile("SVC %0 \n"
34 "BX r0 \n"
35 : : "I" (TFM_SVC_FLIH_FUNC_RETURN));
36}
37#endif /* TFM_PSA_API */