1 /*
2  * Copyright (c) 2019, ARM Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef ARM_TRUSTED_FIRMWARE_EXPORT_COMMON_PARAM_HEADER_EXP_H
8 #define ARM_TRUSTED_FIRMWARE_EXPORT_COMMON_PARAM_HEADER_EXP_H
9 
10 /* EXPORT HEADER -- See include/export/README for details! -- EXPORT HEADER */
11 
12 #include "../lib/utils_def_exp.h"
13 
14 /* Param header types */
15 #define PARAM_EP			U(0x01)
16 #define PARAM_IMAGE_BINARY		U(0x02)
17 #define PARAM_BL31			U(0x03)
18 #define PARAM_BL_LOAD_INFO		U(0x04)
19 #define PARAM_BL_PARAMS			U(0x05)
20 #define PARAM_PSCI_LIB_ARGS		U(0x06)
21 #define PARAM_SP_IMAGE_BOOT_INFO	U(0x07)
22 
23 /* Param header version */
24 #define PARAM_VERSION_1			U(0x01)
25 #define PARAM_VERSION_2			U(0x02)
26 
27 #ifndef __ASSEMBLER__
28 
29 /***************************************************************************
30  * This structure provides version information and the size of the
31  * structure, attributes for the structure it represents
32  ***************************************************************************/
33 typedef struct param_header {
34 	uint8_t type;		/* type of the structure */
35 	uint8_t version;	/* version of this structure */
36 	uint16_t size;		/* size of this structure in bytes */
37 	uint32_t attr;		/* attributes: unused bits SBZ */
38 } param_header_t;
39 
40 #endif /*__ASSEMBLER__*/
41 
42 #endif /* ARM_TRUSTED_FIRMWARE_EXPORT_COMMON_PARAM_HEADER_EXP_H */
43