1 /* 2 * Copyright (c) 2023, Arm Limited. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #include <stdint.h> 8 9 #include <common/debug.h> 10 #include <common/runtime_svc.h> 11 12 #include <plat/arm/common/arm_sip_svc.h> 13 #include <plat/common/platform.h> 14 15 #if ENABLE_SPMD_LP 16 #include <services/el3_spmd_logical_sp.h> 17 #endif 18 19 uintptr_t plat_arm_sip_handler(uint32_t smc_fid, 20 u_register_t x1, 21 u_register_t x2, 22 u_register_t x3, 23 u_register_t x4, 24 void *cookie, 25 void *handle, 26 u_register_t flags) 27 { 28 #if ENABLE_SPMD_LP 29 return plat_spmd_logical_sp_smc_handler(smc_fid, x1, x2, x3, x4, 30 cookie, handle, flags); 31 #else 32 WARN("Unimplemented ARM SiP Service Call: 0x%x\n", smc_fid); 33 SMC_RET1(handle, SMC_UNK); 34 #endif 35 } 36