Hi Laurence, Thanks for your e-mail. These are the steps that I've done
to build my root fs: * First at all, I've erased all /dev files of my
root fs source, and I've created files with makedevs utility from a
device_table.txt,that has all devices necesary, again. * Then, I've used
mkyafffs2image tool to create a file that I suppose is the root fs
image. * Finally, I've written this file into Nand Flash with SAM-BA
utility from Atmel. Reset the board and boot the Kernel. Into Yaffs2's
documentation there are three ways to put a yaffs2's image file into a
Nand Flash, I've used the third one. On the other hand I've tried the
following: 1. Boot a kernel on a jffs2 fs and then I've written into
partition 2 (mtdblock2) a yaffs2's image file with mtd-utils (v 1.1.0)
and reboot with root=/dev/mtdblock2. => Doesn't Work (kernel panic). 2.
Boot a kernel on a jffs2 fs and then I mount -t yaffs2 /dev/mtdblock2
/media/hdd, I've copied all directories of / into partition 2
(mtdblock2) and reboot with root=/dev/mtdblock2. => Works fine. 3. I've
written into Nand Flash both file systems, each one into one partition,
and kernel boots on jffs2 partition, I mount -t yaffs2 /dev/mtdblock2
/media/hdd and it only has lost found folder, no more folders, and when
I've tried to make a dir I get this error message: "**>> yaffs chunk 706
was not erased ... **>> yaffs chunk 1347 was not erased **>> yaffs write
requiered 321 attempts mkdir: cannot create directory 'dev':Cannot
allocate memory" Thanks in advance for your attention again... Kind
regards. Ignacio. Message: 2 Date: Wed, 24 Sep 2008 17:33:50 +0000 From:
Laurence Withers <
l@lwithers.me.uk> Subject: Re: [Yaffs] yaffs Digest,
Vol 40, Issue 8 To:
yaffs@lists.aleph1.co.uk Message-ID:
<
200809241733.50827.l@lwithers.me.uk> Content-Type: text/plain;
charset="iso-8859-1" On Wednesday 24 September 2008, Ignacio Molinero
wrote:
> > I have a the same problem but at the end of the boot's log I get a
> > Kernel Panic, this is my bootlog:
>
[snip]
> > yaffs: dev is 32505857 name is "mtdblock1"
> > yaffs: passed flags ""
> > yaffs: Attempting MTD mount on 31.1, "mtdblock1"
> > block 22 is bad
> > block 23 is bad
> > block 234 is bad
> > block 395 is bad
> > VFS: Mounted root (yaffs2 filesystem).
>
Looks like the kernel is happy to mount your filesystem.
> > Freeing init memory: 132K
> > Warning: unable to open an initial console.
>
This often means that /dev/console doesn't exist on the underlying device.
Unless you're using initrd, /dev/console (and IIRC /dev/null) need to exist
as nodes on the actual filesystem.
Even if you're using udev or mdev or some other way of setting up /dev, this
method won't be called until a bit later in the boot process, and you
need /dev/console to begin with.
How are you putting files into your filesystem? One method involves creating a
yaffs2 image with mkyaffsimage or equivalent utility and then using the
bootloader or mtd_utils to write it to the flash device. If you're doing
that, you can simply put the device nodes into your image (use fakeroot if
you don't have root access).
> > Kernel panic - not syncing: No init found. Try passing init= option to
> > kernel.
>
In the kernel source, look at the function init_post() in init/main.c . You'll
see the kernel tries to execute /sbin/init, /etc/init, /bin/init and
finally /bin/sh . If it can't execute any of those, you'll get the error
message you just saw [also it shows you where the console message comes
from].
Should the image you are writing to the flash device actually contain these
files? If not, start by putting them in.
Bye for now,
-- Laurence Withers, <
l@lwithers.me.uk> --
jabber:
l@jabber.lwithers.me.uk http://www.lwithers.me.uk/ tel:+447753988197
--
*Ignacio Molinero Horno **imolinero@bioingenieria.es**
Departamento I+D*
------------------------------------------------------------------------
Polígono Industrial Alcalde Caballero
C/ Monasterio de las Huelgas 2, nave 6
50.014 ZARAGOZA
*Tfno: (+34) 976 798 200*
*BIOINGENIERIA*
*Fax: (+34) 976 798 201*
*ARAGONESA S.L.*
*
www.sabia.es* <
http://www.sabia.es>
------------------------------------------------------------------------