>But first I want to be sure that I will be able to recover the old kernel if
>the
>new one fails. So my questions are:
>
>- Anyone knows how to read the old kernel?
Here is what I did on my TS-7260. If your board also uses RedBoot, it
should work pretty much the same way.
Do not delete the old kernel. Just use a different name. (There is
nothing special about the name "vmlinux".)
On my development system, "make" produces vmlinux.bin which I copy to
my web server. (I find it easier to use a web server than TFTP server,
but it should work either way.) To test the new kernel, I type control-C
when the board is booting, then enter the commands
load -v -r -b 0x00218000 -m http -h 192.168.1.1 /vmlinux.bin
exec -c "console=ttyAM0,115200 root=/dev/mtdblock1"
This runs my kernel for testing purposes, but still uses the on-board
flash for a root filesystem .
After several iterations of building and testing the kernel, I decided I
was ready to save the kernel to the flash memory. I used this sequence
of commands:
--> make sure the flash write-enable jumper is present.
--> "fis create" fails silently if the flash is write protected.
load -v -r -b 0x00218000 -m http -h 192.168.1.1 /vmlinux.bin
(loads kernel into memory, just like you mean to run it)
fis create -b 0x218000 -l IMG_LEN KERNELNAME
( Obtain IMG_LEN from "ls -l vmlinux.bin" on your web server.
The "load" command told you the start and end address, but
-l needs the length. You can type a decimal number there,
so you can just cut/paste from ls -l output.)
fis list
(now you see both the original vmlinux and your new kernel)
To run the new kernel,
fis load KERNELNAME
exec -c "console=ttyAM0,115200 root=/dev/mtdblock1"
To run the old kernel
fis load vmlinux
exec -c "console=ttyAM0,115200 root=/dev/mtdblock1"
Of course, you can use
fconfig
to change which of those commands happens automatically.
Differences from your configuration:
- I am using -ts10 kernel because it was the latest on my CD
- I have the 7260, not 7400
- I only get vmlinux.bin, not zImage when I compile the kernel
Mark S.
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/ts-7000/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/ts-7000/join
(Yahoo! ID required)
<*> To change settings via email:
<*> To unsubscribe from this group, send an email to:
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|