工具/软件:
大家好、向 AM263P 的 SDK 专家提问。
背景是我在跳转到应用程序后 core1-1 无法启动时遇到问题、而 CPU 复位后、内核按预期工作。
我使用的是 SDK 版本 10_01_00_31。 注意、版本 10_02_00_15 也是如此。
在 通过函数 Bootloader_parseAndLoadMultiCoreELF () 将映像段加载到各种 SBL 中每个内核(例如 sbl_ospi_morple_elf)各自的段之前、我们需要为每个 r5f 岛初始化锁步/双核配置。 为了实现这一点, 每个内核都运行 Bootloader_initCpu ()(如果该内核存在段)。
通过 initCpu、为每个内核运行 Bootloader_soccpuPowerOnReset()。 如果为 RFSS0 或 RFSS1 选择了双核模式、则在(通过 Bootloader_socCpuResetRelease)中为相应岛的 core1 添加了内核解除停止:
RFSS0:
RFSS1:
但是、initCpu 函数在为相应的内核加载任何段之前运行。 因此、对于双核模式、这似乎是过早地取消 core0-1 和 core1-1 的停止、因为内核可能会在加载到相关 tcma/ocram 段之前尝试访问特定代码。
针对所有内核以及作为 Bootloader_runCpu 函数的一部分在 SBL 结束时(在内核自复位之前)取消停止。 这似乎是不停止发生的适当地方。
在这一点之前、在 initCpu 取消停止 cores0-1 和 1-1 的原因是什么?
谢谢、Rens