blob: 672886dedfcb5048ae5042bfd50c5cd92be0f34b [file] [log] [blame]
Juan Castillo9b265a82015-05-07 14:52:44 +01001/*
Soby Mathew0bdfef02017-11-07 17:03:57 +00002 * Copyright (c) 2015-2018, ARM Limited and Contributors. All rights reserved.
Juan Castillo9b265a82015-05-07 14:52:44 +01003 *
dp-armfa3cf0b2017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Juan Castillo9b265a82015-05-07 14:52:44 +01005 */
6
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +00007#ifndef TBBR_IMG_DEF_H
8#define TBBR_IMG_DEF_H
Juan Castillo9b265a82015-05-07 14:52:44 +01009
Antonio Nino Diaze0f90632018-12-14 00:18:21 +000010#include <lib/utils_def.h>
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010011
Juan Castillo9b265a82015-05-07 14:52:44 +010012/* Firmware Image Package */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010013#define FIP_IMAGE_ID U(0)
Juan Castillo9b265a82015-05-07 14:52:44 +010014
15/* Trusted Boot Firmware BL2 */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010016#define BL2_IMAGE_ID U(1)
Juan Castillo9b265a82015-05-07 14:52:44 +010017
Juan Castilloa72b6472015-12-10 15:49:17 +000018/* SCP Firmware SCP_BL2 */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010019#define SCP_BL2_IMAGE_ID U(2)
Juan Castillo9b265a82015-05-07 14:52:44 +010020
21/* EL3 Runtime Firmware BL31 */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010022#define BL31_IMAGE_ID U(3)
Juan Castillo9b265a82015-05-07 14:52:44 +010023
24/* Secure Payload BL32 (Trusted OS) */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010025#define BL32_IMAGE_ID U(4)
Juan Castillo9b265a82015-05-07 14:52:44 +010026
27/* Non-Trusted Firmware BL33 */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010028#define BL33_IMAGE_ID U(5)
Juan Castillo9b265a82015-05-07 14:52:44 +010029
30/* Certificates */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010031#define TRUSTED_BOOT_FW_CERT_ID U(6)
32#define TRUSTED_KEY_CERT_ID U(7)
Juan Castillo9b265a82015-05-07 14:52:44 +010033
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010034#define SCP_FW_KEY_CERT_ID U(8)
35#define SOC_FW_KEY_CERT_ID U(9)
36#define TRUSTED_OS_FW_KEY_CERT_ID U(10)
37#define NON_TRUSTED_FW_KEY_CERT_ID U(11)
Juan Castillo9b265a82015-05-07 14:52:44 +010038
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010039#define SCP_FW_CONTENT_CERT_ID U(12)
40#define SOC_FW_CONTENT_CERT_ID U(13)
41#define TRUSTED_OS_FW_CONTENT_CERT_ID U(14)
42#define NON_TRUSTED_FW_CONTENT_CERT_ID U(15)
Juan Castillo9b265a82015-05-07 14:52:44 +010043
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010044/* Non-Trusted ROM Firmware NS_BL1U */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010045#define NS_BL1U_IMAGE_ID U(16)
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010046
47/* Trusted FWU Certificate */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010048#define FWU_CERT_ID U(17)
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010049
50/* Trusted FWU SCP Firmware SCP_BL2U */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010051#define SCP_BL2U_IMAGE_ID U(18)
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010052
53/* Trusted FWU Boot Firmware BL2U */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010054#define BL2U_IMAGE_ID U(19)
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010055
56/* Non-Trusted FWU Firmware NS_BL2U */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010057#define NS_BL2U_IMAGE_ID U(20)
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010058
Summer Qin80726782017-04-20 16:28:39 +010059/* Secure Payload BL32_EXTRA1 (Trusted OS Extra1) */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010060#define BL32_EXTRA1_IMAGE_ID U(21)
Summer Qin80726782017-04-20 16:28:39 +010061
62/* Secure Payload BL32_EXTRA2 (Trusted OS Extra2) */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010063#define BL32_EXTRA2_IMAGE_ID U(22)
Summer Qin80726782017-04-20 16:28:39 +010064
Soby Mathew0bdfef02017-11-07 17:03:57 +000065/* HW_CONFIG (e.g. Kernel DT) */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010066#define HW_CONFIG_ID U(23)
Soby Mathew0bdfef02017-11-07 17:03:57 +000067
68/* TB_FW_CONFIG */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010069#define TB_FW_CONFIG_ID U(24)
Soby Mathew0bdfef02017-11-07 17:03:57 +000070
Soby Mathew40eb4b62018-01-08 13:36:49 +000071/* SOC_FW_CONFIG */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010072#define SOC_FW_CONFIG_ID U(25)
Soby Mathew40eb4b62018-01-08 13:36:49 +000073
74/* TOS_FW_CONFIG */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010075#define TOS_FW_CONFIG_ID U(26)
Soby Mathew40eb4b62018-01-08 13:36:49 +000076
77/* NT_FW_CONFIG */
Antonio Nino Diaz38b4ce02018-08-21 14:14:31 +010078#define NT_FW_CONFIG_ID U(27)
Soby Mathew40eb4b62018-01-08 13:36:49 +000079
Yann Gautierf325df52018-10-15 09:36:21 +020080/* GPT Partition */
81#define GPT_IMAGE_ID U(28)
82
83/* Binary with STM32 header */
84#define STM32_IMAGE_ID U(29)
85
Roberto Vargasbe126ed2018-02-12 12:36:17 +000086/* Define size of the array */
Yann Gautierf325df52018-10-15 09:36:21 +020087#define MAX_NUMBER_IDS U(30)
Roberto Vargasbe126ed2018-02-12 12:36:17 +000088
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +000089#endif /* TBBR_IMG_DEF_H */