Charles
I have added yaffs image writing to bootldr in a rudimentary fashion.
After noticing three little gotchas:
1) yaffs_Scan seems to start from the second block not the first (page 32
not 0).
2) mkyaffsimage does not initialise either blockStatus or pageStatus.
3) pageStatus is declared as unused in yaffs_guts.h but yaffs_Scan discards
it if less than 6 bits are set.
... it seemed superficially to work in that mount produced more than
lost+found with the expected names.
However, mounting it does fails in an interesting way rather reminiscent of
the copying symlinks bug.
An ls of the mounted directory lists the expected names.
An ls -al lists the same names but as "no such file or directory" other than
lost+found.
I am using the current cvs version of yaffs but with the previous yaffs_fs.c
compiled into the kernel.
Clearing the nand, booting the same kernel, mounting the yaffs directory and
copying the sames files (via NFS/usbf) to it and all seems well.
To write the fs image from bootldr, I just write sequential 512+16 bute
chunks into nand starting at page 32 and zero the 4th and 5th bytes in the
spare as I go. Is there anything else I should be doing?
I have added bad page reporting and none is found now I have intialised the
blockStatus bytes.
Nick Bane
---------------------------------------------------------------------------------------
This mailing list is hosted by Toby Churchill open software (
www.toby-churchill.org).
If mailing list membership is no longer wanted you can remove yourself from the list by
sending an email to
yaffs-request@toby-churchill.org with the text "unsubscribe"
(without the quotes) as the subject.