./mkbootimg --kernel Image --ramdisk ramdisk.gz --base 60400000 --pagesize 16384 --ramdiskaddr 62000000 -o recovery.img
ramdisk.gz - fake ramdisk
Now it seems that everything works fine, but it was a long night
I erase Android, so do not follow the description below! If you do so you will kill all the puppies and baby seals in the world!
- I've recompiled the kernel with my config (added Atheros support for my TP-Link dongle, removed some stuff to decrease footprint) and used initramfs.cpio from Andrew --> arch/boot/Image
- The kernel image file is larger than 8MB, so I had to modify parameters.txt in the ROM Flash Tool: I've simply added 0x2000 (+25% sould be enough for now)to the original 0x8000 size of the kernel space on the MTD and, of course, shifted the position of all items after the kernel by the same amount. Unfortunately the flash tool does not read this file for flashing, so you need to update the flashing positions in the tool too.
- Flash it! Well, it took 10 times 'till I realized that it is not enough to flash the kernel, but somehow I have to flash the recovery image too. If I do not flash the recovery the box does not reboot, but stays in programming mode.
- Copy the newly built modules to the root partition. Note that you may need to delete old ones...
- Just reboot and enjoy Ubuntu with network connection.
But honestly, who needs Ubuntu? I'm a Debian guy
- Created a new partition on my SD card.
- Mount it to /mnt
- Run debootstrap to set up a Debian testing
- Chroot and install some fancy stuff such as iw, wpa supplicant and Midnight Commander
- Copy kernel modules and firmwares to the new filesystem
- Use e2label to rename the old linuxroot to ubuntu and give linuxroot name to the new partition.
- Enjoy Debian Testing
This was a quick hack, needs some polishing. One of the most important stuff is to change the initramfs.cpio to Debian's to have it as standard as possible. I also plan to create a proper Debian package from the kernel source.
I will share all of my files in the afternoon (CET).