mini2440 tq2440 vivi uboot 去除nandflash坏块
来源:互联网 发布:家居设计软件哪个好 编辑:程序博客网 时间:2024/06/10 01:34
我们在学习嵌入式的工程中,最多的方式莫过于买一家公司的开发板。
跟着它们的教程以及网上的相关博客进行实验学习。
随着烧写次数的增加,我们开发板的nand flash中就会出现或多或少的坏块,也就是bad block。
坏块少对于你的系统运行没有任何影响,顶多是影响心情罢了。但是如果坏块太多的话,就可能影响你
根文件系统的正常挂载启动。
先来说说bad block是怎么来的吧。
其实跟硬盘一样,nand flash 也会存在坏的扇区,需要纠错码(EEC)来维持数据。nand器件
中的坏块是随机分布的,几乎每个nand都会存在坏块。以前也曾经有过消除坏块的努力,但是发现
成品率太低,代价太高。根本不划算。因此,nand器件需要对介质进行扫描以发现坏块,并标记为
不可用。也就是我们所看到的 bad block
软件通过扫描块可以确定区块的好坏。但是有些时候,nand 器件产生的坏块并不是真的物理器件上的损坏。
仅仅是由于电源电压不稳,外界电磁干扰,连线接触不好,多次烧写等等的 原因,导致nand 器件中的某些块的数据
发生了改变,那么该块就被标记为了坏块。
消除这样的坏块也是有一定方法的。
在uboot 中
存在这样一个命令
nand scrub的命令,强制性的把坏块标志去除
在vivi
中需要重新分区
FriendlyARM> part show
mtdpart info. (4 partitions)
name offset size flag
------------------------------------------------
vivi : 0x00000000 0x00040000 0 256k
param : 0x00020000 0x00020000 0 128k
kernel : 0x00060000 0x00500000 0 4M+640K
root : 0x00560000 0x3fa80000 0 59M
后面的大小是我自己算出来的,让大家看的直观一点。
计算方法,就是将上面的数据转换成十进制的然后除以1024
得到的就是就是K,在除以1024得到的就是M
接着执行重新分区命令
bon part 0 384k 4736k 59M
这样就可以把那些假的坏块去掉了。
- mini2440 tq2440 vivi uboot 去除nandflash坏块
- AM3352 uboot中对NandFlash坏块的处理
- nandflash坏块管理机制
- nandflash坏块管理机制
- NandFlash 坏块
- NANDFlash坏块管理研究
- nanddump读出nandflash包括坏块
- 关于NandFlash坏块的一些理解(基于K9F2G08)
- 对于nandflash坏块的一些处理办法
- 深层解决cramfs文件系统不支持nandflash坏块的解决办法
- uboot下移植yaffs及坏块备注
- VIVI+UBOOT ( ^_^ )
- uboot移植准备资料之mini2440裸机实验——存储控制器、NANDFLASH
- MTD坏块管理(二)-内核获取Nandflash的参数过程
- MTD坏块管理(二)-内核获取Nandflash的参数过程
- mini2440 nandflash裸机驱动
- mini2440-nandflash基本操作
- mini2440 nandflash驱动移植
- python网络编程
- wince下实现GPRS上网,程序控制拨号 .
- 解决svn的working copy locked并且cleanup恢复不能的情况
- vc重命名类名
- zhcon解决Ubuntu命令行模式乱码问题
- mini2440 tq2440 vivi uboot 去除nandflash坏块
- Java Math.round() ---学习笔记
- jdk5 CountDownLatch
- MSSQL Server 2005 Express 配置
- POJ 1679 The Unique MST 次小生成树
- c++ 成员函数作为函数指针参数传入
- 关于gcc、glibc和binutils模块之间的关系,以及在现有系统上如何升级的总结
- 暂无
- 关于gcc中tree和rtl的定义