打印
[i.MX]

mx28: jffs2 文件系统异常

[复制链接]
4356|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
freelike|  楼主 | 2015-12-15 15:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
板子上配备的是winbond的nor flash 芯片, 内核启动挂载jffs2系统时出现故障,
mxs-rtc mxs-rtc.0: setting system clock to 1970-01-01 00:00:34 UTC (34)
VFS: Mounted root (jffs2 filesystem) on device 31:1.
Freeing init memory: 176K
JFFS2 notice: (999) read_dnode: node CRC failed on dnode at 0x1be007c: read 0xb08d1054, calculated 0x8b624504
JFFS2 notice: (1) read_dnode: node CRC failed on dnode at 0x1b8000c: read 0xb08d1054, calculated 0x8b624504
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #2
Returned error for crccheck of ino #2. Expect badness...
JFFS2 notice: (999) jffs2_get_inode_nodes: Node header CRC failed at 0x1be01ec. {5e78,975c,e5148c7f,d9dfc719}
Node totlen on flash (0xb91b6f6d) != totlen from node ref (0x0000004c)
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #4
Returned error for crccheck of ino #4. Expect badness...
JFFS2 notice: (999) jffs2_get_inode_nodes: Node header CRC failed at 0x1be02b4. {5e78,5794,c8e353ef,cbaf9d11}
Node totlen on flash (0x55546c69) != totlen from node ref (0x0000004c)
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #5
Returned error for crccheck of ino #5. Expect badness...
JFFS2 notice: (1) read_dnode: node CRC failed on dnode at 0x17be924: read 0x3e803e8, calculated 0x9920efca
JFFS2 notice: (999) jffs2_get_inode_nodes: Node header CRC failed at 0x1be0448. {5e78,d62c,dd943879,5b7007ff}
Node totlen on flash (0xebd63f87) != totlen from node ref (0x0000004c)
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #7
Returned error for crccheck of ino #7. Expect badness...
Data CRC d8358eb0 != calculated CRC 0e70dd3e for node at 017591a8
JFFS2 notice: (999) jffs2_get_inode_nodes: Node header CRC failed at 0x1be0510. {5e78,975c,d5956c0f,fbcfc015}
Node totlen on flash (0x5754684f) != totlen from node ref (0x0000004c)
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #8
Returned error for crccheck of ino #8. Expect badness...
JFFS2 notice: (999) jffs2_get_inode_nodes: Node header CRC failed at 0x1be05d4. {5e78,d3ac,415b4c21,a3f1c71c}
Node totlen on flash (0x695c686d) != totlen from node ref (0x0000004c)
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #9
Returned error for crccheck of ino #9. Expect badness...
JFFS2 notice: (999) jffs2_get_inode_nodes: Node header CRC failed at 0x1be0698. {5e78,976c,d51c6c6b,eccfc715}
Node totlen on flash (0xd51c6c6b) != totlen from node ref (0x0000004c)
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #10
Returned error for crccheck of ino #10. Expect badness...
JFFS2 notice: (999) jffs2_get_inode_nodes: Node header CRC failed at 0x1be0760. {5e78,578c,65136c7d,d7af7f18}
Node totlen on flash (0xe514707d) != totlen from node ref (0x0000004c)
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #11
Returned error for crccheck of ino #11. Expect badness...
JFFS2 notice: (999) jffs2_get_inode_nodes: Node header CRC failed at 0x1be0828. {5e78,5784,e7146c5b,59733e15}
Node totlen on flash (0x30820ec1) != totlen from node ref (0x0000004c)
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #12
Returned error for crccheck of ino #12. Expect badness...
JFFS2 notice: (999) jffs2_get_inode_nodes: Node header CRC failed at 0x1be08f0. {5e78,57a4,67556c7d,47ce7f19}
Node totlen on flash (0xff786f62) != totlen from node ref (0x0000004c)
JFFS2 warning: (999) jffs2_do_read_inode_internal: no data nodes found for ino #13
...........

但是能够启动进入操作系统,进入完成后执行ls,cd等基本命令也会提示类似错误,求解

JFFS2 notice: (1088) read_dnode: node CRC failed on dnode at 0x1b30474: read 0x3afc5558, calculated 0xb169a063
JFFS2 warning: (1088) jffs2_do_read_inode_internal: no data nodes found for ino #154
iget() failed for ino #154
(none) login: root
login[1088]: root login on 'ttyAM0'
JFFS2 notice: (1088) read_dnode: node CRC failed on dnode at 0x1b4f42c: read 0x000000, calculated 0x28966911
Node totlen on flash (0x00000044) != totlen from node ref (0x000001b4)
JFFS2 warning: (1088) jffs2_do_read_inode_internal: Truncating ino #150 to 677 bytes failed because it only had 0 bytes to start with!
~ #
~ #
~ #
~ # ls
JFFS2 notice: (1088) read_dnode: node CRC failed on dnode at 0x1b50bc8: read 0x1b62df47, calculated 0x3809b5af
JFFS2 notice: (1022) jffs2_get_inode_nodes: Node header CRC failed at 0x16ecd18. {008d,0000,00000000,00000007}
JFFS2 warning: (1088) jffs2_do_read_inode_internal: no data nodes found for ino #90
iget() failed for ino #90
-sh: ls: Input/output error
~ # JFFS2 warning: (1022) jffs2_do_read_inode_internal: no data nodes found for ino #374
Returned error for crccheck of ino #374. Expect badness...

相关帖子

沙发
freelike|  楼主 | 2015-12-15 15:43 | 只看该作者
烧写过程一切正常, 我的ucl.xml如下:

<LIST name="SPI-NOR (kernel and rootfs)" desc="zyx test">
<CMD type="boot" body="Recovery" file="updater.sb" if="HabDisable">Booting update firmware.</CMD>
<CMD type="boot" body="Recovery" file="updater_ivt.sb" if="HabEnable">Booting update firmware.</CMD>
<CMD type="find" body="Updater" timeout="180"/>
<CMD type="push" body="mknod class/mtd,mtd0,/dev/mtd0"/>
<CMD type="push" body="mknod class/mtd,mtd1,/dev/mtd1"/>
<CMD type="push" body="mknod block,mtdblock1,/dev/mtdblock1,block"/>
<CMD type="push" body="$ flash_eraseall /dev/mtd0">Erasing kernel partition</CMD>
<CMD type="push" body="send" file="files/imx28_ivt_linux.sb">Sending kernel</CMD>
<CMD type="push" body="$ dd if=$FILE of=/dev/mtd0">Programming kernel</CMD>
<CMD type="push" body="$ flash_eraseall -j /dev/mtd1">Erasing rootfs partition</CMD>
<CMD type="push" body="$ mkdir -p /mnt/mtdblock1"/>
<CMD type="push" body="$ mount -t jffs2 /dev/mtdblock1 /mnt/mtdblock1"/>
<CMD type="push" body="pipe tar -jxv -C /mnt/mtdblock1" file="files/rootfs.tar.bz2">Sending and writting rootfs</CMD>
<CMD type="push" body="frf">Finishing rootfs write</CMD>
<CMD type="push" body="$ umount /mnt/mtdblock1">Unmounting rootfs partition</CMD>
<CMD type="push" body="$ echo Update Complete!">Done</CMD>
</LIST>

使用特权

评论回复
板凳
freelike|  楼主 | 2015-12-17 11:38 | 只看该作者
????????????????????????

使用特权

评论回复
地板
NXP_TICS_Rita| | 2015-12-22 17:34 | 只看该作者
楼主你好,请问烧写过程有没有出现什么错误?

使用特权

评论回复
5
NXP_TICS_Rita| | 2015-12-22 17:34 | 只看该作者
还有你这里是如何烧写的呢?

使用特权

评论回复
6
mini1986| | 2015-12-28 09:08 | 只看该作者
换ubi吧,现在官方的都搞ubi了......

使用特权

评论回复
7
freelike|  楼主 | 2015-12-30 15:29 | 只看该作者
NXP_TICS_Rita 发表于 2015-12-22 17:34
还有你这里是如何烧写的呢?

烧写过程一切正常,使用的MFGTool连接otg线直接烧写的。

使用特权

评论回复
8
freelike|  楼主 | 2015-12-30 15:40 | 只看该作者
mini1986 发表于 2015-12-28 09:08
换ubi吧,现在官方的都搞ubi了......

开始的时候尝试使用UBI,因为是用的Nor Flash,每次都会core到DMA上,NXP Community也提到了这个bug,但没有见到任何Patch。

我没有权限直接发表链接,想看的话,何以在下方地址前加上https:
//community.freescale.com/docs/DOC-93632

"In this example, we only used the JFFS2 file system. To support the UBIFS, there is a known issue, that the UBIFS will use vmalloc to alloc memory, and if SPI driver used the DMA, kernel will halt with error "kernel BUG at arch/arm/mm/dma-mapping.c:409!"."

使用特权

评论回复
9
freelike|  楼主 | 2015-12-30 15:45 | 只看该作者
另外挂载initramfs,然后测试nor flash的读写和擦除,一切都正常!

使用特权

评论回复
10
freelike|  楼主 | 2015-12-31 10:15 | 只看该作者
2.6.35内核版本使用nor flash和ubi有问题,官方为啥不提供patch,或者更高版本的kernel支持?

使用特权

评论回复
11
NXP_TICS_Rita| | 2016-1-5 17:05 | 只看该作者
freelike 发表于 2015-12-31 10:15
2.6.35内核版本使用nor flash和ubi有问题,官方为啥不提供patch,或者更高版本的kernel支持? ...

这个我们也不清楚,目前新版本BSP的更新就是i.mx6系列的,别的系列的都没有再更新了。

使用特权

评论回复
12
freelike|  楼主 | 2016-1-13 10:38 | 只看该作者
临时规避了下,控制器使用PIO模式,文件系统换成ubi的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

29

帖子

1

粉丝