Reply
Thread Tools
Posts: 59 | Thanked: 22 times | Joined on Jan 2013
#1
hello everyone

so i followed the guid for installing the arch linux on n900 but when i run u-boot-update-bootmenu i get this message

Configuration file : /etc/bootmenu.d/21-arch.item

Error : kernel image '/boot/uImage' was not found in /boot or /opt/boot

so i tryed to copy the uImage to those directories but i still get the same error

Help me plz
 
Posts: 21 | Thanked: 27 times | Joined on Jul 2013 @ Czechia
#2
To dear moderators: I would vote for merging this thread to the Arch Linux ARM thread even though it actually deals with U-Boot/BootMenu in general. Or just leave it as is.

You need to show us your /etc/bootmenu.d/21-arch.item BootMenu configuration file and tell us if your Arch is on a µSD card (most probably it is) and which partition.

Here’s my conf that boots (I installed from scratch yesterday). The kernel /boot/uImage is nowhere but the first partition of my µSD.

Code:
ITEM_NAME="Arch Linux ARM"
ITEM_KERNEL="/boot/uImage"
ITEM_DEVICE="${EXT_CARD}p1"
ITEM_FSTYPE="ext4"
ITEM_OMAPTAG="1"
ITEM_CMDLINE="root=/dev/mmcblk0p1 rootwait init=/usr/lib/systemd/systemd omapfb.vram=0:3M,1:3M,2:3M"
Edit:
If you were indeed using a correct BootMenu config, isn’t it by any chance possible that you forgot to actually install the kernel? If we are lucky and everything else works properly (what is your U-Boot version? – It is shown for a while at bootup; mine is 2013.04 from Apr 20 2013.), it should be that either the config is not written properly or that the kernel is not in place.

Originally Posted by Skry View Post
Chroot into your new Alarm install

Before we can boot to the fresh system, we need to do some trivial work in chroot.
See Chroot.

Update and configure system

Choose local mirror for pacman

Add my repository to /etc/pacman.conf
Code:
[n900-base]
SigLevel = Never
Include = /etc/pacman.d/alarm-n900

[n900-extra]
SigLevel = Never
Include = /etc/pacman.d/alarm-n900
Code:
echo "Server = http://alarm-n900.org/\$repo" > /etc/pacman.d/alarm-n900
Install packages necessary to boot, and upgrade your system:
Code:
pacman -Syu linux-omap-n900 linux-headers-omap-n900 n900-firmware n900-integration
Yeah, and what happened to your existing installation? I thought you were up and running since you were interested in setting up your touchscreen already :-)

The rootfs I used (and then manually upgraded) was 2013.02, I totally forgot about this one :-/
Originally Posted by Skry View Post
alarm-n900-201306-rootfs.tar.gz

Last edited by lenoch; 2013-08-03 at 16:23. Reason: update
 
Posts: 59 | Thanked: 22 times | Joined on Jan 2013
#3
First of all thank you so much in fact i did managed to install the arch on my sdcard and it was perfect the only probleme it was very slow that's why i wanted to install it my emmc but i get this error

and her it is my bootmenu configuration

Code:
ITEM_NAME="Arch"
ITEM_KERNEL="/boot/uImage"
ITEM_DEVICE="${INT_CARD}p5"
ITEM_FSTYPE="ext3"
ITEM_OMAPATAG="1"
ITEM_CMDLINE="root=/dev/mmcblk0p5 rootwait
init=/bin/systemd omapfb.vram=0:3M,1:3M,2:3M quiet"
Thanks

Last edited by Mr User; 2013-08-03 at 16:03.
 
Posts: 21 | Thanked: 27 times | Joined on Jul 2013 @ Czechia
#4
Now I’m not sure. As you see, my Arch on µSD lies in /dev/mmcblk0p1 (this path is taken by the Arch kernel from the bootloader config). In Maemo it is /dev/mmcblk1p1 for a change.

Is your Arch partition mounted, in Maemo? What does this command output? (You don’t need to chroot.)
Code:
mount | grep p5
Personally, I’m happy with Arch on µSD, it is easier to troubleshoot and play with. If you still have a swap partition/file on your EMMC, you could use it from Arch to improve performance.

Anyway, would you mind changing your config line to this?
Code:
ITEM_CMDLINE="root=/dev/mmcblk1p5 rootwait init=/usr/lib/systemd/systemd omapfb.vram=0:3M,1:3M,2:3M"
Dunno if it helps.

Last edited by lenoch; 2013-08-03 at 16:24. Reason: guesswork
 
Posts: 59 | Thanked: 22 times | Joined on Jan 2013
#5
Originally Posted by lenoch View Post
Now I’m not sure. As you see, my Arch on µSD lies in /dev/mmcblk0p1 (this path is taken by the Arch kernel from the bootloader config). In Maemo it is /dev/mmcblk1p1 for a change.

Is your Arch partition mounted, in Maemo? What does this command output? (You don’t need to chroot.)
Code:
mount | grep p5
Personally, I’m happy with Arch on µSD, it is easier to troubleshoot and play with. If you still have a swap partition/file on your EMMC, you could use it from Arch to improve performance.

Anyway, would you mind changing your config line to this?
Code:
ITEM_CMDLINE="root=/dev/mmcblk1p5 rootwait init=/usr/lib/systemd/systemd omapfb.vram=0:3M,1:3M,2:3M"
Dunno if it helps.
Again thank you

the mmcblk0p5 is mounted on mnt

/dev/mmcblk0p5 on /mnt type ext3 (0) << result of mount | grep p5

i did change mmcblk0p5 by mmcblk1p5 and i still have the same error

the funny part is that i didn't used to get this error in fact before i installed the arch on sdcard i tryed to install it first in emmc and the u-boot-update-bootmenu worked fine but the system wasn't booting but know i can't even reach this step i should notice that i reflashed my n900
 
Posts: 153 | Thanked: 81 times | Joined on Dec 2011 @ P town
#6
Originally Posted by Mr User View Post
ITEM_KERNEL="/boot/uImage"
ITEM_DEVICE="${INT_CARD}p5"
You're using absolute path here, so u-boot will look for uImage file in /boot folder on /dev/mmcblk0p5.
 
Posts: 59 | Thanked: 22 times | Joined on Jan 2013
#7
souldn't look for it in that path i mean what's the solution
 
Posts: 21 | Thanked: 27 times | Joined on Jul 2013 @ Czechia
#8
I managed to get a little more insight in how U-Boot/BootMenu work.

To fight the issue that somehow your kernel cannot be found you can try this solution. If you have not deviated much from Maemo’s EMMC partition layout (you could post your setup), do the following:

– put the Arch kernel (uImage) in /opt/boot/ (you may need to create the /opt/boot directory, like me)

– use the following config:
Code:
ITEM_NAME="Arch Linux ARM"
ITEM_KERNEL="/opt/boot/uImage"
ITEM_DEVICE="${INT_CARD}p2"
ITEM_FSTYPE="ext3"
ITEM_OMAPTAG="1"
ITEM_CMDLINE="root=/dev/mmcblk1p5 rootwait init=/usr/lib/systemd/systemd omapfb.vram=0:3M,1:3M,2:3M"
This should work given that your /home (= /opt) partition is the second on EMMC. We might need to rethink ITEM_CMDLINE but at least U-Boot/BootMenu should be able to generate a proper /home/user/MyDocs/bootmenu.scr config file (don’t hesitate to look in it, it is almost a text file).
 
Posts: 59 | Thanked: 22 times | Joined on Jan 2013
#9
lenoch << There is no end for fun with you

so i tryed what you said and it didn't work but here is the thing

i get this message '/opt/boot/uImage' was not found in /boot or /opt/boot so the next thing that i did is this

Code:
ITEM_NAME="Arch"
ITEM_KERNEL="uImage"
ITEM_DEVICE="${INT_CARD}p5"
ITEM_FSTYPE="ext3"
ITEM_OMAPATAG="1"
ITEM_CMDLINE="root=/dev/mmcblk0p5 rootwait
init=/bin/systemd omapfb.vram=0:3M,1:3M,2:3M quiet"
and u-boot didn't complain about it so i reboot the device and i selected arch but i get this

unable to read file boot.img.d/uImage
 
Posts: 21 | Thanked: 27 times | Joined on Jul 2013 @ Czechia
#10
I wonder how your partition layout looks like and what could be wrong, seems like I’m quite blind today. Would you mind running fdisk /dev/mmcblk0 and pressing 'p' to print the partition table (and 'q' to safely get out of there)?

Why would U-Boot look for /opt/boot/uImage in /boot or /opt/boot if it was given an absolute path to the /opt directory?

How about putting the Arch kernel in MyDocs? Typically this is a FAT32 partition (the first one) on EMMC.

Code:
ITEM_NAME="Arch"
ITEM_KERNEL="uImage" (or "/uImage" maybe?)
ITEM_DEVICE="${INT_CARD}p1"
ITEM_FSTYPE="vfat" (or just "fat")
ITEM_OMAPATAG="1"
ITEM_CMDLINE="root=/dev/mmcblk0p5 rootwait
init=/usr/lib/systemd/systemd omapfb.vram=0:3M,1:3M,2:3M quiet"
If uImage is not there after you run u-boot-update-bootmenu (I hope it does not complain again), just copy it in /home/user/MyDocs.

Last edited by lenoch; 2013-08-03 at 20:15.
 
Reply


 
Forum Jump


All times are GMT. The time now is 14:56.