[U-Boot-Users] [PATCH] Write YAFFS filesystem images to NAND

Frank Mandarino fmandarino at endrelia.com
Thu Sep 7 22:07:04 CEST 2006


Hi Blair,

Thanks for the response, but I'm not sure what you are getting at.

I am aware of the yaffs1 compatibility mode, and I think I am running
the yaffs2 code in that mode.  At least I only installed the yaffs2 code
into my Linux kernel.

But this has nothing to do with U-Boot's ability to write a yaffs
filesystem image to NAND flash.

In yaffs1 compatibility mode, I believe the yaffs2 code assumes that the
OOB is formatted as it is in a yaffs1 filesystem, so I am providing a
way to write the older yaffs1 OOB format, or the newer yaffs2 OOB format.

Regards,
../fam

Blair Barnett wrote:
> Hi Frank,
> 
> You can run yaffs2 in yaffs1 compatibility mode. 
> Check the yaffs2 source for the correct configuration options.
> 
> -blair
> 
> On Thu, 2006-09-07 at 11:46, Frank Mandarino wrote:
>> Hi,
>>
>> The attached patch for common/cmd_nand.c provides the ability to write
>> YAFFS filesystem images to NAND flash memory, using the newer MTD-based
>> nand code.
>>
>> The patch extends the nand write command to parse a ".yaffs1" suffix for
>> yaffs1 filesystems, or a ".yaffs" or ".yaffs2" suffix for yaffs2
>> filesystems.
>>
>> Yaffs1 filesystems support 512-byte page, 16-byte oob NAND chips, while
>> yaffs2 filesystems support 2048-byte page, 64-byte oob NAND chips.
>>
>> Yaffs1 filesystem images can be generated using the mkyaffsimage utility
>> in the yaffs2/utils directory.
>>
>> Yaffs2 filesystem images can be generated using the mkyaffs2image
>> utility in the yaffs2/utils directory, after applying Sergey Kubushyn's
>> patch.  See
>> http://aleph1.co.uk/lurker/message/20060211.004601.77b55bf3.en.html.
>>
>> So, for example, to write a yaffs1 filesystem image of length 0x526320
>> from address 0x20000000 in ram to offset 0x100000 in flash, run the command:
>>
>>    nand write.yaffs1 20000000 100000 526320
>>
>> The area to be written must be erased before writing the filesystem.
>>
>> I have tested this code with yaffs1 filesystems, and, in fact, I am
>> finally able to run Linux with rootfstype=yaffs.  I am unable to test
>> with yaffs2 filesystems because I don't have access to a system using
>> 2048+64 NAND chips.
>>
>> Regards,
>> ../fam
> 
> 
> -------------------------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

-- 
Frank Mandarino                                fmandarino(a)endrelia.com
Endrelia Technologies Inc.
Toronto, Ontario, Canada





More information about the U-Boot mailing list