YAFFS2文件系统

SZ阿辉 2013-01-24 02:27:28
各位大神我想用YAFFS2文件系统,git clone git://www.aleph1.co.uk/yaffs2
然后打了补丁到内核,配置如下图
cd /yaffs2/utils make 编译出生成YAFFS2镜像工具mkyaffs2image 用mkyaffs2image rootfs/ rootfs.yaffs2
生成镜像。
uboot参照http://blog.csdn.net/lhf0921/article/details/5401116 对YAFFS2进行了支持,
以下是uboot中的操作命令:
fatload usb 0:1 0x82000000 rootfs.yaffs2 0x28fe000
nand write.yaffs2 0x82000000 0x780000 0x28fe000
然后 修改环境变量setenv bootargs console=${console} root=/dev/mtdblock4 rw rootfstype=yaffs2
接着重新启动最后打印出信息如下:

[ 2.350158] yaffs: dev is 32505860 name is "mtdblock4" rw
[ 2.355895] yaffs: passed flags ""
[ 2.809539] VFS: Mounted root (yaffs2 filesystem) on device 31:4.
[ 2.816345] Freeing init memory: 556K
[ 2.820922] Kernel panic - not syncing: No init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.
[ 2.833984] [<c00a3678>] (unwind_backtrace+0x0/0xec) from [<c036fea4>] (panic+0x54/0x180)
[ 2.842590] [<c036fea4>] (panic+0x54/0x180) from [<c0093540>] (init_post+0x9c/0xbc)
[ 2.850646] [<c0093540>] (init_post+0x9c/0xbc) from [<c000870c>] (kernel_init+0x110/0x14c)
[ 2.859313] [<c000870c>] (kernel_init+0x110/0x14c) from [<c009e590>] (kernel_thread_exit+0x0/0x8)

各位大神帮帮看看是什么问题,我用JFFS2启动可以的,但不知道YAFFS2为什么不行,非常感谢
...全文
446 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
SZ阿辉 2013-03-11
  • 打赏
  • 举报
回复
引用 12 楼 wjn1989410 的回复:
把镜像烧nand 上从nand起,你不会是用tftp直接运行吗 我猜的
我是烧到FALSH里面的从nand起来的
wjn1989410 2013-03-08
  • 打赏
  • 举报
回复
把镜像烧nand 上从nand起,你不会是用tftp直接运行吗 我猜的
SZ阿辉 2013-02-25
  • 打赏
  • 举报
回复
引用 8 楼 huangguifeng01 的回复:
有个nand ECC校验你在内核改为软件校验
在哪个文件里改的,非常感谢
sandy_liu530 2013-02-25
  • 打赏
  • 举报
回复
修改环境变量加个 noinitrd init=/linuxrc试下,
wesley 2013-02-25
  • 打赏
  • 举报
回复
内核源码 make menuconfig可以修改
huangguifeng01 2013-02-24
  • 打赏
  • 举报
回复
有个nand ECC校验你在内核改为软件校验
SZ阿辉 2013-02-22
  • 打赏
  • 举报
回复
引用 6 楼 huangguifeng01 的回复:
你先用 NFS挂载下 文件系统可以用吗?在查其他问题
我这个不是开发板,目前还不支持网络
huangguifeng01 2013-02-21
  • 打赏
  • 举报
回复
你先用 NFS挂载下 文件系统可以用吗?在查其他问题
daviddb7 2013-02-01
  • 打赏
  • 举报
回复
没有找到init,两种可能,init没做进去,要么就是做进去了路径不对,需要用init=xxx的方式把init的位置告诉kernel
SZ阿辉 2013-02-01
  • 打赏
  • 举报
回复
引用 4 楼 daviddb7 的回复:
没有找到init,两种可能,init没做进去,要么就是做进去了路径不对,需要用init=xxx的方式把init的位置告诉kernel
我换成JFFS2都可以的 应该是镜像不对,但不知道怎么不对
Xplain 2013-01-28
  • 打赏
  • 举报
回复
参考<嵌入式linux应用开发完全手册>--15.5-支持烧写yaffs文件系统映象,283页,找一下支持烧写yaffs的uboot一起看一下。
SZ阿辉 2013-01-28
  • 打赏
  • 举报
回复
引用 1 楼 Xplain 的回复:
[ 2.820922] Kernel panic - not syncing: No init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance. 好像是uboot传给内核的参数不对
这个参数没问题的,我估计是镜像有问题,兄弟你能不能把你的YAFFS2移植情况说下啊 谢谢
Xplain 2013-01-26
  • 打赏
  • 举报
回复
[ 2.820922] Kernel panic - not syncing: No init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance. 好像是uboot传给内核的参数不对

21,600

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧