xref: /rk3399_ARM-atf/include/plat/arm/common/plat_acs_smc_handler.h (revision fbab861f7f7392d1fc07ad8addc9d4484aaa95ce)
1*f69f5512SNandan J /*
2*f69f5512SNandan J  * Copyright (c) 2025, Arm Limited and Contributors. All rights reserved.
3*f69f5512SNandan J  *
4*f69f5512SNandan J  * SPDX-License-Identifier: BSD-3-Clause
5*f69f5512SNandan J  */
6*f69f5512SNandan J #ifndef ACS_SMC_HANDLER_H
7*f69f5512SNandan J #define ACS_SMC_HANDLER_H
8*f69f5512SNandan J 
9*f69f5512SNandan J #include <common/runtime_svc.h>
10*f69f5512SNandan J #include <lib/utils_def.h>
11*f69f5512SNandan J 
12*f69f5512SNandan J /* ARM ACS SMC service call */
13*f69f5512SNandan J #define ARM_VEN_EL3_ACS_SMC_HANDLER     U(0xC7000030)
14*f69f5512SNandan J #define is_acs_fid(smc_fid)             (smc_fid == ARM_VEN_EL3_ACS_SMC_HANDLER)
15*f69f5512SNandan J 
16*f69f5512SNandan J uintptr_t plat_arm_acs_smc_handler(unsigned int smc_fid,
17*f69f5512SNandan J 				   uint64_t services,
18*f69f5512SNandan J 				   uint64_t arg0,
19*f69f5512SNandan J 				   uint64_t arg1,
20*f69f5512SNandan J 				   uint64_t arg2,
21*f69f5512SNandan J 				   void *handle);
22*f69f5512SNandan J #endif /* ACS_SMC_HANDLER_H */
23