blob: 7cf8d3201d408a091aab852eb8d246cdf3f73e8c [file] [log] [blame]
Konstantin Porotchkinf69ec582018-06-07 18:31:14 +03001/*
2 * Copyright (C) 2018 Marvell International Ltd.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 * https://spdx.org/licenses
6 */
7
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +00008#ifndef MSS_SCP_BL2_FORMAT_H
9#define MSS_SCP_BL2_FORMAT_H
Konstantin Porotchkinf69ec582018-06-07 18:31:14 +030010
11#define MAX_NR_OF_FILES 5
12#define FILE_MAGIC 0xddd01ff
13#define HEADER_VERSION 0x1
14
15#define MSS_IDRAM_SIZE 0x10000 /* 64KB */
16#define MG_SRAM_SIZE 0x20000 /* 128KB */
17
18/* Types definitions */
19typedef struct file_header {
20 /* Magic specific for concatenated file (used for validation) */
21 uint32_t magic;
22 uint32_t nr_of_imgs; /* Number of images concatenated */
23} file_header_t;
24
25/* Types definitions */
26enum cm3_t {
27 MSS_AP,
28 MSS_CP0,
29 MSS_CP1,
30 MSS_CP2,
31 MSS_CP3,
32 MG_CP0,
33 MG_CP1,
34};
35
36typedef struct img_header {
37 uint32_t type; /* CM3 type, can be one of cm3_t */
38 uint32_t length; /* Image length */
39 uint32_t version; /* For sanity checks and future
40 * extended functionality
41 */
42} img_header_t;
43
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +000044#endif /* MSS_SCP_BL2_FORMAT_H */