在 AM62x-SK E2电路板上、eMMC 闪存和引导正常工作(来自上电复位(POR))、但在 AM62x-SK E2上观察到下面列出的问题。
发现问题
从冷 POR 成功引导 eMMC 后,下面列出的热复位选项不会从 eMMC 引导重新引导电路板
•发出“reset”cmd @u-boot 提示符
•发出“reboot”cmd @kernel
•按 SW3以发出 SOC WARM_RESET
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
在 AM62x-SK E2电路板上、eMMC 闪存和引导正常工作(来自上电复位(POR))、但在 AM62x-SK E2上观察到下面列出的问题。
发现问题
从冷 POR 成功引导 eMMC 后,下面列出的热复位选项不会从 eMMC 引导重新引导电路板
•发出“reset”cmd @u-boot 提示符
•发出“reboot”cmd @kernel
•按 SW3以发出 SOC WARM_RESET
对该问题的解释指出:
Micron eMMC 数据表[ https://www.mouser.com/datasheet/2/671/micron_technology_mict-s-a0006806196-1-1759129.pdf]
•RST_n:主机使用 RST_n 信号复位器件、从而将器件移至预空闲状态。
•默认情况下、器件中的 RST_n 信号被暂时禁用。
•主机必须将 ECSD 寄存器的字节162、位[1:0]设置为0x1才能启用此功能、然后主机才能使用。
如何通过读取 eMMC ECSD 寄存器来检查 eMMC RST_n
引导至 Linux、下面的内核日志显示在一个 AM62x-SK E2板上的 eMMC ECSD 上未启用 RST_n
root@am62xx-EVM:~# mmc extcsd 读取/dev/mmcblk0 | grep -i RST
H/W 复位功能[RST_N_FUNCITY]:0x00
如何通过对 eMMC ECSD 寄存器进行编程来启用 eMMC RST_n
通过按@如下所示一次性对 eMMC ECSD 位进行编程、可以永久启用 eMMC 硬件复位信号 RST_n @
•@U-boot:=> MMC rst-function 0 1
•μ@内核:MMC hwreset 启用/dev/mmcblk0. 请注意,“/dev/mmcblk0”是 Linux 内核中安装的 eMMC 设备的一个示例。
下面的内核日志显示 eMMC RST_n 已启用、任何 warm 复位选项现在都可以使用。
root@am62xx-EVM:~# mmc extcsd 读取/dev/mmcblk0 | grep -i RST
H/W 复位功能[RST_N_FUNCITY]:0x01