
Hi Stefan,
Stefan Roese wrote:
Perhaps somebody else can jump in here and test the current linux mtd driver behavior on a device with bad blocks. Thanks.
I only can provide the output based on the 2.6.12.5 kernel:
NAND device: Manufacturer ID: 0xec, Chip ID: 0xd3 (Samsung NAND 1GiB 3,3V 8-bit) Scanning device for bad blocks Bad eraseblock 4861 at 0x25fa0000 Bad eraseblock 5098 at 0x27d40000 Bad eraseblock 5163 at 0x28560000 Bad eraseblock 6252 at 0x30d80000 Bad eraseblock 7952 at 0x3e200000 Creating 3 MTD partitions on "NAND 1GiB 3,3V 8-bit": 0x00000000-0x00040000 : "u-boot" 0x00040000-0x00300000 : "kernel" 0x00300000-0x40000000 : "rootfs"
/ # mtd_debug erase /dev/mtd/2 0x22f00000 0x3000000 nand_erase: attempt to erase a bad block at page 0x0004bf40 MEMERASE: Input/output error
I think, bad blocks should not prevent U-Boot from erasing a partition, which is needed to write an OS there, which needs to be booted.
Best regards Joachim