AR# 50499

14.2 EDK – 当您使用 BOOT.bin 从 SD 或 QSPI 启动时,在进行 PS_SRST_B 翻转时将不会对 PL 进行配置。

描述

在最初启动 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 版本中修复此问题。

链接问答记录

主要问答记录

Answer Number 问答标题 问题版本 已解决问题的版本
52540 Zynq-7000 SoC - Frequently Asked Questions N/A N/A
AR# 50499
日期 10/24/2012
状态 Active
Type 已知问题
器件
Tools