TF-M Reference Manual  1.2.0
TrustedFirmware-M
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
psa_client_service_apis.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2020, Arm Limited. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 #ifndef __PSA_CLIENT_SERVICE_APIS_H__
9 #define __PSA_CLIENT_SERVICE_APIS_H__
10 
11 /* Svcall for PSA Client APIs */
12 
13 /*
14  * \brief This function get the current PSA RoT lifecycle state.
15  *
16  * \return state The current security lifecycle state of the PSA
17  * RoT. The PSA state and implementation state are
18  * encoded as follows:
19  * \arg state[15:8] – PSA lifecycle state
20  * \arg state[7:0] – IMPLEMENTATION DEFINED state
21  */
22 uint32_t tfm_spm_get_lifecycle_state(void);
23 
31 uint32_t tfm_spm_psa_framework_version(void);
32 
44 uint32_t tfm_spm_psa_version(uint32_t *args, bool ns_caller);
45 
63 psa_status_t tfm_spm_psa_connect(uint32_t *args, bool ns_caller);
64 
87 psa_status_t tfm_spm_psa_call(uint32_t *args, bool ns_caller, uint32_t lr);
88 
103 void tfm_spm_psa_close(uint32_t *args, bool ns_caller);
104 
105 /* Svcall for PSA Service APIs */
106 
117 psa_signal_t tfm_spm_psa_wait(uint32_t *args);
118 
136 psa_status_t tfm_spm_psa_get(uint32_t *args);
137 
149 void tfm_spm_psa_set_rhandle(uint32_t *args);
150 
170 size_t tfm_spm_psa_read(uint32_t *args);
171 
189 size_t tfm_spm_psa_skip(uint32_t *args);
190 
209 void tfm_spm_psa_write(uint32_t *args);
210 
224 void tfm_spm_psa_reply(uint32_t *args);
225 
235 void tfm_spm_psa_notify(uint32_t *args);
236 
244 void tfm_spm_psa_clear(void);
245 
258 void tfm_spm_psa_eoi(uint32_t *args);
259 
266 void tfm_spm_psa_panic(void);
267 
268 #endif /* __PSA_CLIENT_SERVICE_APIS_H__ */
uint32_t psa_signal_t
Definition: service.h:50
void tfm_spm_psa_write(uint32_t *args)
SVC handler for psa_write.
void tfm_spm_psa_reply(uint32_t *args)
SVC handler for psa_reply.
psa_signal_t tfm_spm_psa_wait(uint32_t *args)
SVC handler for psa_wait.
Definition: spm_func.c:1087
uint32_t tfm_spm_get_lifecycle_state(void)
uint32_t tfm_spm_psa_framework_version(void)
SVC handler for psa_framework_version.
psa_status_t tfm_spm_psa_get(uint32_t *args)
SVC handler for psa_get.
psa_status_t tfm_spm_psa_call(uint32_t *args, bool ns_caller, uint32_t lr)
SVC handler for psa_call.
size_t tfm_spm_psa_skip(uint32_t *args)
SVC handler for psa_skip.
void tfm_spm_psa_panic(void)
Terminate execution within the calling Secure Partition and will not return.
size_t tfm_spm_psa_read(uint32_t *args)
SVC handler for psa_read.
uint32_t tfm_spm_psa_version(uint32_t *args, bool ns_caller)
SVC handler for psa_version.
void tfm_spm_psa_clear(void)
SVC handler for psa_clear.
void tfm_spm_psa_notify(uint32_t *args)
SVC handler for psa_notify.
void tfm_spm_psa_close(uint32_t *args, bool ns_caller)
SVC handler for psa_close.
void tfm_spm_psa_set_rhandle(uint32_t *args)
SVC handler for psa_set_rhandle.
int32_t psa_status_t
Function return status.
Definition: crypto_types.h:43
psa_status_t tfm_spm_psa_connect(uint32_t *args, bool ns_caller)
SVC handler for psa_connect.
void tfm_spm_psa_eoi(uint32_t *args)
SVC handler for psa_eoi.
Definition: spm_func.c:1118