xref: /rk3399_ARM-atf/include/services/spmd_svc.h (revision fa0df1bd76b176f7832031c1fa3a0044aacf4e37)
1 /*
2  * Copyright (c) 2020-2022, ARM Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef SPMD_SVC_H
8 #define SPMD_SVC_H
9 
10 #ifndef __ASSEMBLER__
11 #include <services/ffa_svc.h>
12 #include <stdint.h>
13 
14 int spmd_setup(void);
15 uint64_t spmd_ffa_smc_handler(uint32_t smc_fid,
16 			      uint64_t x1,
17 			      uint64_t x2,
18 			      uint64_t x3,
19 			      uint64_t x4,
20 			      void *cookie,
21 			      void *handle,
22 			      uint64_t flags);
23 uint64_t spmd_smc_handler(uint32_t smc_fid,
24 			  uint64_t x1,
25 			  uint64_t x2,
26 			  uint64_t x3,
27 			  uint64_t x4,
28 			  void *cookie,
29 			  void *handle,
30 			  uint64_t flags,
31 			  uint32_t secure_ffa_version);
32 uint64_t spmd_smc_switch_state(uint32_t smc_fid,
33 			       bool secure_origin,
34 			       uint64_t x1,
35 			       uint64_t x2,
36 			       uint64_t x3,
37 			       uint64_t x4,
38 			       void *handle,
39 			       uint64_t flags,
40 			       uint32_t secure_ffa_version);
41 #endif /* __ASSEMBLER__ */
42 
43 #endif /* SPMD_SVC_H */
44