如何找出坏块表偏移量以及如何在u-Boot中更改它

如何找出坏块表偏移量以及如何在u-Boot中更改它

我面临着类似的问题:内核无法识别u-boot标记的nand坏块

我正在使用包含 s3c2440 ARM 处理器的友好ARM micro2440 板。 u-Boot发现了一些坏块,并将它们的位置写入了坏块表中,但是当我启动内核时,它似乎无法找到那些坏块,然后崩溃。

我想尝试一下该用户之前找到的模糊解决方案,但我不知道该怎么做:找出 BBT 偏移量(也许 s3c2440 的 BBT 偏移量也是一个不寻常的值,而不是 uboot 使用的值)。另外,如果是这样的话,我该如何改变u-Boot的BBT偏移量?

答案1

我对你的问题没有确切的答案,但我知道 openmoko 项目在 s2410 上有坏块支持。

http://wiki.openmoko.org/wiki/NAND_bad_blocks

答案2

结果发现,问题并不在于前面所说的 BBT 偏移量。问题的根源是squashfs的使用,如以下链接所述:

http://elinux.org/Support_read-only_block_filesystems_on_MTD_flash

解决方案是使用另一个文件系统或使用 UBI 来检测坏块。

相关内容