我使用squashfs 都是ok的 现在想换成yaffs2文件系统 老是不成功 不知道该怎么解决。
我的bootargs 是 setenv bootargs 'mem=48M console=ttyS1,115200n8 root=/dev/mtdblock3 rw rootfstype=yaffs2 ip=192.168.1.100:192.168.1.101:192.168.1.1:255.255.255.0:::off eth=00:0C:0B:A0:04:22 lpj=1077248 cmemk.phys_start="0x83000000" cmemk.phys_end="0x88000000" cmemk.phys_start_1="0x00001000" cmemk.phys_end_1="0x00008000" cmemk.pools_1="1×28672" cmemk.allowOverlap="1"'
系统信息是
yaffs: dev is 32505859 name is "mtdblock3"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.3, "mtdblock3"
yaffs: auto selecting yaffs1
yaffs_read_super: isCheckpointed 0
VFS: Mounted root (yaffs2 filesystem).
Freeing init memory: 180K
Warning: unable to open an initial console.
Kernel panic – not syncing: No init found. Try passing init= option to kernel.
走到这里就走不下去了
Louis:
有没有尝试过将整片flash刷掉,再重新刷一遍镜像?
Louis:
回复 Louis:
另外,从你的错误信息"No init found"来看,是出现在Linux启动的时候,这个不太像是yaffs2镜像文件的问题, 应该是内核在准备切换至user-space的时候没有发现 “init” ,可以尝试在bootargs指定如: init=/sbin/init。
JAMES XH:
回复 Louis:
我把参数修改成 mem=48M console=ttyS1,115200n8 init=/sbin/init root=/dev/mtdblock3 rootfstype=yaffs2 ip=192.168.1.100:192.168.1.101:192.168.1.1:255.255.255.0:::off eth=00:0C:0B:A0:04:22 lpj=1077248 cmemk.phys_start="0x83000000" cmemk.phys_end="0x88000000" cmemk.phys_start_1="0x00001000" cmemk.phys_end_1="0x00008000" cmemk.pools_1="1×28672" cmemk.allowOverlap="1" 启动起来 比刚才多了 Failed to execute /sbin/init. Attempting defaults…
我使用 的文件系统是 按照 http://processors.wiki.ti.com/index.php/Create_a_YAFFS_Target_Image 这个里面的方法制作的
JAMES XH:
回复 Louis:
我试了的 还是一样的
JAMES XH:
回复 Louis:
有没有 完整可以使用的yaffs2 文件系统 可以配合内核 在dm365上启动的
Louis:
回复 JAMES XH:
有没有检查ECC校验?
JAMES XH:
回复 Louis:
现在 我使用的 是 NAND_ECC_NONE 模式的。
yaffs2 我内核配置的时候 选择了 autoselect yaffs2 format , turn off wide tnodes, cache short names in ram。
kooking:
回复 JAMES XH:
你用的DVSDK是什么版本的,DVSDK2内核支持yaff格式文件系统,DVSDK4内核好像不支持yaff格式文件系统,需要使用jffs文件系统。
你可以参考一下这个:
http://wenku.baidu.com/view/4daf6a68a98271fe910ef9a3
烧写脚本不过是把nand分区挂载成yaff格式,然后擦除,解压文件系统。
关键是需要内核支持相应的文件系统,然后格式化nand成需要的格式,对文件系统没有特别的要求,DVSDK自带的*.tar.gz文件系统就可以
JAMES XH:
回复 Louis:
我使用的NAND_ECC_NONE 模式 和 NAND_ECC_SOFT , make menuconfig 时候 选定Lets Yaffs do its own ECC 。 还是不行啊 , 是不是我什么设置的不对 。Mr Louis 需要其他信息不 我都可以贴出来。
JAMES XH:
回复 Louis:
我使用的NAND_ECC_NONE 模式 和 NAND_ECC_SOFT , make menuconfig 时候 选定Lets Yaffs do its own ECC 。 还是不行啊 , 是不是我什么设置的不对 。Mr Louis 需要其他信息不 我都可以贴出来。