1 /*
2  * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef TS_SMM_VARIABLE_OPCODES_H
8 #define TS_SMM_VARIABLE_OPCODES_H
9 
10 /**
11  * C/C++ definition of smm_variable service opcodes
12  *
13  * These defines are aligned to the SMM Variable definitions from EDK2. These versions
14  * of these defines are maintained in the TS project to avoid a mandatory dependency
15  * on the EDK2 project.
16  */
17 
18 #define SMM_VARIABLE_FUNCTION_GET_VARIABLE            1
19 #define SMM_VARIABLE_FUNCTION_GET_NEXT_VARIABLE_NAME  2
20 #define SMM_VARIABLE_FUNCTION_SET_VARIABLE            3
21 #define SMM_VARIABLE_FUNCTION_QUERY_VARIABLE_INFO     4
22 #define SMM_VARIABLE_FUNCTION_READY_TO_BOOT           5
23 #define SMM_VARIABLE_FUNCTION_EXIT_BOOT_SERVICE       6
24 
25 #define SMM_VARIABLE_FUNCTION_VAR_CHECK_VARIABLE_PROPERTY_SET  9
26 #define SMM_VARIABLE_FUNCTION_VAR_CHECK_VARIABLE_PROPERTY_GET  10
27 #define SMM_VARIABLE_FUNCTION_GET_PAYLOAD_SIZE        11
28 
29 #endif /* TS_SMM_VARIABLE_OPCODES_H */
30