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