我用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字节
大家遇到这样的问题吗?给指个解决办法把
Yaoming Qin:
你的dd会不会有问题,可以先用sd卡启动系统,然后format emmc,再把数据copy进去,看行不行。
QUAN WU:
回复 Yaoming Qin:
Yaoming Qin,你好,,谢谢你的回复。我是参考这个链接做的emmc操作 http://59.124.231.13/index.php/Android_gingerbread_eMMC_booting
现在遇到的问题是做的system。img文件 系统mount一直有问题,大家有还的方法吗
你的想法是在ANDROID系统下格式化EMMC,在系统下格式化emmc的命令都不识别,请问那要怎么操作亚。linux的命令在android下都不识别。格式化、修复emmc的命令在ADB SHELL中都不支持
http://59.124.231.13/index.php/Android_gingerbread_eMMC_booting这个链接是在UBOOT下分区emmc,和实现烧录,但是别的命令如擦除命令都没实现。在host机做各个IMG文件,然后再mkfs.ext4 格式化IMG文件,在UBOOT下烧录到emmc的各个分区
我是参考这个链接做的emmc操作 http://59.124.231.13/index.php/Android_gingerbread_eMMC_booting ,链接里操作分区是在uboot下操作的,
制作system。img文件是这样的 :
$cd <YOUR_PATH>/images /* creating 250MB, it can be configure as per need */ $dd if=/dev/zero of=./system.img bs=1M count=250 $mkfs.ext4 system.img $mkdir mnt-point $sudo mount -t ext4 -o loop system.img mnt-point/ $cp -rfp <ANDROID_SOURCE>/out/target/product/omap3evm/system/* mnt-point/ $sudo umount mnt-point这样操作做的system.img 文件,有250M,系统不识别,当bs=1M count=30 时,可以识别,但这太小不能用bd2/journal.c JBD: no valid journal superblock found[ 7.316619] JBD: unrecognised superblock format ID[ 7.327758] JBD: Journal too short (blocks 0-0).[ 7.332611] JBD: recovery failed[ 7.335998] EXT4-fs (mmcblk1p6): error loading journal
我 后来用./make_ext4fs -s -l 512M -a system system_new.img system 命令产生system.img文件,但是用DUMPE2FS命令查看,说是没有超级块。我把 -s选项去掉了,有超级块,烧录后,系统mount时出现新的错误
EXT4-fs error (device mmcblk1p6): ext4_mb_generate_buddy:736: group 1, 25600 blocks in bitmap, 27955 in gd Aborting journal on device mmcblk1p6-8. EXT4-fs (mmcblk1p6): Remounting filesystem read-only EXT4-fs error (device mmcblk1p6) in ext4_reserve_inode_write:5641: Journal has aborted EXT4-fs error (device mmcblk1p6) in ext4_evict_inode:215: Journal has aborted