• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1]
Author Topic: Question Kernel Update  (Read 2269 times)
Bluesbird
Newbie
*

Karma: 0
Posts: 1


View Profile
« on: September 22, 2009, 02:37:45 PM »

Hello,
I have a Generell question to Kernel Updates. If I flash a new Kernel from sheeva.with-linux.com what happend with my installed Applications
and Personal Data/Configuration. I have just installed Zarafa on the Plug and it run fine, but I want upgrade the kernel to 2.6.31 without crashing my personal data and installed programms.

greetings Bluesbird
Logged

odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #1 on: September 26, 2009, 05:00:34 AM »

may I jump onto this train also, please.

Once sb has answered Bluesbird's question may I also ask for an answer to my related issue:

Re information provided in various threads/forums (thx!) I have successfully upgraded u-boot

Code:
U-Boot 1.1.4 (Sep 14 2009 - 15:36:37) Marvell version: 3.4.19

and I was able to get the original kernel booting from an 1GB SD card (ext2 /dev/mmcblk0p1: /uImage.sheeva.040309; ext3 /dev/mmcblk0p2: root-fs).

Nevertheless I struggle to get the 2.6.31 kernel to run. I tried to follow the instruction in the readme and i think I adapted them from the use in NAND to my setup using an SD.
But when booting I only get a message saying something

Code:
Uncompressing Linux... done, booting the kernel.

but nothing further happens.

Below are my boot parameters which work with the 2.6.22.18 kernel. Maybe sb can give a hint how to modify those working with the 2..31.6 version, please.

Marvell>> printenv
Code:
baudrate=115200
loads_echo=0
rootpath=/mnt/ARM_FS/
netmask=255.255.0.0
CASset=min
MALLOC_len=1
ethprime=egiga0
bootargs_root=root=/dev/mtdblock2 ro
ethmtu=1500
usb0Mode=host
nandEcc=1bit
ethact=egiga0
serverip=10.10.0.2
ipaddr=10.10.0.1
cesvcid=ULULULULULULPPULULULULULDA
bootargs_end=:::DB88FXX81:eth0:none
image_name=uImage
standalone=fsload 0x2000000 $(image_name);setenv bootargs $(console) root=/dev/mtdblock0 rw ip=$(ipaddr):$(serverip)$(bootargs_end) $(mvPhoneConfig); bootm 0x2000000;
mvPhoneConfig=mv_phone_config=dev0:fxs,dev1:fxs
mvNetConfig=mv_net_config=(00:11:88:0f:62:81,0:1:2:3),mtu=1500
yuk_ethaddr=00:00:00:EE:51:81
netretry=no
rcvrip=169.254.100.100
loadaddr=0x02000000
autoload=no
ethaddr=00:50:43:01:D8:11
run_diag=no
bootargs=console=ttyS0,115200 mtdparts=nand_mtd:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw root=/dev/mtdblock1 rw ip=10.4.50.4:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
bootargs_nand=console=ttyS0,115200 mtdparts=nand_mtd:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw root=/dev/mtdblock1 rw ip=10.4.50.4:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
bootcmd_nand_orig=nand read.e 0x800000 0x100000 0x400000; bootm 0x800000
bootcmd_nand=setenv bootargs $(bootargs_nand); nand read.e 0x800000 0x100000 0x400000; bootm 0x800000
bootcmd_sd=setenv bootargs $(bootargs_sd); mmcinit; ext2load mmc 0 0x8000000 /uImage.sheeva.040309; bootm 0x8000000
bootcmd=run bootcmd_sd; run bootcmd_nand
console=a0000
e=ttyS0,115200 mtdparts=nand_mtd:0x100000@0(uboot)ro,0x0@0x100000(uImage),0x1ff00000@0x100000(rootfs)rw
bootargs_sd=console=ttyS0,115200 root=/dev/mmcblk0p2 rootdelay=10 mtdparts=nand_mtd:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw
stdin=serial
stdout=serial
stderr=serial
nandEnvBase=a0000
mainlineLinux=no
enaMonExt=no
enaCpuStream=no
enaWrAllo=no
pexMode=RC
disL2Cache=no
setL2CacheWT=yes
disL2Prefetch=yes
enaICPref=yes
enaDCPref=yes
sata_dma_mode=yes
netbsd_en=no
vxworks_en=no
bootdelay=3
disaMvPnp=no
enaAutoRecovery=yes
pcieTune=no
Logged

ianjb
Jr. Member
**

Karma: 0
Posts: 65


View Profile
« Reply #2 on: September 26, 2009, 06:48:05 AM »

@odoll
Most times when it hangs after "done booting the kernel" it means that the environment variables that get passed to the kernel are not set correctly. In your case I can see you have some missing.

Near the top of the readme for 2.6.31 it says:
Quote
# This is a mainline Linux Kernel and you must set
# the mainlineLinux and arcNumber env variables in U-Boot
# and change the bootargs for a successful boot.
#
# setenv mainlineLinux yes
# setenv arcNumber 2097

You need to set these.
Logged

odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #3 on: September 26, 2009, 01:21:49 PM »

Ah sorry, when I wrote "I tried to follow the instruction in the readme" I ment that I set the parameters as instructed

# setenv mainlineLinux yes
# setenv arcNumber 2097

I also changed

bootargs_sd=console=ttyS0,115200 root=/dev/mmcblk0p2 rootdelay=10 mtdparts=nand_mtd:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw

to

bootargs_sd=console=ttyS0,115200 root=/dev/mmcblk0p2 rootdelay=10 mtdparts=orion_nand:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw

What I didn't do was adding "rootfstype=jffs2" as I use the root fs as ext3 on the SD card!?
And I didn't saved the parameters (saveenv) as I didn't wanted to make the changes permanent, yet.

I just hit "boot" after I made the (temporary) changes. Or should I have used "bootm 0x8000000" instaed?

Logged

odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #4 on: October 03, 2009, 01:33:50 PM »

hmm, tweaking a bit it works now, though I don't know what made the trick :-(

as far as I can tell I used the guideline http://plugcomputer.org/plugwiki/index.php/Install_Prebuilt_Kernels_From_sheeva.with-linux.com to update the kernel in my two plugs' NAND to 2.6.31.1.

though I made no [1] changes to the bootargs_sd parameter
Code:
bootargs_sd=console=ttyS0,115200 root=/dev/mmcblk0p2 mtdparts=nand_mtd:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw
bootcmd_sd=setenv bootargs $(bootargs_sd); mmcinit; ext2load mmc 0 0x8000000 /uImage; bootm 0x8000000
bootcmd=run bootcmd_sd; run bootcmd_nand

[1]: (removed rootdelay=10 thou it work before already; and /uImage is symlink to /sheeva-2.6.31-uImage on the first small ext2 partition)

it now also boots the kernel and rootfs from the SD card :-)

Code:
debian login: root
Password:
Last login: Sat Oct  3 22:13:56 CEST 2009 on ttyS0
Linux debian 2.6.31.1 #2 PREEMPT Wed Sep 30 18:47:19 MDT 2009 armv5tel
[...]
root@debian:~# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/mmcblk0p2          964532    462796    452740  51% /
tmpfs                   256692         0    256692   0% /lib/init/rw
varrun                  256692       260    256432   1% /var/run
varlock                 256692         0    256692   0% /var/lock
udev                    256692       116    256576   1% /dev
tmpfs                   256692         0    256692   0% /dev/shm
/dev/mmcblk0p1            7745      2763      4582  38% /boot
tmpfs                   256692         0    256692   0% /var/cache/apt
root@debian:~# ls -al /
total 81
drwxr-xr-x 21 root root  4096 Oct  1 02:56 .
drwxr-xr-x 21 root root  4096 Oct  1 02:56 ..
-rw-r--r--  1 root root     0 Sep 13 17:40 This.is.SD
drwxr-xr-x  2 root root  4096 Sep 11 23:24 bin
drwxr-xr-x  3 root root  1024 Oct  3 22:04 boot
drwxr-xr-x 12 root root  3800 Oct  3 22:28 dev
drwxr-xr-x 60 root root  4096 Oct  3 22:28 etc
drwxr-xr-x  2 root root  4096 Dec 23  2008 home
drwxr-xr-x 12 root root  4096 Oct  1 02:56 lib
drwx------  2 root root 16384 Sep 13 16:00 lost+found
drwxr-xr-x  2 root root  4096 Jan 19  2009 media
drwxr-xr-x  3 root root  4096 Sep 13 18:58 mnt
drwxr-xr-x  2 root root  4096 Jan 19  2009 opt
dr-xr-xr-x 63 root root     0 Jan  1  1970 proc
drwxr-xr-x  5 root root  4096 Oct  3 22:03 root
drwxr-xr-x  2 root root  4096 Sep 13 19:29 sbin
drwxr-xr-x  2 root root  4096 Nov 13  2008 selinux
drwxr-xr-x  2 root root  4096 Jan 19  2009 srv
drwxr-xr-x 12 root root     0 Jan  1  1970 sys
drwxr-xr-x  5 root root  4096 Sep 12 18:36 tmp
drwxr-xr-x 15 root root  4096 Nov 13  2008 usr
drwxr-xr-x 13 root root  4096 Dec 23  2008 var
Logged

odoll
Full Member
***

Karma: 0
Posts: 148


View Profile
« Reply #5 on: October 12, 2009, 07:15:38 AM »

just as a follow up - I further changed the bootargs parameter slightly back to

bootargs_sd=console=ttyS0,115200 root=/dev/mmcblk0p2 rootdelay=10 mtdparts=orion_nand:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw

as though booting from SD I need some delay for my usb-drive to be recognised and to show up as device /dev/sda1 (for mounting it via fstab)

and though "nand_mtd" boots the "orion_nand" works as well and as don't know what difference it makes I'll stick with the recommended version ;-)
Logged

Pages: [1]
Print
Jump to: