我用DM3730芯片,系统外部sd启动是可以的,我加入了emmc芯片,我在uboot下格式化了,在uboot下把EXT4文件系统拷贝到其中的分区,
制作命令是
dd if=/dev/zero of=./system.img bs=1M count=100
$mkfs.ext4 system.img
dd if=/dev/zero of=./userdata.img bs=1M count=30 $mkfs.ext4 userdata.img
我把system.img 拷贝到system分区,把userdata.img拷贝到data分区,都是在uboot下拷贝的。
我在内核中把支持ext4 选项打开 efi选项打开。
+CONFIG_EXT4_FS=y
+CONFIG_EXT4_FS_XATTR=y
+CONFIG_JBD2=y
+CONFIG_FS_MBCACHE=y
+CONFIG_EFI_PARTITION=y
系统启动后,mount DATA(30M)分区可以。成功,但是挂载system(100m)失败,log如下
jbd2/journal.c JBD: no valid journal superblock found
[ 7.319427] JBD: unrecognised superblock format ID
[ 7.330566] JBD: Journal too short (blocks 0-0).
[ 7.335418] JBD: recovery failed
[ 7.338836] EXT4-fs (mmcblk1p6): error loading journal
我如果在system分区拷贝也拷贝30m的文件系统,mount system分区也是正常的,我实验发现mount大的emmc(大于30m)分区就失败,mount小的分区(30m内的)就成功,大家有遇到吗
我用dumpe2ft命令查看30m的文件系统和100M的文件系统,他们的journal length 是不同的,30m的是1024,100M的是4096,其他也有些不一样,。我的emmc块都是1024字节
大家遇到这样的问题吗?给指个解决办法把