1*036935a8SXiaoDong Huang // SPDX-License-Identifier: BSD-3-Clause 2*036935a8SXiaoDong Huang /* 3*036935a8SXiaoDong Huang * Copyright (c) 2025, Rockchip Electronics Co., Ltd. 4*036935a8SXiaoDong Huang */ 5*036935a8SXiaoDong Huang 6*036935a8SXiaoDong Huang #include <common/debug.h> 7*036935a8SXiaoDong Huang #include <common/runtime_svc.h> 8*036935a8SXiaoDong Huang #include <drivers/scmi-msg.h> 9*036935a8SXiaoDong Huang 10*036935a8SXiaoDong Huang #include <plat_sip_calls.h> 11*036935a8SXiaoDong Huang #include <rockchip_sip_svc.h> 12*036935a8SXiaoDong Huang 13*036935a8SXiaoDong Huang uintptr_t rockchip_plat_sip_handler(uint32_t smc_fid, 14*036935a8SXiaoDong Huang u_register_t x1, 15*036935a8SXiaoDong Huang u_register_t x2, 16*036935a8SXiaoDong Huang u_register_t x3, 17*036935a8SXiaoDong Huang u_register_t x4, 18*036935a8SXiaoDong Huang void *cookie, 19*036935a8SXiaoDong Huang void *handle, 20*036935a8SXiaoDong Huang u_register_t flags) 21*036935a8SXiaoDong Huang { 22*036935a8SXiaoDong Huang switch (smc_fid) { 23*036935a8SXiaoDong Huang case RK_SIP_SCMI_AGENT0: 24*036935a8SXiaoDong Huang scmi_smt_fastcall_smc_entry(0); 25*036935a8SXiaoDong Huang SMC_RET1(handle, 0); 26*036935a8SXiaoDong Huang 27*036935a8SXiaoDong Huang default: 28*036935a8SXiaoDong Huang ERROR("%s: unhandled SMC (0x%x)\n", __func__, smc_fid); 29*036935a8SXiaoDong Huang SMC_RET1(handle, SMC_UNK); 30*036935a8SXiaoDong Huang } 31*036935a8SXiaoDong Huang } 32