“Thread:SysBIOS”中讨论的其它部件
大家好,
我正在使用 F28388D 进行产品开发。
我想使用 SSBL 更新 CPU1固件,我正在 CPU1中使用 SYS/BIOS,而用于 CPU1的 SSBL 是 BareMetal,我已分配
SBL 的闪光区1,2和3
Flash 扇区13用于模式选择->要了解我们是需要保持在程序模式还是引导模式,
——这样,该闪存扇区将使用自定义关键字读取和验证,以确定是否保持 SSBL 模式以更新通过 IPC 从 CM 核心通过以太网接收的 FW
剩余闪存扇区将分配给应用程序固件。
RAM 的分区方式也相应,SSBL 和应用程序固件将不会使用相同部分的 RAM。
取得的进展:
到目前 为止,我们能够擦除闪存扇区,通过 IPC <-以太网(CM)将应用程序固件总数写入闪存,并将所需关键字写入所需闪存扇区,以便应用程序固件发生跳转。
我们已确保在 SSBL 和应用程序固件中不会重新初始化外围设备。
问题陈述:
因此,每当我们在输入关键字后尝试从 SSBL 跳转到应用程序固件时,都会调用“__ASM(”LB 0x86000“);/*跳转到入口点*/
我看到执行在主程序开始之前就停止了。 主命令甚至无法执行。
我在拆分过程中进一步陷入僵局,发现执行在 startup.c 的->XDC_runruntime _startup_exec_e 函数中挂起
调试1:
我尝试在 Application FW 的.cfg 文件中添加启动挂钩配置,该文件添加了“Startup.resetFxn = Startup.reset;”,认为这会有所帮助,但没有帮助。
自从过去几周以来,一直在关注这个问题,你们能帮我解决吗? 如果需要更快的解决方案,我可以在个人消息中共享源代码。
谢谢,此致,
普拉奈。