« Previous | Next»

Thecus N2100: Testing kernels

Posted by coldtobi | 1 Jul, 2009, 23:40

Some time ago, I wrote how to test a kernel on the Thecus (here).

As I did not update the kernel for some time, I decided  to update to 2.6.30. As usual, I wanted to try it before flasing it permanently. To enforce this, I do not have the package "flash-kernel" installed. But unfortunatly, this time the testing method did not work or the kernel did not boot...



After some testing and attaching a serial port to the thecus, I found out that the initrd was not setting the correct root device: It looked for /dev/ram and as there is nothing, it had to fail. 

/dev/ram is the root device passed by RedBoot's boot script. As this is not easily changed, the problem narrows down an initrd, which does not "correct" the setting. 

Checking on the debian-arm mailing list, I got the answer: flash-kernel adds a hook to the initrd which fixes the root-device. So installing flash-kernel and updating the initrd should make it work. 

However, as update-initramfs always calls flash-kernel, so this is not the desired solution for someone actually wanting to test the kernel.

So the new test-concept has to look like

  • Uninstall flash-kernel (or defeat it with renaming /usr/sbin/flash-kernel)
  • Install the kernel to be tested
  • Copy the initrd and linux file to the test computer
  • prepare as in the original instructions but use the following line instead of the on in the original (edit required!):
    • exec -c "console=ttyS0,115200 root=/dev/<your-root-dev> initrd=0xa0800000,42M mem=128M@0xa0000000"
  • if working and you want to install it to flash,
    • install flash-kernel (or restore /usr/sbin/flash-kernel)
    • call update-initramfs -u -k <new-kernel> (if you running the tested kernel, you can use `uname -r`
    • update-initramfs should call "flash-kernel" (it will say "Flashing kernel...." )
    • WARNING: update-initramfsis required. Otherwise your Thecus probably won't boot!
    • reboot...

(DISCLAIMER: Fiddling with hardware always bears the danger of breaking it. It was your decision too void your warranty, it will be your task to make it work again or buy yourself a new one. Use everything written here at your own risk.)


Linux / Debian, Thecus N2100 | Comments (1) | Trackbacks (0)

Related Articles:

1 Comments | "Thecus N2100: Testing kernels" »

  1. Djamel :

    07/09/2009, at 16:30 [ Reply ]

    Hello ! really great job.
    You explained how to test a new kernel... but how to compile it from a vanilla kernel source (ftp.kernel.org).
    I am used to use the make-kpkg command to compile the kernel.
    is it possible to provide us how did you create your own kernel ? (with make-kpkg or the standard make).
    Thank you.