Microchip
直播中

h1654155275.5795

7年用户 213经验值
私信 关注
[问答]

这是引导加载程序中的错误吗?

我想我在引导加载程序中发现了一个bug,但我想从比我更了解的人那里得到一个健全的检查。在HARMony 1.07.01中,当进行实时更新时,引导加载程序不写到引导闪存(BFM);APP_ProgramHexRecord只写到NVM,如果:该范围包括程序闪存mory(PFM)但不包括BFM。所以在升级之后,打开设备,运行旧的代码(版本1)并检查其他PFM页面中是否有新版本。如果有,它调用BFM中的SwapFlashPanels来交换PFM页面并运行更新的代码(版本2)。您的Flash现在包含版本2和版本3。但是BFM中的SavaFlash面板代码从未更新过,它仍然在版本1。如果版本2和/或3链接的SaveFlash面板处于不同的地址会怎么样?当他们需要时,他们现在都不能调用SWAPFLASH面板。我遗漏了什么东西,或者这是一个真正的bug?谢谢你,鲍伯

回帖(1)

陈发赫

2019-10-17 13:21:37
我不确定我是否遵守。假设版本1中的SavaFlash面板功能链接到0x1DC000。在版本3中,它链接到0x1DC000 010。当版本3试图调用SavaFlash面板时,它将调用0x1DC000 010。但是BFM从来没有更新过,所以这是错误的跳转地址。-Bob
举报

更多回帖

发帖
×
20
完善资料,
赚取积分