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