[Yaffs] Mapping of yaffs_ExtendedTags to Spare area in large page

Charles Manning manningc2 at actrix.gen.nz
Mon Nov 21 20:02:18 GMT 2005


Hi Srikanth

On Tuesday 22 November 2005 02:21, Srikanth wrote:
> Hello,
>
> As per my understanding a large page (2K bytes {x8 device}) will be viewed
> as 4 small pages (512 bytes {x8 device}).
> The spare area will also be dived in to 4 equal spaces.
>
> According to the spare area assignment standard for large page(2k).
>    1   2    3     4     5     6    7    8    9     10    11     12     13
> 14  15  16
>
> | BI |RES |LSN0 |LSN1 |LSN2 |RES |WC0 |WC1 |ECC0 |ECC1 |ECC2 |S-ECC0
> | |S-ECC1 RES|RES|RES|
>
> the above spare area is for 512 bytes of data for the large page(2k) the
> spare area size will be
> 4*16 = 64k.
64 bytes

>
> I was not able to map structure yaffs_ExtendedTags to the spare area.
> I am trying to run (dtest)the code in VC++ environment. I get the size of
> the "yaffs_ExtendedTags" as 72 bytes.
> Can you please help me.
>

The yaffs_ExtendedTags sturcture is not stored directly onto flash. Some of 
the fields are only valid in certain circumstances. Attempting to store and 
retrieve ExtendedTags directly will probably break (apart from size).

The actual data gets packed into a smaller structure called yaffs_PackedTags2 
for storage on NAND.  The code to do this is in yaffs_packedtags2.[ch]


-- Charles



More information about the yaffs mailing list