u-boot和文件系统改写,不能启动

发布于 2022-09-30 18:10:18 字数 1628 浏览 16 评论 0

各位兄弟好,小弟在项目开发中遇到一个很郁闷的问题,自己搞了好久了也没有解决。特来这里请教大家了。
   板子是我们自己画的,cpu用的at91rm9200,norflash用的是ST M29W640DB,文件系统为JFSS2。
   我描述下问题的现象:
   上电无任何输出信息,查看flash数据,发现第一个字节为0x00,正常为0x12
    => md 10000000
    10000000: ea000000 e59ff014 e59ff014 e59ff014    ................

   第一个字节改成12后能启动,但不能进入文件系统,报错:
  jffs2_scan_inode_node(): Data CRC failed on node at 0x005201e4: Read 0x105a34f9,
  calculated 0x61840a61
  jffs2_scan_inode_node(): Data CRC failed on node at 0x00520ad8: Read 0x06e1069c,
  calculated 0x1458655d

  Control: C000717F  Table: 213EC000  DAC: 00000015
  pc : [<00089134>]    lr : [<000bc018>]    Not tainted
  sp : bffffdfc  ip : bffffe78  fp : bffffe74
  r10: 00000004  r9 : fffffffc  r8 : 000ffe9c
  r7 : 001174a8  r6 : 001289c0  r5 : 00000000  r4 : 40001000
  r3 : 00000022  r2 : 00000004  r1 : 000ffe9c  r0 : fffffffc
  Flags: nzCv  IRQs on  FIQs on  Mode USER_32  Segment user
  Control: C000717F  Table: 213EC000  DAC: 00000015

  这里我自己猜想了下可能有以下几个原因:
1.flash本身原因导致第一个字节内容改写。
2.系统中某一个地方的程序对flash内容做了错误的写操作。

我知道这里有很多牛人,希望大家帮我看看,是哪可能出了问题。谢谢了。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

何以畏孤独 2022-10-07 18:10:18

一个一个作比较就好了啊

我不咬妳我踢妳 2022-10-07 18:10:18

jffs2的每个擦除块的起始都是cleanmarker。其开始的4B是0x1985

看你的flash里面的内容,不是jffs2的格式。

启动到内核,然后格式化一下看看。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文