GNU Linux-libre 5.13.14-gnu1
[releases.git] / include / linux / soc / mediatek / mtk_sip_svc.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Copyright (C) 2019 MediaTek Inc.
4  */
5 #ifndef __MTK_SIP_SVC_H
6 #define __MTK_SIP_SVC_H
7
8 /* Error Code */
9 #define SIP_SVC_E_SUCCESS               0
10 #define SIP_SVC_E_NOT_SUPPORTED         -1
11 #define SIP_SVC_E_INVALID_PARAMS        -2
12 #define SIP_SVC_E_INVALID_RANGE         -3
13 #define SIP_SVC_E_PERMISSION_DENIED     -4
14
15 #ifdef CONFIG_ARM64
16 #define MTK_SIP_SMC_CONVENTION          ARM_SMCCC_SMC_64
17 #else
18 #define MTK_SIP_SMC_CONVENTION          ARM_SMCCC_SMC_32
19 #endif
20
21 #define MTK_SIP_SMC_CMD(fn_id) \
22         ARM_SMCCC_CALL_VAL(ARM_SMCCC_FAST_CALL, MTK_SIP_SMC_CONVENTION, \
23                            ARM_SMCCC_OWNER_SIP, fn_id)
24
25 #endif