How to create a Master NAND image

Hi All,

What is the procedure for creating a NAND image that can be used on
Hardware NAND writer?

I have a board with NAND Flash having YAFFS on one partition. I would
like to create an image of this NAND and use it on the Hardware NAND
programmer for programming other NAND chips. I tried nanddump form mtd-
util to get the image. But I believe, if the target NAND has any bad
block, we can not use this image for programming. Can anybody tell me
how can I do this.

Thanks in advance,
Raghav

Have you tried dumping the NAND using “dd”. It can ignore errors and work around bad blocks (e.g. dd if=/dev/mtdblock2 of=image.bin conv=noerror)

I think this is same as nanddump from mtd utils. The NAND Flash on my
board has couple of partitions, YAFFS file system on one of the
partiton. I just wonder if I can take an image on entire NAND and use
it for programming other NAND chips. I am able to create the entire
nand image using nanddump, but it is not working if I use it to
program other NAND since the tagret NAND has some bad blocks. (Though
I use skip bad block method while programming).

Is there any modification we need to do for the created image or any
suggestion on this?

Basically I want to knows how any body program the NAND for production
system. I believe, programming single board at a time is not a
solution for this as it takes good amount of time. Any information on
this is very useful.

Thanks,
Raghav

Hi Raghav,

Basically I want to knows how any body program the NAND for
production system. I believe, programming single board at
a time is not a solution for this as it takes good amount
of time. Any information on this is very useful.

Sorry for this delayed answer. I totally agree, that flashing NAND devices
in productions lines isn’t as simple as using good old NOR devices (mainly
because of the possibility of NAND devices having bad blocks and the
different approaches to handle this :slight_smile: However NAND have price/size
benefits compared to NOR, thereby normally winning the battle, although
adding extra SW effort.

I have helped several of the Worlds large manufactures doing NAND flashing
in their production lines and as the general rule of thumb single board
flashing in the production line is the preferred approach (believe it or not
:-). The way it’s usually done is by having special Flashing Stations
capable of flashing i.e. 16 or 32 devices (or even more) in parallel,
thereby not slowing down the general phase of the production line.

Some vendors prefer to do the flashing while the boards are still in PCB
panels, where as others prefer to do the main flashing operation after the
final assembly.

I hope this answered you question? In case not, or in case you would need
further help/have further questions, please don’t hesitate to ask again and
I will try to elaborate a bit more on some of the details.

Best regards – Good luck
  Søren