Re: [Angstrom-devel] [Test fodder] initramfs images for h2200, h3900, h5000 and hx4700

2008-03-04 Thread Michal Panczyk
Hi,
>  From: Koen Kooi <[EMAIL PROTECTED]>
>  Subject: [Angstrom-devel] [Test fodder] initramfs images for h2200,
> h3900,  h5000 and hx4700
>  Hi,
>
>  As you may have read on the website news:
>
>  
> http://www.angstrom-distribution.org/unstable/autobuild/h2200/zImage-initramfs-bootmenu-image-h2200-2.6.21-hh20-r14-h2200.bin
>  
> http://www.angstrom-distribution.org/unstable/autobuild/h3900/zImage-initramfs-bootmenu-image-h3900-2.6.21-hh20-r14-h3900.bin
>  
> http://www.angstrom-distribution.org/unstable/autobuild/h5000/zImage-initramfs-bootmenu-image-h5000-2.6.21-hh20-r14-h5000.bin
>  
> http://www.angstrom-distribution.org/unstable/autobuild/hx4700/zImage-initramfs-bootmenu-image-hx4700-2.6.21-hh20-r14-hx4700.bin
>
>
>  regards,
>
>  Koen
>  -BEGIN PGP SIGNATURE-
>  Version: GnuPG v1.4.5 (Darwin)
>
>  iD4DBQFHzSexMkyGM64RGpERAhkGAKCgn+jaxjDvJnB25vrYjjsDn3IkWQCXTXwR
>  cUzEml/cUWCvbbgXQtLRcg==
>  =GCEc
>  -END PGP SIGNATURE-

Situation on h5000:

On current images boot params are problematic. Recently, due to kernel
configuration change, root parameter was changed from /dev/mtdblock1
to mtd1. Initramfs kernel tries to boot from /dev/mtdblock. and
that results in :
"initramfs: Loading /initrd.d/90-check-modules.sh module
No valid root device was specified. Please add root=/dev/something to
the kernel command-line and try again.

sh: can't access tty; job control turned off
/ $ "

Changing linuxargs (in bootldr console or in /boot/params of jffs2
image) to root=/dev/mtdblock1 helps.  The initramfs menu shows up.

At this point - how to get params working out of the box? Some kind of
syncing between initramfs kernel and regular kernel is needed - get
both of them to support mtd1. Or maybe it is in the boot script
waitnig to pass the root value as /dev/$1 or something like that ?

Anther thing in that matter :
How to get the second kernel (or kexec - i don't know which one is it)
to be more talkative. Console gets silent after :

"Kernel found in rootfs:
lrwxrwxrwx1 00  63 Jan  3  1970
/mnt/boot/zImage ->
zImage-initramfs-bootmenu-image-h5000-2.6.21-hh20-r14-h5000.bin
/usr/sbin/kexec -f /mnt/boot/zImage
--command-line=mtdparts=ipaq:[EMAIL PROTECTED](bootldr)ro,[EMAIL 
PROTECTED](root)
root=/dev/mtc
[   22.36] dmabounce: device samcop sdi on platform bus unregistered
[   36.82] Starting new kernel
[   36.82] Bye!
Uncompressing 
Linux...
done, booting the k.
"

As it goes for the menu it can see following choices:
0 : mtdblock0 (unknown)
1 : mtdblock1 (jffs2)
2 :  mtdblock2 (unknown)
3 :  mtdblock3 (unknown)
4 : NFS (nfsroot=192.168.2.200:/srv/nfs/oe/image)
5 : shell

Values 0 and 3 should get removed.
SD boot should be added.
A reset option would be nice too.

Where in oe is the script controlling that menu ?


The boot process:
I chose "1" and the screen blanked. Nothing else happened until now. I
am not sure if I did everything as it was supposed to be done. Judging
form Koen's experience the new zImage should just be linked to old
zImage in /boot dir. And that didn't work form me.

The choice process itself is kind a hard - there are debug messages
comming in from the keys driver that make the screen unreadable, but
that is a different story.

I would be grateful for some comments.



-- 
Best regards
Michal Panczyk

___
Angstrom-distro-devel mailing list
Angstrom-distro-devel@linuxtogo.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel


Re: [Angstrom-devel] [Test fodder] initramfs images for h2200, h3900, h5000 and hx4700

2008-03-04 Thread Koen Kooi
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Michal Panczyk schreef:


| At this point - how to get params working out of the box? Some kind of
| syncing between initramfs kernel and regular kernel is needed - get
| both of them to support mtd1. Or maybe it is in the boot script
| waitnig to pass the root value as /dev/$1 or something like that ?

See (thunderbird damaged) patch at the bottom

| Anther thing in that matter :
| How to get the second kernel (or kexec - i don't know which one is it)
| to be more talkative. Console gets silent after :

I noticed that as well, it would be nice if boot messages can go over
serial, since psplash obscures them anyway.

| As it goes for the menu it can see following choices:
| 0 : mtdblock0 (unknown)
| 1 : mtdblock1 (jffs2)
| 2 :  mtdblock2 (unknown)
| 3 :  mtdblock3 (unknown)
| 4 : NFS (nfsroot=192.168.2.200:/srv/nfs/oe/image)
| 5 : shell
|
| Values 0 and 3 should get removed.

I think uncommenting line 85 of the bootmenu script would accomplish
that (see patch).

| SD boot should be added.

AIUI that gets added when it detects an sd card, so something else is wrong.

| A reset option would be nice too.
|
| Where in oe is the script controlling that menu ?

org.openembedded.dev/packages/initrdscripts/files/30-bootmenu.sh

| The boot process:
| I chose "1" and the screen blanked. Nothing else happened until now. I
| am not sure if I did everything as it was supposed to be done. Judging
| form Koen's experience the new zImage should just be linked to old
| zImage in /boot dir. And that didn't work form me.
|
| The choice process itself is kind a hard - there are debug messages
| comming in from the keys driver that make the screen unreadable, but
| that is a different story.

That's probably a simple kernel patch, Paul, Milan?

As promised, the totally untested patch:


# old_revision [16f0fa7ec858ba228dd9d241b0cff7a309a42dff]
#
# patch "packages/initrdscripts/files/30-bootmenu.sh"
#  from [b378e73bcd2daa97bd9e9134000a2ade7fe2538f]
#to [5d48cde70bc16d340f2c5ad3ec825874bec7c228]
#

- --- packages/initrdscripts/files/30-bootmenu.sh
b378e73bcd2daa97bd9e9134000a2ade7fe2538f
+++ packages/initrdscripts/files/30-bootmenu.sh
5d48cde70bc16d340f2c5ad3ec825874bec7c228
@@ -82,7 +82,7 @@ while read maj min nblk dev; do

~ get_partition_type
~ if [ "$fstype" != "ext2" -a "$fstype" != "ext3" -a "$fstype" !=
"vfat" -a "$fstype" != "jffs2" ]; then
- -#  continue
+   continue
~true
~ fi

@@ -158,6 +158,7 @@ else
~ # jffs2 is not recognized by mount automagically
~ if [ "$fstype" == "(jffs2)" ]; then
~ROOT_FSTYPE="jffs2"
+ROOT_DEVICE="$dev"
~ fi
~ CMDLINE="$CMDLINE root=$ROOT_DEVICE"
~ fi
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFHzbu9MkyGM64RGpERAryRAJ9whcgOKGccyU58MDCeeiU+aoz6JgCgt0GF
RcjqnsKt/eLWfLQDAWfeHO4=
=KsvZ
-END PGP SIGNATURE-


___
Angstrom-distro-devel mailing list
Angstrom-distro-devel@linuxtogo.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel


Re: [Angstrom-devel] [Test fodder] initramfs images for h2200, h3900, h5000 and hx4700

2008-03-05 Thread Michal Panczyk
This helps with the menu - it gets reduced to 3 positions. jffs nfs and shell.
But I was not able to boot form mdt1 - it is looking for mtdblock1
Message read from LCD :
ROOT_DEVICE=mtdblock1
CMDLINE=keepinitrd root=mtdblock1

(SNIP) loading modules

"No valid root device was specified. Please add root=/dev/something to
the kernel command line and try again."

About the patch :
We want to skip blockdevices and boot form mtdX - don't we ?
Maybe the section
" if [ "$fstype" == "(jffs2)" ]; then
#   ROOT_FSTYPE="jffs2"
ROOT_DEVICE="$dev"
 fi"
Should somehow compare the partitions numbers ? mtdblock1 should go to
mtd1 and so on... Just haven't figured out how to do it in smart way
...

Lack of console is annoying too.
Is boot_root() section init.sh (in packages/initrdscripts/files/)
responsible for that ?
"cd $BOOT_ROOT
 exec switch_root -c /dev/console $BOOT_ROOT /sbin/init
"
How about changing /dev/console to something else (ie. ttyS0 ? ).

Another thing that has crossed my mind today - LAB has nice feature -
it there is no action taken it automatically scans for zImage and
tries to boot from media that provides it. It would be nice too -
especially after 100th boot when you don't want to choose again the
proper device to boot from...

>  From: Koen Kooi <[EMAIL PROTECTED]>
>  Subject: Re: [Angstrom-devel] [Test fodder] initramfs images for
> h2200, h3900, h5000 and hx4700
>  -BEGIN PGP SIGNED MESSAGE-
>  Hash: SHA1
>
>  Michal Panczyk schreef:
>
>
>  | At this point - how to get params working out of the box? Some kind of
>  | syncing between initramfs kernel and regular kernel is needed - get
>  | both of them to support mtd1. Or maybe it is in the boot script
>  | waitnig to pass the root value as /dev/$1 or something like that ?
>
>  See (thunderbird damaged) patch at the bottom
>
>  | Anther thing in that matter :
>  | How to get the second kernel (or kexec - i don't know which one is it)
>  | to be more talkative. Console gets silent after :
>
>  I noticed that as well, it would be nice if boot messages can go over
>  serial, since psplash obscures them anyway.
>
>  | As it goes for the menu it can see following choices:
>  | 0 : mtdblock0 (unknown)
>  | 1 : mtdblock1 (jffs2)
>  | 2 :  mtdblock2 (unknown)
>  | 3 :  mtdblock3 (unknown)
>  | 4 : NFS (nfsroot=192.168.2.200:/srv/nfs/oe/image)
>  | 5 : shell
>  |
>  | Values 0 and 3 should get removed.
>
>  I think uncommenting line 85 of the bootmenu script would accomplish
>  that (see patch).
>
>  | SD boot should be added.
>
>  AIUI that gets added when it detects an sd card, so something else is wrong.
>
>  | A reset option would be nice too.
>  |
>  | Where in oe is the script controlling that menu ?
>
>  org.openembedded.dev/packages/initrdscripts/files/30-bootmenu.sh
>
>  | The boot process:
>  | I chose "1" and the screen blanked. Nothing else happened until now. I
>  | am not sure if I did everything as it was supposed to be done. Judging
>  | form Koen's experience the new zImage should just be linked to old
>  | zImage in /boot dir. And that didn't work form me.
>  |
>  | The choice process itself is kind a hard - there are debug messages
>  | comming in from the keys driver that make the screen unreadable, but
>  | that is a different story.
>
>  That's probably a simple kernel patch, Paul, Milan?
>
>  As promised, the totally untested patch:
>
>
>  # old_revision [16f0fa7ec858ba228dd9d241b0cff7a309a42dff]
>  #
>  # patch "packages/initrdscripts/files/30-bootmenu.sh"
>  #  from [b378e73bcd2daa97bd9e9134000a2ade7fe2538f]
>  #to [5d48cde70bc16d340f2c5ad3ec825874bec7c228]
>  #
>  
>  - --- packages/initrdscripts/files/30-bootmenu.sh
>  b378e73bcd2daa97bd9e9134000a2ade7fe2538f
>  +++ packages/initrdscripts/files/30-bootmenu.sh
>  5d48cde70bc16d340f2c5ad3ec825874bec7c228
>  @@ -82,7 +82,7 @@ while read maj min nblk dev; do
>
>  ~ get_partition_type
>  ~ if [ "$fstype" != "ext2" -a "$fstype" != "ext3" -a "$fstype" !=
>  "vfat" -a "$fstype" != "jffs2" ]; then
>  - -#  continue
>  +   continue
>  ~true
>  ~ fi
>
>  @@ -158,6 +158,7 @@ else
>  ~ # jffs2 is not recognized by mount automagically
>  ~ if [ "$fstype" == "(jffs2)" ]; then
>  ~ROOT_FSTYPE="jffs2"
>  +ROOT_DEVICE="$dev"
>  ~ fi
>  ~ CMDLINE="$CMDLINE root=$ROOT_DEVICE"
>  ~ fi
>  -BEGIN PGP SIGNATURE-
>  Version: GnuPG v1.4.5 (Darwin)
>
>  iD8DBQFHzbu9MkyGM64RGpERAryRAJ9whcgOKGccyU58MDCeeiU+aoz6JgCgt0GF
>  RcjqnsKt/eLWfLQDAWfeHO4=
>  =KsvZ
>  -END PGP SIGNATURE-



-- 
Best regards
Michal Panczyk

___
Angstrom-distro-devel mailing list
Angstrom-distro-devel@linuxtogo.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel


Re: [Angstrom-devel] [Test fodder] initramfs images for h2200, h3900, h5000 and hx4700

2008-03-08 Thread Paul Sokolovsky
Hello,

On Thu, 6 Mar 2008 00:44:02 +0100
"Michal Panczyk" <[EMAIL PROTECTED]> wrote:

> This helps with the menu - it gets reduced to 3 positions. jffs nfs
> and shell. But I was not able to boot form mdt1 - it is looking for
> mtdblock1 Message read from LCD :
> ROOT_DEVICE=mtdblock1
> CMDLINE=keepinitrd root=mtdblock1

That's very strange - that should be /dev/mtdblock1 at least. Actually,
it cannot be just "mtdblock1" except for when you pass root= on
original kernel command line (from bootloader) - mere look at the code
will prove that.

> 
> (SNIP) loading modules
> 
> "No valid root device was specified. Please add root=/dev/something to
> the kernel command line and try again."
> 
> About the patch :
> We want to skip blockdevices and boot form mtdX - don't we ?

Not quite. We want to remove mtdblock driver from kernel while still be
able that boot with "dumb" kernel. Making initramfs to use fake device
names for mounting might be a good optimization, but only an
optimization - and initramfs-bootmenu can use lots of them. The
functionality is still primary then.

> Maybe the section
> " if [ "$fstype" == "(jffs2)" ]; then
> #   ROOT_FSTYPE="jffs2"
> ROOT_DEVICE="$dev"
>  fi"
> Should somehow compare the partitions numbers ? mtdblock1 should go to
> mtd1 and so on... Just haven't figured out how to do it in smart way
> ...
> 
> Lack of console is annoying too.

This is cryptic at all.

> Is boot_root() section init.sh (in packages/initrdscripts/files/)
> responsible for that ?
> "cd $BOOT_ROOT
>  exec switch_root -c /dev/console $BOOT_ROOT /sbin/init
> "
> How about changing /dev/console to something else (ie. ttyS0 ? ).

> Another thing that has crossed my mind today - LAB has nice feature -
> it there is no action taken it automatically scans for zImage and
> tries to boot from media that provides it. It would be nice too -
> especially after 100th boot when you don't want to choose again the
> proper device to boot from...

Obviously, that's one of the important functionality features to add
before we'll be able to switch to it - I don't want to regress stuff
for people who used to use LAB and other bootloaders.

> 
> >  From: Koen Kooi <[EMAIL PROTECTED]>
> >  Subject: Re: [Angstrom-devel] [Test fodder] initramfs images for
> > h2200, h3900, h5000 and hx4700
> >  -BEGIN PGP SIGNED MESSAGE-
> >  Hash: SHA1
> >
> >  Michal Panczyk schreef:
> >
> >
> >  | At this point - how to get params working out of the box? Some
> > kind of | syncing between initramfs kernel and regular kernel is
> > needed - get | both of them to support mtd1. Or maybe it is in the
> > boot script | waitnig to pass the root value as /dev/$1 or
> > something like that ?
> >
> >  See (thunderbird damaged) patch at the bottom
> >
> >  | Anther thing in that matter :
> >  | How to get the second kernel (or kexec - i don't know which one
> > is it) | to be more talkative. Console gets silent after :
> >
> >  I noticed that as well, it would be nice if boot messages can go
> > over serial, since psplash obscures them anyway.
> >
> >  | As it goes for the menu it can see following choices:
> >  | 0 : mtdblock0 (unknown)
> >  | 1 : mtdblock1 (jffs2)
> >  | 2 :  mtdblock2 (unknown)
> >  | 3 :  mtdblock3 (unknown)
> >  | 4 : NFS (nfsroot=192.168.2.200:/srv/nfs/oe/image)
> >  | 5 : shell
> >  |
> >  | Values 0 and 3 should get removed.
> >
> >  I think uncommenting line 85 of the bootmenu script would
> > accomplish that (see patch).
> >
> >  | SD boot should be added.
> >
> >  AIUI that gets added when it detects an sd card, so something else
> > is wrong.
> >
> >  | A reset option would be nice too.
> >  |
> >  | Where in oe is the script controlling that menu ?
> >
> >  org.openembedded.dev/packages/initrdscripts/files/30-bootmenu.sh
> >
> >  | The boot process:
> >  | I chose "1" and the screen blanked. Nothing else happened until
> > now. I | am not sure if I did everything as it was supposed to be
> > done. Judging | form Koen's experience the new zImage should just
> > be linked to old | zImage in /boot dir. And that didn't work form
> > me. |
> >  | The choice process itself is kind a hard - there are debug
> > messages | comming in from the keys driver that make the screen
> > unreadable, but | that is a different story.
> >
> >  That's probably a simple kernel patch,

Re: [Angstrom-devel] [Test fodder] initramfs images for h2200, h3900, h5000 and hx4700

2008-03-08 Thread Paul Sokolovsky
Hello,

On Tue, 4 Mar 2008 21:39:41 +0100
"Michal Panczyk" <[EMAIL PROTECTED]> wrote:

> Hi,
> >  From: Koen Kooi <[EMAIL PROTECTED]>
> >  Subject: [Angstrom-devel] [Test fodder] initramfs images for h2200,
> > h3900,  h5000 and hx4700
> >  Hi,
> >
> >  As you may have read on the website news:
> >
> >  
> > http://www.angstrom-distribution.org/unstable/autobuild/h2200/zImage-initramfs-bootmenu-image-h2200-2.6.21-hh20-r14-h2200.bin
> >  
> > http://www.angstrom-distribution.org/unstable/autobuild/h3900/zImage-initramfs-bootmenu-image-h3900-2.6.21-hh20-r14-h3900.bin
> >  
> > http://www.angstrom-distribution.org/unstable/autobuild/h5000/zImage-initramfs-bootmenu-image-h5000-2.6.21-hh20-r14-h5000.bin
> >  
> > http://www.angstrom-distribution.org/unstable/autobuild/hx4700/zImage-initramfs-bootmenu-image-hx4700-2.6.21-hh20-r14-hx4700.bin
> >
> >
> >  regards,
> >
> >  Koen
> >  -BEGIN PGP SIGNATURE-
> >  Version: GnuPG v1.4.5 (Darwin)
> >
> >  iD4DBQFHzSexMkyGM64RGpERAhkGAKCgn+jaxjDvJnB25vrYjjsDn3IkWQCXTXwR
> >  cUzEml/cUWCvbbgXQtLRcg==
> >  =GCEc
> >  -END PGP SIGNATURE-
> 
> Situation on h5000:
> 
> On current images boot params are problematic. Recently, due to kernel
> configuration change, root parameter was changed from /dev/mtdblock1
> to mtd1. Initramfs kernel tries to boot from /dev/mtdblock. and
> that results in :
> "initramfs: Loading /initrd.d/90-check-modules.sh module
> No valid root device was specified. Please add root=/dev/something to
> the kernel command-line and try again.
> 
> sh: can't access tty; job control turned off
> / $ "
> 
> Changing linuxargs (in bootldr console or in /boot/params of jffs2
> image) to root=/dev/mtdblock1 helps.  The initramfs menu shows up.

That's not expected behavior! Passing "root=" on a kernel command line
should skip showing menu and lead to the direct boot from the specified
device.

> 
> At this point - how to get params working out of the box? Some kind of
> syncing between initramfs kernel and regular kernel is needed - get
> both of them to support mtd1. 

While RFCing initramfs-bootmenu, I made explicit stress that there is
not going to be "initramfs" kernel and "regular" kernel - this is going
to be the *same* kernel. Why so? Is it required? Of course no,
that's just important simplification measure, first of all designed to
keep people from the confusion.

> Or maybe it is in the boot script
> waitnig to pass the root value as /dev/$1 or something like that ?

No, no, and no. No "wanting", no magic. Value of root= is a value of
root= as described in the kernel documentation. Anything working for
"dumb" kernel should be working for initramfs-bootmenu. If that's not
the case, please provide exact objective steps to reproduce it
(objective steps are those "I pass kernel command line 'command line'
to the initramfs kernel").

> 
> Anther thing in that matter :
> How to get the second kernel (or kexec - i don't know which one is it)
> to be more talkative. Console gets silent after :

Again, no magic. "console=" kernel param responsible for that.
initramfs-bootmenu passes all the original kernel parameters to the
production kernel, only adding root= based on user selection. So, just
console= properly, and you get what you want. And of course, if you
have broken a bootloaders which passes crappy command lines behind your
back, you should take your control back of the commandline still!

> 
> "Kernel found in rootfs:
> lrwxrwxrwx1 00  63 Jan  3  1970
> /mnt/boot/zImage ->
> zImage-initramfs-bootmenu-image-h5000-2.6.21-hh20-r14-h5000.bin
> /usr/sbin/kexec -f /mnt/boot/zImage
> --command-line=mtdparts=ipaq:[EMAIL PROTECTED](bootldr)ro,[EMAIL 
> PROTECTED](root)
> root=/dev/mtc

That's good proof of what I wrote above.

> [   22.36] dmabounce: device samcop sdi on platform bus
> unregistered [   36.82] Starting new kernel
> [   36.82] Bye!
> Uncompressing
> Linux...
> done, booting the k. "
> 
> As it goes for the menu it can see following choices:
> 0 : mtdblock0 (unknown)
> 1 : mtdblock1 (jffs2)
> 2 :  mtdblock2 (unknown)
> 3 :  mtdblock3 (unknown)
> 4 : NFS (nfsroot=192.168.2.200:/srv/nfs/oe/image)
> 5 : shell
> 
> Values 0 and 3 should get removed.

As was described, they are debug output.

> SD boot should be added.

There's no such thing as "SD boot". initramfs-bootmenu allows to boot
from any block device present in the system. If you have block device
behind your SD card, you can boot from it. What should be added here is
"Rescan partitions" menu choice.

> A reset option would be nice too.

Reset is a button on a device.

> Where in oe is the script controlling that menu ?

Well, by now you should be able to answer such questions yourself ;-).

> The boot process:
> I chose "1" and the screen blanked. Nothing else happened until now. 

Impossible. You should get log output on your console te