韦东山Linux嵌入式课程社区
直播中

李金云

7年用户 208经验值
私信 关注

毕业班u-boot移植烧写YAFFS文件系统后无法启动

你好:
我按照毕业班视频中的方法进行移植后,可以烧写YAFFS文件系统,但烧写后无法启动系统,提示
VFS: Mounted root (yaffs filesystem).
Freeing init memory: 140K
Warning: unable to open an initial console.
Kernel panic - not syncing: No init found.  Try passing init= option to kernel.

使用nand dump命令 打印出来数据和文件系统文件进行比较,发现好像OOB区是不对的,但是我已经修改了nand_util.c文件
图片是我使用nand dump命令后的输出,附件是我修改后的文件和编译得到的uboot
谢谢!

回帖(5)

程春华

2019-5-14 07:43:54
你先使用我们提供的补丁制作出UBOOT,用它启动,用它来烧写,如果成功:对比你修改的UBOOT源码。
实在抱歉,在家里回贴,没法子帮你看源码
举报

李军

2019-5-14 08:00:20
        if (!need_skip && !(flags & WITH_DROP_FFS) && !(flags & WITH_YAFFS_OOB)) {
                rval = nand_write (nand, offset, length, buffer);
                if (rval == 0)
                        return 0;
添加&& !(flags & WITH_YAFFS_OOB)即可。根据代码关系层层查找可知need_skip 的值为0,nand_write 只执行了一次。只要改掉判断值即可
举报

王洋

2019-5-14 08:16:37
用提供的补丁也是出现上面的错误,对比代码我的改动和补丁是一样的
我用上面网友的方法修改后就成功了,这个是什么原因呢?
举报

张雪

2019-5-14 08:28:05
受到警告
提示: 作者被禁止或删除 内容自动屏蔽
举报

更多回帖

发帖
×
20
完善资料,
赚取积分