aboutsummaryrefslogtreecommitdiff
path: root/plat/marvell/armada/common/mss/mss_scp_bl2_format.h
blob: 74dddc645f3cb4c7f4bf3b2ea523f55f368bf98b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/*
 * Copyright (C) 2018 Marvell International Ltd.
 *
 * SPDX-License-Identifier:     BSD-3-Clause
 * https://spdx.org/licenses
 */

#ifndef MSS_SCP_BL2_FORMAT_H
#define MSS_SCP_BL2_FORMAT_H

#define MAX_NR_OF_FILES	8
#define FILE_MAGIC	0xddd01ff
#define HEADER_VERSION	0x1

#define MSS_IDRAM_SIZE	0x10000 /* 64KB */

/* Types definitions */
typedef struct file_header {
	/* Magic specific for concatenated file (used for validation) */
	uint32_t magic;
	uint32_t nr_of_imgs;	/* Number of images concatenated */
} file_header_t;

/* Types definitions */
enum cm3_t {
	MSS_AP,
	MSS_CP0,
	MSS_CP1,
	MSS_CP2,
	MSS_CP3,
	MG_CP0,
	MG_CP1,
	MG_CP2,
};

typedef struct img_header {
	uint32_t type;		/* CM3 type, can be one of cm3_t */
	uint32_t length;	/* Image length */
	uint32_t version;	/* For sanity checks and future
				 * extended functionality
				 */
} img_header_t;

#endif /* MSS_SCP_BL2_FORMAT_H */