描述
在初始启动FSBL,比特流和U-BOOT后,有一个重启状态寄存器未被清除。在首次启动时,对于零分区,寄存器设置为0,这是比特流所在的位置。然后,对于第一个分区,寄存器设置为1,这是U-BOOT所在的位置。在FSBL切换时,寄存器不会被清除并停留在1.如果PS_SRST_B切换,则FSBL绕过“零”分区(PL的配置)并立即加载“一”分区(U-BOOT)。
解
在FSBL的main.c中修改函数void ClearFSBLIn(void):
void ClearFSBLIn(void){
160; FsblOut32(REBOOT_STATUS_REG,
(FsblIn32(REBOOT_STATUS_REG)&~FSBL_IN_MASK)&
〜PARTITION_NUMBER_MASK); }
目前,计划是在14.3中解决这个问题。
没有回复内容