bsj2009

bsj2009

1个粉丝

4

问答

0

专栏

0

资料

bsj2009  发布于  2016-07-11 15:24:35
采纳率 0%
4个问答
8424

3516A SPI-NAND FLASH 启动坏块

 
各位好,我的3516a+spi NAND FLAHS,前面1M(8块)存储空间村uboot和环境变量。前4块是uboot.后四块存储环境变量。我发现恰巧有一块板子在后4块的区域有坏块,环境变量是4块一起读写的,所以导致存储环境变量失败。
请问大家是怎么处理类似问题的?
我来回答
回答6个
时间排序
认可量排序

ngswfx

2个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-07-11 17:10:40
认可0
本帖最后由 ngswfx 于 2016-7-11 17:13 编辑

这还不好办嘛,如果只有这一个板子如此,就换一个SPI-NAND芯片。 这个片子最小单元block应该是64K吧

////////如果你想节省这一片,需要修改uboot源码,调整ENV的位置。不建议这么干。如果是自己调试开发用的板子,改改也无妨,很容易改,就在那个超级重要的HI3516A.h头文件里面。

不过你的环境ENV用的空间太大了,严重浪费呀。

///其实uboot里面要是能判断出那个块坏了,其实还有更智能的手法。

//////uboot启动,读取ENV,如果失败,发现坏了一块,尝试下一块。可以尝试4块。
///////保存env也一样,保存ENV到第一块,读取验证,发现不一样,估计是坏块,保存env到下一块。

///////只要流程合适,考虑的细致,可以使ENV支持跳过坏块的。

prada

0个粉丝

2

问答

0

专栏

0

资料

prada 2016-07-11 17:53:40
认可0
是需要做坏块校验

ngswfx

2个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-07-11 18:12:35
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=33739&ptid=11907]prada 发表于 2016-7-11 17:53[/url]
是需要做坏块校验[/quote]

我估计uboot里面应该有这个问题的解决方案才对。

///这个很常见呀。

///////不过说实话,能把env写坏,真不容易,还是检查自己的代码吧,env不应该经常写才对,仅仅修改了大的启动参数才修改一下,别在系统里面去写env变量内的东西,读一下到无妨。ENV连个文件系统都没有,坏块也不会自己跳过。

//要是采用其他的可读写文件系统保存经常读写的内容,内部有跳坏块机制。对用户来说是透明的。

bsj2009

1个粉丝

4

问答

0

专栏

0

资料

bsj2009 2016-07-12 09:42:44
认可0
其实我这个板子是第一次刷机后就有这个坏块。是芯片出厂带的

linux520

0个粉丝

0

问答

0

专栏

0

资料

linux520 2016-07-13 20:06:47
认可0
3516a~用nandwrite 遇到坏块 好像不会跳坏块

lizyshmily

0个粉丝

3

问答

0

专栏

0

资料

lizyshmily 2017-06-29 17:06:21
认可0
楼主,SPI NAND FLASH引导时,硬件如何配置啊。根据手册描述配置为SPI NAND FLASH引导启动,烧写正常,但是无法正常启动;
如果更换为NAND FLASH,调试引导设置,则OK。
请高手指点。
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区