IMX6Q基于Yocto移植:sd卡rootfs无法加载

一、报错信息分析:

在加载Rootfs的时候,出现以下报错信息

VFS: Cannot open root device "mmcblk1p2" or unknown-block(179,2): error -30
Please append a correct "root=" boot option; here are the available partitions:

继续查看系统启动信息,发现如下内容:

mmc1: new high speed SDHC card at address e624
mmcblk1: mmc1:e624 SL16G 14.8 GiB (ro) 

即sd卡以只读的方式挂载。

二、解决方法:
导致SD卡只读挂载的实际原因未知,暂时解决方法为将MMC驱动的mmc_blk_readonly函数内容注释,直接return 0;
<KERNEL_DIR>/drivers/mmc/card/block.c

static inline int mmc_blk_readonly(struct mmc_card *card)
{
#if 0 //modify by yangzf 20181012
	return mmc_card_readonly(card) ||
	      !(card->csd.cmdclass & CCC_BLOCK_WRITE);
#else
	return 0;
#endif
}

修改之后,挂载SD卡时不再出现ro标志,rootfs加载成功。

猜你喜欢

转载自blog.csdn.net/weixin_42421766/article/details/83026048