2315221_zh-CN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2315221_zh-CN

2315221_zh-CN

IMX8MP 总是从 eMMC boot0 启动,无法从 eMMC 分区 mmcblk2p1 启动

您好,

我正在使用 SolidRun i.MX8MP 板。我有默认图像(core-image-inimal-imx8mpsolidrun.wic.zst)同时闪存到 SD 卡和 eMMC。我想让板从 eMMC 用户分区 1 (mmcblk2p1) 启动,但它从 mmcblk2boot0 启动。

说明

从 SD 卡启动:

mmc 开发人员
切换到分区 #0,OK
mmc1 是当前设备


SD 卡能从用户分区正确启动。

内核加载 imx8mp-hummingpulse.dtb

我在 U-Boot 中所做的自定义更改(例如板消息、DTB 选择)会反映出来。

从eMMC启动:

mmc 开发人员
切换到分区 #0,OK
mmc2(第 0 部分)是当前设备


U-Boot 从 boot0 加载。

加载的是默认 DTB imx8mp-cubox.dtb 而不是 imx8mp-hummingpulse.dtb。

我在 U-Boot 中所做的更改根本没有反映出来。

eMMC 信息:

mmc info
启动区域 0:4 MiB
启动区域 1:4 MiB
用户区域:29.1 G
iB 启动区域未受写保护


我试过单独设置 U-Boot 变量但它不起作用

setenv mmcdev 2
setenv mmcpart 1

Uboot 仍从 boot0 加载 - 忽略用户分区的更改。


我在启动期间使用 UART 控制台停止 U-Boot 并打印 boot_targets;输出是 (mmc1 mmc2 usb pxe dhcp)。我使用 setenv 将其更改为 mmc2 mmc1 usb pxe dhcp,并使用 saveenv 将其保存。重新刷新新镜像后,我再次检查 boot_targets,结果仍然显示 mmc2 mmc1 usb pxe dhcp,所以即使刷新了新镜像,我所做的更改仍然存在。

这证实 ROM 总是执行 boot0,而不是用户分区。

有什么办法可以从 eMMC 分区 (mmcblk2p1) 启动吗?

谢谢!



Re: IMX8MP always boots from eMMC boot0, cannot boot from eMMc partition mmcblk2p1

您可以阅读此链接。

https://community.nxp.com/t5/forums/replypage/board-id/imx-processors/message-id/243934


你对 eMMC 缺乏了解。



Re: IMX8MP always boots from eMMC boot0, cannot boot from eMMc partition mmcblk2p1

您可以阅读此链接。

https://community.nxp.com/t5/i-MX-Processors/Secondary-Boot-on-i-MX6ULL-Hangs-After-Reset/m-p/225116...


你对 eMMC 缺乏了解。

Re: IMX8MP always boots from eMMC boot0, cannot boot from eMMc partition mmcblk2p1

你好@tusharvernekar

很抱歉回复晚了,前段时间春节放假,现在回到办公室了。我不太明白这个问题。由于 mmcblk2p1 是 FAT32 分区,用于放置 dtb 文件和内核映像,您的意思是可以将 uboot 放入该分区而无需构建引导加载程序?对我来说,这是全新的启动过程,你能否确认并分享更多关于启动方法的细节,即使在 SD 启动情况下也是如此。

B.R

Tags (1)
No ratings
Version history
Last update:
‎02-27-2026 02:35 AM
Updated by: