Re: [Yaffs] Problems with mkyaffs2image.c v1.5

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Charles Manning
Date:  
To: yaffs
Subject: Re: [Yaffs] Problems with mkyaffs2image.c v1.5

We should put this in an FAQ...


On Tuesday 20 April 2010 11:43:52 Guy Lancaster wrote:
> I built a file system image using mkyaffs2image v1.5 but but won't


mkyaffsimage (the yaffs1 version) worked reasonably well because yaffs1
tends/tended to be used with a single straight-forward flash format.

With yaffs2, the actual binary layout is defered to the flash driver (mtd in
the case of Linux). This varies from device to device.

As a result, the current mkyaffs2image is really a bit of a mess and needs to
be whittled and sandpapered to fit with your flash.

>
> load. Without modifications I get numerous errors of the form:
> > yaffs tragedy: Bad object type, 2 != 3, for object 1059 at chunk 8242
> > during scan
>
> I'm using a Linux 2.6.33.2 kernel with what I believe is the latest
> YAFFS source installed (specifically yaffs_fs.c,v 1.102) for a Samsung
> S3C2440 Arm target with 128MB NAND Flash (Samsung K9F1G08X0A).
>
> When I compile mkyaffs2image I get numerous warnings including a set
>
> of the form:
> > mkyaffs2image.c:249: warning: array subscript is above array bounds
>
> When I enable a number of the trace flags I get:
> > yaffs_ScanBackwards starts intstartblk 1 intendblk 1005...
> > block is bad seq 0 state 3
> > Block scanning block 1 state 3 seq 0
> > Block empty
> > block is bad seq 0 state 3
>
> ...
>
> I'm wondering if the problem is that the mkyaffs2image.c needs to be
> configured for the MTD layout but I don't know how to find out what
> that layout is.


Yes, that is the problem. The easiest is to just look at the driver and see
what flash layout it provides.

-- Charles