Tags: OpenMoko OpenEZX A1200
Since daul boot was not ready on A1200, so I have to download OpenEZX’s Images via boot_usb. But in order to play with OpenMoko in bus not have to sit in the front of laptop. I was working hard on implementing Multi-Boot (NOT dual boot only ;)) on my A1200E past days. Now, I proudly announce that it’s almost ready.
Because I don’t want to flash my phone again and again when I update kernels. So I want to boot kernels from MicroSD card. I also want to put a file like menu.lst of GRUB to SD card, so I can easily control the kernel parameters.
It works like this:
1) Loads menu.lst from MicroSD card, and then show a boot menu which depends on the content of this file on screen for selecting which kernel and parameters will be booted.
2) Loads zImage from MicroSD card, and boot it.
Firstly, I met a problem, that’s though MMC card driver is ready in u-Boot but SD card driver for pxa2xx in either BLOB or U-Boot is not available (searched on Google several times but cannot find it, if anyone know there is a patch, please kindly let me know. So, I have to write a SD driver by myself. Luckily, I had debugged and researched the MMC driver in OpenEZX’ linux-2.6.21 for a long time, so I got the way to implement a SD drvier.
Secondly, I have to make Blob (which is released by Moto called apboot-hainan) work with boot_usb and act as the second bootloader (let’s just call it Blob2). And then Blob2 will load menu.lst and kernels from SD card and boot it.
Thirdly, I wrote an implementation to parse the menu.lst, and then show a boot menu on the screen just like GRUB.
OK! Don’t need to jaw-jaw too much about the detail ;), I have put the preview images on here: http://people.openezx.org/alexzhang/images/20070930.
And a short usage is here: http://lists.openezx.org/pipermail/openezx-devel/2007-September/001556.html
I will write another article to describe more detail about how to use it if need. 🙂
Below is the video: