我面临着类似的问题:内核无法识别u-boot标记的nand坏块
我正在使用包含 s3c2440 ARM 处理器的友好ARM micro2440 板。 u-Boot发现了一些坏块,并将它们的位置写入了坏块表中,但是当我启动内核时,它似乎无法找到那些坏块,然后崩溃。
我想尝试一下该用户之前找到的模糊解决方案,但我不知道该怎么做:找出 BBT 偏移量(也许 s3c2440 的 BBT 偏移量也是一个不寻常的值,而不是 uboot 使用的值)。另外,如果是这样的话,我该如何改变u-Boot的BBT偏移量?
答案1
我对你的问题没有确切的答案,但我知道 openmoko 项目在 s2410 上有坏块支持。
答案2
结果发现,问题并不在于前面所说的 BBT 偏移量。问题的根源是squashfs的使用,如以下链接所述:
http://elinux.org/Support_read-only_block_filesystems_on_MTD_flash
解决方案是使用另一个文件系统或使用 UBI 来检测坏块。