Hello,
I use a Linux 2.6.9 on a 85xx custom board with a NAND flash.
This flash has some bad blocks.
NAND device: Manufacturer ID: 0xec,
Chip ID: 0xf1 (Samsung NAND 128MiB 3,3V 8-bit)
Scanning device for bad blocks
Bad eraseblock 8 at 0x00100000
Bad eraseblock 430 at 0x035c0000
...
Creating 1 MTD partitions on "NAND 128MiB 3,3V 8-bit":
0x00000000-0x08000000 : "flash partition 1".
I have selected in the kernel :
1) the MTD character and block
supports for NAND,
2) the CRAMFS and JFFS2 supports for
NAND.
I can erase the flash but receive IO
errors for each bad blocks (that seems right).
I can mount an empty JFFS2 partition
on the NAND and untar some directories and files in it.
I would like to generate some JFFS2
images and program them in the flash with
a character
command like "cat img >
/dev/mtd/0". If I dont encounter a
bad block, it runs right else the
command fails.
This is a little bit annoying. So my question is simple :
Is there a MTD character driver
which can detect and ignore the bad blocks in a NAND flash ?