Re: [Yaffs] Re: YAFFS fs images not working the way I expect

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Charles Manning
Date:  
To: David Wuertele, yaffs
Subject: Re: [Yaffs] Re: YAFFS fs images not working the way I expect
On Saturday 23 October 2004 07:35, David Wuertele wrote:
> Thomas> OOB info is part of the filesystem.
>
> If it is, the designer made a boo-boo! It isn't called "out-of-band"
> for nothing!


YAFFS uses the "OOB area" to store tags. I did this on purpose as a way to
improved the performance etc of YAFFS. I can asure you this was no booboo.

Hundreds of thousands of devices have been shipped with YAFFS, so I can
assure you it's working.

It isn't really "out of band". That's really a pretty dopey name. All chip
vendors call it the "spare area". All block drivers use this area to store
ECC and other info such as logical block number etc. YAFFS tages this one
step further and uses the spare area to store file tags data.


>
> Thomas> ECC is part of error correction in the NAND layer. How should
> Thomas> this work without?
>
> 1. ECC is optional in the NAND layer
>
> 2.  ECC should be a component of the NAND driver, not of the
>     filesystem.

>
> Thomas> nandwrite from MTD/utils programs images with OOB info, ECC
> Thomas> and is bad block aware.
>
> But I need to pre-load my flash with a programmer. This is for the
> purposes of mass production, and there's no way to do it on a machine
> already running linux. How am I going to get my YAFFS partition onto
> the flash?


I'm having a problem understanding what you can't do.

Under Linux you can use mkyaffs to load a YAFFS image into a NAND partition.

If you're using a device programmer then have a look at the basic algorithm
in mkyaffs:

Erase the device/partition, then write the info into the page and spare
areas, skipping over bad blocks.

-- CHarles