我对yocto世界非常陌生,我遵循下面的指令来编译yocto。
http://doc.qt.io/QtForDeviceCreation/qtee-custom-embedded-linux-image.html
当我从qt存储库编译yocto(boot2qt)时,我得到了sdcard映像。当我将sdcard闪存到存储卡时,我注意到/boot/目录内核中没有文件,而dtb文件存在于另一个分区mmc1p1中。我的u引导配置如下所示
setenv bootargs 'console=ttymxc1,115200 root=/dev/mmcblk0p2 rootwait fixrtc rw'
setenv bootcmd 'mmc dev 1; ext2load mmc 1:2 10800000 /boot/zImage;ext2load mmc 1:2 0x12000000 /boot/imx6q-sabrelitesd.dtb; bootz 0x10800000 - 0x12000000'
saveenv而且它没有启动,因为/boot/目录中没有文件。然后,我更改了我的uboot配置如下
setenv bootcmd 'mmc dev 1; ext2load mmc 1:2 10800000 /zImage;ext2load mmc 1:2 0x12000000 /imx6q-sabrelitesd.dtb; bootz 0x10800000 - 0x12000000'而且我得到的文件没有找到错误,所以很明显,我已经提到了root=/dev/mmcblk0p2,我正在尝试从mmc0p1加载内核。
如何解决这个问题?我应该对yocto配置做些什么,并使内核和dtb文件在/boot/目录中可用,还是必须将u引导配置更改为从不同分区加载内核和从不同分区加载rootfs?
发布于 2017-12-09 17:51:41
这里的问题是,您仍然试图从分区2加载内核和dtb,您必须更新引导and。根据我对yocto的了解,partition1将在FAT文件系统中,所以您必须使用FAT负载。
setenv bootcmd 'mmc dev 1; fatload mmc 1:1 10800000 /zImage; fatload mmc 1:1 0x12000000 /imx6q-sabrelitesd.dtb; bootz 0x10800000 - 0x12000000'发布于 2017-12-12 05:26:11
我相信你用的是yocto的.SDCARD图像。然后按照下面的命令将您的图像闪现到sdcard。首先,删除所有sdcard分区,并对sdcard进行汇总。然后使用lsblk命令来了解/dev/sdb|c|d或mmcblk0等
sudo dd if=fsl-image-gui-<MACHINE_NAME>.sdcard of=/dev/sd[b|c|d|e] bs=1MBhttps://stackoverflow.com/questions/47728600
复制相似问题