1f10796a0Sdp-arm /* 2*7a2130b4SMadhukar Pappireddy * Copyright (c) 2016-2019,2021-2023, Arm Limited and Contributors. All rights reserved. 3f10796a0Sdp-arm * 482cb2c1aSdp-arm * SPDX-License-Identifier: BSD-3-Clause 5f10796a0Sdp-arm */ 6f10796a0Sdp-arm 715b94cc1SAntonio Nino Diaz #ifndef ARM_SIP_SVC_H 815b94cc1SAntonio Nino Diaz #define ARM_SIP_SVC_H 915b94cc1SAntonio Nino Diaz 1009d40e0eSAntonio Nino Diaz #include <lib/utils_def.h> 11f10796a0Sdp-arm 12f10796a0Sdp-arm /* SMC function IDs for SiP Service queries */ 13f10796a0Sdp-arm 1415b94cc1SAntonio Nino Diaz #define ARM_SIP_SVC_CALL_COUNT U(0x8200ff00) 1515b94cc1SAntonio Nino Diaz #define ARM_SIP_SVC_UID U(0x8200ff01) 1615b94cc1SAntonio Nino Diaz /* U(0x8200ff02) is reserved */ 1715b94cc1SAntonio Nino Diaz #define ARM_SIP_SVC_VERSION U(0x8200ff03) 18f10796a0Sdp-arm 19992f091bSAmbroise Vincent /* PMF_SMC_GET_TIMESTAMP_32 0x82000010 */ 20992f091bSAmbroise Vincent /* PMF_SMC_GET_TIMESTAMP_64 0xC2000010 */ 21992f091bSAmbroise Vincent 22b10d4499SJeenu Viswambharan /* Function ID for requesting state switch of lower EL */ 2315b94cc1SAntonio Nino Diaz #define ARM_SIP_SVC_EXE_STATE_SWITCH U(0x82000020) 24b10d4499SJeenu Viswambharan 25992f091bSAmbroise Vincent /* DEBUGFS_SMC_32 0x82000030U */ 26992f091bSAmbroise Vincent /* DEBUGFS_SMC_64 0xC2000030U */ 27992f091bSAmbroise Vincent 2876a21174SMikael Olsson /* 29b139f1cfSMikael Olsson * Arm(R) Ethos(TM)-N NPU SiP SMC function IDs 3076a21174SMikael Olsson * 0xC2000050-0xC200005F 3176a21174SMikael Olsson * 0x82000050-0x8200005F 3276a21174SMikael Olsson */ 3376a21174SMikael Olsson 34f10796a0Sdp-arm /* ARM SiP Service Calls version numbers */ 3515b94cc1SAntonio Nino Diaz #define ARM_SIP_SVC_VERSION_MAJOR U(0x0) 3615b94cc1SAntonio Nino Diaz #define ARM_SIP_SVC_VERSION_MINOR U(0x2) 37f10796a0Sdp-arm 38*7a2130b4SMadhukar Pappireddy /* SiP handler specific to each Arm platform. */ 39*7a2130b4SMadhukar Pappireddy uintptr_t plat_arm_sip_handler(uint32_t smc_fid, 40*7a2130b4SMadhukar Pappireddy u_register_t x1, 41*7a2130b4SMadhukar Pappireddy u_register_t x2, 42*7a2130b4SMadhukar Pappireddy u_register_t x3, 43*7a2130b4SMadhukar Pappireddy u_register_t x4, 44*7a2130b4SMadhukar Pappireddy void *cookie, 45*7a2130b4SMadhukar Pappireddy void *handle, 46*7a2130b4SMadhukar Pappireddy u_register_t flags); 47*7a2130b4SMadhukar Pappireddy 4815b94cc1SAntonio Nino Diaz #endif /* ARM_SIP_SVC_H */ 49