1 /* SPDX-License-Identifier: BSD-2-Clause */
2 /*
3  * Copyright (c) 2018, Linaro Limited
4  */
5 
6 #ifndef __SMCCC_H
7 #define __SMCCC_H
8 
9 /*
10  * Describes features of SMC Calling Convention from v1.1
11  * See also https://developer.arm.com/-/media/developer/pdf/ARM_DEN_0070A_Firmware_interfaces_for_mitigating_CVE-2017-5715.pdf
12  */
13 
14 /*
15  * Retrieve the implemented version of the SMC Calling Convention
16  * Mandatory from SMCCC v1.1
17  * Optional in SMCCC v1.0
18  */
19 #define SMCCC_VERSION		0x80000000
20 
21 /*
22  * Determine the availability and capability of Arm Architecture Service
23  * functions.
24  * Mandatory from SMCCC v1.1
25  * Optional for SMCCC v1.0
26  */
27 #define SMCCC_ARCH_FEATURES	0x80000001
28 
29 /*
30  * Execute the mitigation for CVE-2017-5715 on the calling PE
31  * Optional from SMCCC v1.1
32  * Not supported in SMCCC v1.0
33  */
34 #define SMCCC_ARCH_WORKAROUND_1	0x80008000
35 
36 #endif /*__SMCCC_H*/
37