1*54fd6939SJiyong Park /* 2*54fd6939SJiyong Park * Copyright (c) 2016-2021, ARM Limited and Contributors. All rights reserved. 3*54fd6939SJiyong Park * 4*54fd6939SJiyong Park * SPDX-License-Identifier: BSD-3-Clause 5*54fd6939SJiyong Park */ 6*54fd6939SJiyong Park 7*54fd6939SJiyong Park #include <stddef.h> 8*54fd6939SJiyong Park 9*54fd6939SJiyong Park #include <firmware_image_package.h> 10*54fd6939SJiyong Park 11*54fd6939SJiyong Park #include "tbbr_config.h" 12*54fd6939SJiyong Park 13*54fd6939SJiyong Park /* The images used depends on the platform. */ 14*54fd6939SJiyong Park toc_entry_t toc_entries[] = { 15*54fd6939SJiyong Park { 16*54fd6939SJiyong Park .name = "SCP Firmware Updater Configuration FWU SCP_BL2U", 17*54fd6939SJiyong Park .uuid = UUID_TRUSTED_UPDATE_FIRMWARE_SCP_BL2U, 18*54fd6939SJiyong Park .cmdline_name = "scp-fwu-cfg" 19*54fd6939SJiyong Park }, 20*54fd6939SJiyong Park { 21*54fd6939SJiyong Park .name = "AP Firmware Updater Configuration BL2U", 22*54fd6939SJiyong Park .uuid = UUID_TRUSTED_UPDATE_FIRMWARE_BL2U, 23*54fd6939SJiyong Park .cmdline_name = "ap-fwu-cfg" 24*54fd6939SJiyong Park }, 25*54fd6939SJiyong Park { 26*54fd6939SJiyong Park .name = "Firmware Updater NS_BL2U", 27*54fd6939SJiyong Park .uuid = UUID_TRUSTED_UPDATE_FIRMWARE_NS_BL2U, 28*54fd6939SJiyong Park .cmdline_name = "fwu" 29*54fd6939SJiyong Park }, 30*54fd6939SJiyong Park { 31*54fd6939SJiyong Park .name = "Non-Trusted Firmware Updater certificate", 32*54fd6939SJiyong Park .uuid = UUID_TRUSTED_FWU_CERT, 33*54fd6939SJiyong Park .cmdline_name = "fwu-cert" 34*54fd6939SJiyong Park }, 35*54fd6939SJiyong Park { 36*54fd6939SJiyong Park .name = "Trusted Boot Firmware BL2", 37*54fd6939SJiyong Park .uuid = UUID_TRUSTED_BOOT_FIRMWARE_BL2, 38*54fd6939SJiyong Park .cmdline_name = "tb-fw" 39*54fd6939SJiyong Park }, 40*54fd6939SJiyong Park { 41*54fd6939SJiyong Park .name = "SCP Firmware SCP_BL2", 42*54fd6939SJiyong Park .uuid = UUID_SCP_FIRMWARE_SCP_BL2, 43*54fd6939SJiyong Park .cmdline_name = "scp-fw" 44*54fd6939SJiyong Park }, 45*54fd6939SJiyong Park { 46*54fd6939SJiyong Park .name = "EL3 Runtime Firmware BL31", 47*54fd6939SJiyong Park .uuid = UUID_EL3_RUNTIME_FIRMWARE_BL31, 48*54fd6939SJiyong Park .cmdline_name = "soc-fw" 49*54fd6939SJiyong Park }, 50*54fd6939SJiyong Park { 51*54fd6939SJiyong Park .name = "Secure Payload BL32 (Trusted OS)", 52*54fd6939SJiyong Park .uuid = UUID_SECURE_PAYLOAD_BL32, 53*54fd6939SJiyong Park .cmdline_name = "tos-fw" 54*54fd6939SJiyong Park }, 55*54fd6939SJiyong Park { 56*54fd6939SJiyong Park .name = "Secure Payload BL32 Extra1 (Trusted OS Extra1)", 57*54fd6939SJiyong Park .uuid = UUID_SECURE_PAYLOAD_BL32_EXTRA1, 58*54fd6939SJiyong Park .cmdline_name = "tos-fw-extra1" 59*54fd6939SJiyong Park }, 60*54fd6939SJiyong Park { 61*54fd6939SJiyong Park .name = "Secure Payload BL32 Extra2 (Trusted OS Extra2)", 62*54fd6939SJiyong Park .uuid = UUID_SECURE_PAYLOAD_BL32_EXTRA2, 63*54fd6939SJiyong Park .cmdline_name = "tos-fw-extra2" 64*54fd6939SJiyong Park }, 65*54fd6939SJiyong Park { 66*54fd6939SJiyong Park .name = "Non-Trusted Firmware BL33", 67*54fd6939SJiyong Park .uuid = UUID_NON_TRUSTED_FIRMWARE_BL33, 68*54fd6939SJiyong Park .cmdline_name = "nt-fw" 69*54fd6939SJiyong Park }, 70*54fd6939SJiyong Park { 71*54fd6939SJiyong Park .name = "Realm Monitor Management Firmware", 72*54fd6939SJiyong Park .uuid = UUID_REALM_MONITOR_MGMT_FIRMWARE, 73*54fd6939SJiyong Park .cmdline_name = "rmm-fw" 74*54fd6939SJiyong Park }, 75*54fd6939SJiyong Park /* Dynamic Configs */ 76*54fd6939SJiyong Park { 77*54fd6939SJiyong Park .name = "FW_CONFIG", 78*54fd6939SJiyong Park .uuid = UUID_FW_CONFIG, 79*54fd6939SJiyong Park .cmdline_name = "fw-config" 80*54fd6939SJiyong Park }, 81*54fd6939SJiyong Park { 82*54fd6939SJiyong Park .name = "HW_CONFIG", 83*54fd6939SJiyong Park .uuid = UUID_HW_CONFIG, 84*54fd6939SJiyong Park .cmdline_name = "hw-config" 85*54fd6939SJiyong Park }, 86*54fd6939SJiyong Park { 87*54fd6939SJiyong Park .name = "TB_FW_CONFIG", 88*54fd6939SJiyong Park .uuid = UUID_TB_FW_CONFIG, 89*54fd6939SJiyong Park .cmdline_name = "tb-fw-config" 90*54fd6939SJiyong Park }, 91*54fd6939SJiyong Park { 92*54fd6939SJiyong Park .name = "SOC_FW_CONFIG", 93*54fd6939SJiyong Park .uuid = UUID_SOC_FW_CONFIG, 94*54fd6939SJiyong Park .cmdline_name = "soc-fw-config" 95*54fd6939SJiyong Park }, 96*54fd6939SJiyong Park { 97*54fd6939SJiyong Park .name = "TOS_FW_CONFIG", 98*54fd6939SJiyong Park .uuid = UUID_TOS_FW_CONFIG, 99*54fd6939SJiyong Park .cmdline_name = "tos-fw-config" 100*54fd6939SJiyong Park }, 101*54fd6939SJiyong Park { 102*54fd6939SJiyong Park .name = "NT_FW_CONFIG", 103*54fd6939SJiyong Park .uuid = UUID_NT_FW_CONFIG, 104*54fd6939SJiyong Park .cmdline_name = "nt-fw-config" 105*54fd6939SJiyong Park }, 106*54fd6939SJiyong Park /* Key Certificates */ 107*54fd6939SJiyong Park { 108*54fd6939SJiyong Park .name = "Root Of Trust key certificate", 109*54fd6939SJiyong Park .uuid = UUID_ROT_KEY_CERT, 110*54fd6939SJiyong Park .cmdline_name = "rot-cert" 111*54fd6939SJiyong Park }, 112*54fd6939SJiyong Park { 113*54fd6939SJiyong Park .name = "Trusted key certificate", 114*54fd6939SJiyong Park .uuid = UUID_TRUSTED_KEY_CERT, 115*54fd6939SJiyong Park .cmdline_name = "trusted-key-cert" 116*54fd6939SJiyong Park }, 117*54fd6939SJiyong Park { 118*54fd6939SJiyong Park .name = "SCP Firmware key certificate", 119*54fd6939SJiyong Park .uuid = UUID_SCP_FW_KEY_CERT, 120*54fd6939SJiyong Park .cmdline_name = "scp-fw-key-cert" 121*54fd6939SJiyong Park }, 122*54fd6939SJiyong Park { 123*54fd6939SJiyong Park .name = "SoC Firmware key certificate", 124*54fd6939SJiyong Park .uuid = UUID_SOC_FW_KEY_CERT, 125*54fd6939SJiyong Park .cmdline_name = "soc-fw-key-cert" 126*54fd6939SJiyong Park }, 127*54fd6939SJiyong Park { 128*54fd6939SJiyong Park .name = "Trusted OS Firmware key certificate", 129*54fd6939SJiyong Park .uuid = UUID_TRUSTED_OS_FW_KEY_CERT, 130*54fd6939SJiyong Park .cmdline_name = "tos-fw-key-cert" 131*54fd6939SJiyong Park }, 132*54fd6939SJiyong Park { 133*54fd6939SJiyong Park .name = "Non-Trusted Firmware key certificate", 134*54fd6939SJiyong Park .uuid = UUID_NON_TRUSTED_FW_KEY_CERT, 135*54fd6939SJiyong Park .cmdline_name = "nt-fw-key-cert" 136*54fd6939SJiyong Park }, 137*54fd6939SJiyong Park 138*54fd6939SJiyong Park /* Content certificates */ 139*54fd6939SJiyong Park { 140*54fd6939SJiyong Park .name = "Trusted Boot Firmware BL2 certificate", 141*54fd6939SJiyong Park .uuid = UUID_TRUSTED_BOOT_FW_CERT, 142*54fd6939SJiyong Park .cmdline_name = "tb-fw-cert" 143*54fd6939SJiyong Park }, 144*54fd6939SJiyong Park { 145*54fd6939SJiyong Park .name = "SCP Firmware content certificate", 146*54fd6939SJiyong Park .uuid = UUID_SCP_FW_CONTENT_CERT, 147*54fd6939SJiyong Park .cmdline_name = "scp-fw-cert" 148*54fd6939SJiyong Park }, 149*54fd6939SJiyong Park { 150*54fd6939SJiyong Park .name = "SoC Firmware content certificate", 151*54fd6939SJiyong Park .uuid = UUID_SOC_FW_CONTENT_CERT, 152*54fd6939SJiyong Park .cmdline_name = "soc-fw-cert" 153*54fd6939SJiyong Park }, 154*54fd6939SJiyong Park { 155*54fd6939SJiyong Park .name = "Trusted OS Firmware content certificate", 156*54fd6939SJiyong Park .uuid = UUID_TRUSTED_OS_FW_CONTENT_CERT, 157*54fd6939SJiyong Park .cmdline_name = "tos-fw-cert" 158*54fd6939SJiyong Park }, 159*54fd6939SJiyong Park { 160*54fd6939SJiyong Park .name = "Non-Trusted Firmware content certificate", 161*54fd6939SJiyong Park .uuid = UUID_NON_TRUSTED_FW_CONTENT_CERT, 162*54fd6939SJiyong Park .cmdline_name = "nt-fw-cert" 163*54fd6939SJiyong Park }, 164*54fd6939SJiyong Park { 165*54fd6939SJiyong Park .name = "SiP owned Secure Partition content certificate", 166*54fd6939SJiyong Park .uuid = UUID_SIP_SECURE_PARTITION_CONTENT_CERT, 167*54fd6939SJiyong Park .cmdline_name = "sip-sp-cert" 168*54fd6939SJiyong Park }, 169*54fd6939SJiyong Park { 170*54fd6939SJiyong Park .name = "Platform owned Secure Partition content certificate", 171*54fd6939SJiyong Park .uuid = UUID_PLAT_SECURE_PARTITION_CONTENT_CERT, 172*54fd6939SJiyong Park .cmdline_name = "plat-sp-cert" 173*54fd6939SJiyong Park }, 174*54fd6939SJiyong Park { 175*54fd6939SJiyong Park .name = NULL, 176*54fd6939SJiyong Park .uuid = { {0} }, 177*54fd6939SJiyong Park .cmdline_name = NULL, 178*54fd6939SJiyong Park } 179*54fd6939SJiyong Park }; 180