blob: 44f58d3fa5427b6b748a43121c8cd7f59f4443da [file] [log] [blame]
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +01001/*
Roberto Vargas52f707f2018-02-12 12:36:17 +00002 * Copyright (c) 2015-2018, ARM Limited and Contributors. All rights reserved.
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +01003 *
dp-armfa3cf0b2017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +01005 */
6
7#include <bl1.h>
8#include <bl_common.h>
9#include <platform_def.h>
Roberto Vargas52f707f2018-02-12 12:36:17 +000010#include <tbbr/tbbr_img_desc.h>
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010011
12image_desc_t bl1_tbbr_image_descs[] = {
13 {
14 .image_id = FWU_CERT_ID,
Yatharth Kocharf11b29a2016-02-01 11:04:46 +000015 SET_STATIC_PARAM_HEAD(image_info, PARAM_IMAGE_BINARY,
16 VERSION_1, image_info_t, 0),
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010017 .image_info.image_base = BL2_BASE,
Yatharth Kochar8c0177f2016-11-11 13:57:50 +000018#if LOAD_IMAGE_V2
19 .image_info.image_max_size = BL2_LIMIT - BL2_BASE,
20#endif
Yatharth Kocharf11b29a2016-02-01 11:04:46 +000021 SET_STATIC_PARAM_HEAD(ep_info, PARAM_IMAGE_BINARY,
22 VERSION_1, entry_point_info_t, SECURE),
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010023 },
24#if NS_BL1U_BASE
25 {
26 .image_id = NS_BL1U_IMAGE_ID,
Yatharth Kocharf11b29a2016-02-01 11:04:46 +000027 SET_STATIC_PARAM_HEAD(ep_info, PARAM_EP,
28 VERSION_1, entry_point_info_t, NON_SECURE | EXECUTABLE),
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010029 .ep_info.pc = NS_BL1U_BASE,
30 },
31#endif
32#if SCP_BL2U_BASE
33 {
34 .image_id = SCP_BL2U_IMAGE_ID,
Yatharth Kocharf11b29a2016-02-01 11:04:46 +000035 SET_STATIC_PARAM_HEAD(image_info, PARAM_IMAGE_BINARY,
36 VERSION_1, image_info_t, 0),
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010037 .image_info.image_base = SCP_BL2U_BASE,
Yatharth Kochar8c0177f2016-11-11 13:57:50 +000038#if LOAD_IMAGE_V2
39 .image_info.image_max_size = SCP_BL2U_LIMIT - SCP_BL2U_BASE,
40#endif
Yatharth Kocharf11b29a2016-02-01 11:04:46 +000041 SET_STATIC_PARAM_HEAD(ep_info, PARAM_IMAGE_BINARY,
42 VERSION_1, entry_point_info_t, SECURE),
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010043 },
44#endif
45#if BL2U_BASE
46 {
47 .image_id = BL2U_IMAGE_ID,
Yatharth Kocharf11b29a2016-02-01 11:04:46 +000048 SET_STATIC_PARAM_HEAD(image_info, PARAM_EP,
49 VERSION_1, image_info_t, 0),
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010050 .image_info.image_base = BL2U_BASE,
Yatharth Kochar8c0177f2016-11-11 13:57:50 +000051#if LOAD_IMAGE_V2
52 .image_info.image_max_size = BL2U_LIMIT - BL2U_BASE,
53#endif
Yatharth Kocharf11b29a2016-02-01 11:04:46 +000054 SET_STATIC_PARAM_HEAD(ep_info, PARAM_EP,
55 VERSION_1, entry_point_info_t, SECURE | EXECUTABLE),
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010056 .ep_info.pc = BL2U_BASE,
57 },
58#endif
59#if NS_BL2U_BASE
60 {
61 .image_id = NS_BL2U_IMAGE_ID,
Yatharth Kocharf11b29a2016-02-01 11:04:46 +000062 SET_STATIC_PARAM_HEAD(ep_info, PARAM_EP,
63 VERSION_1, entry_point_info_t, NON_SECURE),
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010064 },
65#endif
66 BL2_IMAGE_DESC,
67
68 {
69 .image_id = INVALID_IMAGE_ID,
70 }
71};