首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何为NAND闪存创建生产镜像?

如何为NAND闪存创建生产镜像?
EN

Stack Overflow用户
提问于 2013-07-31 02:40:53
回答 1查看 2.1K关注 0票数 0

我正在尝试创建一个生产图像,可以在工厂与闪存程序员闪光。我使用的是Micron 51MB nand闪存。

到目前为止,我发现我所采取的方法存在问题。

1)启动所有分区的开发板

i.e

代码语言:javascript
运行
复制
/dev/mtd0--> xloader

/dev/mtd1 -> uboot

/dev->mtd2 -> kernel

/dev/mtd3> root file system

/dev/mtd4 -> user application

now, I used nanddump -nof xloader.bin  /dev/mtd0

nanddump -nof uboot.bin  /dev/mtd1

nanddump -nof kernel.bin  /dev/mtd2

nanddump -nof rootfs.bin  /dev/mtd3

nanddump -nof apps.bin  /dev/mtd4

cat /dev/mtd0 /dev/mtd1  /dev/mtd2 /dev/mtd3 /dev/mtd4 > golden_flash

当我在一个空的闪存上闪存这个golden_flash时,我首先从内存运行u-boot,然后

代码语言:javascript
运行
复制
tftp golden_flash

nand erase all

nand write 0x82000000 golden_flash

那是行不通的。

在启动时,我会得到

代码语言:javascript
运行
复制
mtd->read(0x1fc38 bytes from 0x60a03c8) returned ECC error

mtd->read(0xa7b0 bytes from 0x60b5850) returned ECC error

Empty flash at 0x060b584c ends at 0x060b6000

jffs2_scan_eraseblock(): Node at 0x060b618c {0x1985, 0xe022, 0x000000a7) has invalid CRC 0x5c3d15cb (calculated 0x5b9110fd)

jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x060b6190: 0x00a7 instead

jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x060b6194: 0x15cb instead

jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x060b6198: 0x2e5b instead

mtd->read(0x59c bytes from 0x13eba64) returned ECC error

mtd->read(0x44 bytes from 0x13ec800) returned ECC error

mtd->read(0x7bc bytes from 0x13ec844) returned ECC error

mtd->read(0x558 bytes from 0x13ebaa8) returned ECC error

mtd->read(0x44 bytes from 0x13ec844) returned ECC error

mtd->read(0x514 bytes from 0x13ebaec) returned ECC error

mtd->read(0x44 bytes from 0x13ec888) returned ECC error

我刷新了u-boot中的镜像

有没有更好的方法来创建生产映像或者为NAND闪存创建生产映像的正确方法?

EN

回答 1

Stack Overflow用户

发布于 2013-08-01 02:43:12

正如之前的评论者所说,你会遇到坏块的问题,因为坏块的数量和位置在设备之间是不一致的。但是,如果您跳过转储上的坏块,mtd0-mtd3中的任何坏块都将导致分区边界不匹配。nand写入命令可能不利用分区布局的知识,因此制造中的设备的前四个分区中的坏块也将导致未对准。我认为最好的选择是分别刷新这五个分区。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17954867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档