Re: [Yaffs] Problem with Yaffs on Routerboard RB112 and kern…

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Wookey
Date:  
To: David Goodenough
CC: yaffs
Subject: Re: [Yaffs] Problem with Yaffs on Routerboard RB112 and kernel 2.6.19
On 2007-05-08 13:10 +0100, David Goodenough wrote:
> On Monday 07 May 2007, David Goodenough wrote:
> <snip/>
> > I also noticed that I was using a version of Yaffs which was not quite
> > up to date, so downloaded the latest version and in there I saw that
> > there were two versions of one file which looked relevant. The file
> > in question is yaffs_mtdif2.c, one copy is in the mail fs/yaffs2 directory
> > and the other is in a patch directory. Also in the patch directory is
> > a README which contains the following enigmatic paragraph:-
> >
> > "Right now there is only one patched file, yaffs_mtdif2.c. This has been
> > patched with a tweaked version of "Sergey's patch" and typically makes a
> > stock mtd work properly."
> >
> > Having now real history with Yaffs I do not know what Sergey's patch is,
> > and whether this version is what I need. Can anyone suggest whether this
> > is relevant to my situation? If not, can anyone suggest what I should
> > do in order to achieve my aim of having something that the boot layer can
> > recognise.


The short answer is 'it's complicated - various things have changed at
varying times'.

current yaffs2 cvs does indeed work with current kernels, and older
kernels. However the on-flash format has (probably - it depends on
exactly what MTD does for chips IIRC) changed. The main thing that has
moved is the bad-block markers (which is why you get everything marked
as bad).

Sergey's patch was a way to get yaffs working with MTD changes
introduced around kernel 2.6.16 IIRC. But as you have discovered
things have moved on around it, and whilst it may provide a helpful
pointer to where to fiddle it isn't actually much practical use
anymore, and the fundamentals have been incorporated into yaffs
proper. It probably isn't useful leaving it in cvs any longer.

You can use yaffs without MTD if you write some chip acces functions
directly. Getting new kernels to work with old-format yaffs whilst
using MTD is not trivial, but should be possible. In general it would
be easier to fix the bootloader to match the new state of the world.

Yes this is all a hassle. That's the nature of distributed development.

Now if you do a nand-dump like vitaly says, we can try and give some
more specific advice.

Wookey
--
Principal hats: Balloonz - Toby Churchill - Aleph One - Debian
http://wookware.org/