Other Parts Discussed in Thread: AM62L
器件型号: AM62L
似乎无法在 TF-A BL1(和更高的 BL 阶段)上检测到复位原因。
通过在 WKUP_CTRL_MMR_CFG5_RST_CTRL (0x43054000) 上写入 0x00000006 来发出热复位、则可以正常运行。 但是、在 TF-A BL1 执行的早期阶段、从 WKUP_CTRL_MMR_CFG5_RST_SRC (0x43054010) 中读回复位原因始终返回 0x00000000(预期:0x00000002)。
源寄存器说明说、必须在首次读取寄存器后清除状态。 因此、好像在 BL1 清除这些位之前的某个阶段一样。 到目前为止、我在 BL1 代码中找不到它已被使用的位置、因此复位状态寄存器可能无法正常工作或被其他人覆盖。
问题是、如果某个阶段可能无法控制(可能是 ti sysfw?)、我们如何找出复位原因? 已消耗并复位源寄存器?