1 /* Copyright (c) 2021 Intel Corporation 2 * SPDX-License-Identifier: Apache-2.0 3 */ 4 #include <manifest.h> 5 #include <adsp_memory.h> 6 #include <zephyr/toolchain.h> 7 8 /* These two modules defined here aren't runtime data used by Zephyr or 9 * SOF with IPC3, but instead are inserted to *MANIFEST* of the final 10 * firmware binary by rimage and later will be used by ROM loader on the 11 * DSP. As it happens most of the data here is ignored by both layers, 12 * but it's left unchanged for historical purposes. 13 * 14 * For each module here, two UUIDs are allowed, one used on APL, and the 15 * other used on cAVS 1.8+ platforms. Because SOF with IPC4 requires the 16 * module UUID in manifest must be identical with the one in firmware code, 17 * and there will be *NO* IPC4 support for APL, we have to use UUIDs used 18 * on cAVS 1.8+ platforms here. 19 */ 20 __attribute__((section(".module.boot"))) 21 const struct sof_man_module_manifest boot_manifest = { 22 .module = { 23 .name = "BRNGUP", 24 .uuid = {0xf3, 0xe4, 0x79, 0x2b, 0x75, 0x46, 0x49, 0xf6, 25 0x89, 0xdf, 0x3b, 0xc1, 0x94, 0xa9, 0x1a, 0xeb}, 26 .entry_point = IMR_BOOT_LDR_TEXT_ENTRY_BASE, 27 .type = { .load_type = SOF_MAN_MOD_TYPE_MODULE, 28 .domain_ll = 1, }, 29 .affinity_mask = 3, 30 } 31 }; 32 33 __attribute__((section(".module.main"))) 34 const struct sof_man_module_manifest main_manifest = { 35 .module = { 36 .name = "BASEFW", 37 .uuid = {0x32, 0x8c, 0x39, 0x0e, 0xde, 0x5a, 0x4b, 0xba, 38 0x93, 0xb1, 0xc5, 0x04, 0x32, 0x28, 0x0e, 0xe4}, 39 .entry_point = RAM_BASE, 40 .type = { .load_type = SOF_MAN_MOD_TYPE_MODULE, 41 .domain_ll = 1 }, 42 .affinity_mask = 3, 43 } 44 }; 45