我正在使用 bsp32-release 开发基于 s32g 平台的产品。
我发现 rpmb 读/写功能在 uboot 阶段不起作用。
在“drivers/mmc/fsl_esdhc_imx.c”中添加一些日志后
尝试读/写 rpmb 存储后,我发现 emmc 寄存器状态不正确:(第 577 行)
563 /* Wait un
til all of the blocks are transferred */
564 if (data) {
565 #ifdef CONFIG_SYS_FSL_ESDHC_USE_PIO
566 esdhc_pio_read_write(priv, data);
567 #else
568 flags = DATA_COMPLETE;
569 if ((cmd->cmdidx == MMC_CMD_SEND_TUNING_BLOCK) ||
570 (cmd->cmdidx == MMC_CMD_SEND_TUNING_BLOCK_HS200)) {
571 flags = IRQSTAT_BRR;
572 }
573
574 do {
575 irqstat = esdhc_read32(®s->irqstat);
576
577 if (irqstat & IRQSTAT_DTOE) {
/* error occurs in this condition check */
578 err = -ETIMEDOUT;
579 goto out;
580 }
581
582 if (irqstat & DATA_ERR) {
583 err = -ECOMM;
584 goto out;
585 }
586 } while ((irqstat & flags) != flags);
请帮忙查一下,非常感谢!