xref: /rk3399_ARM-atf/include/bl32/pnc/pnc.h (revision b86cbe10d251284571595fd95a791cfcc3f79cd8)
1*b0980e58SFlorian Lugou /*
2*b0980e58SFlorian Lugou  * Copyright (c) 2021-2022, ProvenRun S.A.S. All rights reserved.
3*b0980e58SFlorian Lugou  *
4*b0980e58SFlorian Lugou  * SPDX-License-Identifier: BSD-3-Clause
5*b0980e58SFlorian Lugou  */
6*b0980e58SFlorian Lugou 
7*b0980e58SFlorian Lugou #ifndef __PNC_H__
8*b0980e58SFlorian Lugou #define __PNC_H__
9*b0980e58SFlorian Lugou 
10*b0980e58SFlorian Lugou #define SMC_YIELD		0xbf000000
11*b0980e58SFlorian Lugou #define SMC_ACTION_FROM_S	0xbf000001
12*b0980e58SFlorian Lugou #define SMC_GET_SHAREDMEM	0xbf000002
13*b0980e58SFlorian Lugou #define SMC_CONFIG_SHAREDMEM	0xbf000003
14*b0980e58SFlorian Lugou #define SMC_ACTION_FROM_NS	0xbf000004
15*b0980e58SFlorian Lugou 
16*b0980e58SFlorian Lugou #ifndef __ASSEMBLER__
17*b0980e58SFlorian Lugou 
18*b0980e58SFlorian Lugou #include <stdint.h>
19*b0980e58SFlorian Lugou 
20*b0980e58SFlorian Lugou void *pncd_context_switch_to(unsigned long security_state);
21*b0980e58SFlorian Lugou int plat_pncd_setup(void);
22*b0980e58SFlorian Lugou uintptr_t plat_pncd_smc_handler(uint32_t smc_fid, u_register_t x1,
23*b0980e58SFlorian Lugou 				u_register_t x2, u_register_t x3,
24*b0980e58SFlorian Lugou 				u_register_t x4, void *cookie, void *handle,
25*b0980e58SFlorian Lugou 				u_register_t flags);
26*b0980e58SFlorian Lugou 
27*b0980e58SFlorian Lugou #endif /* __ASSEMBLER__ */
28*b0980e58SFlorian Lugou 
29*b0980e58SFlorian Lugou #endif /* __PNC_H__ */
30