新路程------hi3516a flashcp 后重启失败

来源:互联网 发布:淘宝客定向计划怎么写 编辑:程序博客网 时间:2024/05/21 06:37

由于bsp层需要提供给上层应用更新img的接口,所以必须把flasherase和flashcp这两个函数包含进来,参考sdk里的代码自己把功能加入后,发现有一定几率更新完成后重启失败

错误log如下

Erasing 64 Kibyte @ 17f0000 -- 100 % complete jffs2: notice: (1404) jffs2_get_in
ode_nodes: Node header CRC failed at 0x9dfc8c. {42d9,5a01,5a0142d9,5a0142d9}
jffs2: Node totlen on flash (0x5a0142d9) != totlen from node ref (0x00000054)
jffs2: warning: (1404) jffs2_do_read_inode_internal: no data nodes found for ino
 #576
jffs2: iget() failed for ino #576
/bin/sh: reboot: Input/output error

而且这个时候串口会失效,无法输入

追溯到内核源码fs/jffs2目录下的各个文件,由于是内核源文件,所以没有去改动,只是这个偶发的bug不知道为何,而且其实更新文件都已经写入flash中,只要断电重启就生效了。

后来反复验证,是因为我前一文章里修改了fstab,所以重启失败