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