View Single Post
Posts: 309 | Thanked: 456 times | Joined on Jan 2010
#40
I followed Fabry's guide here to get kernel-power47 patched with uboot.
http://talk.maemo.org/showpost.php?p=876169&postcount=1

I've written a script to add uboot to power47 automatically and a guide to flash the kernel. If using multiboot this will replace and backup the original.

You should be able to copy/paste the relevant steps into xterm.


After reboot, leave keyboard open to boot from MMC card
Close keyboard on reboot to start power47 kernel.

[EDIT] Updated steps 7-8 to flash kernel ready for reboot.
[EDIT2] corrected flasher command in step 7

Code:
sudo gainroot
cd /home/user

# Prerequisites
apt-get install -y wget flasher mkimage

#1. Download power kernel deb file from repository and extract fiasco image from it
wget http://repository.maemo.org/extras-devel/pool/fremantle/free/k/kernel-power/kernel-power_2.6.28-10power47_armel.deb -O kernel-power_2.6.28-10power47_armel.deb
dpkg --fsys-tarfile kernel-power_2.6.28-10power47_armel.deb | tar -xf - ./boot/zImage-2.6.28.10-power47.fiasco
mv ./boot/zImage-2.6.28.10-power47.fiasco /home/user/
rm -r boot
rm kernel-power_2.6.28-10power47_armel.deb

#2. Download Matan's u-boot from repository (it is named u-boot-for-power-kernel) and extract file image from it
wget http://repository.maemo.org/extras-devel/pool/fremantle/free/u/u-boot-for-power-kernel/u-boot-for-power-kernel_1.0_all.deb -O u-boot-for-power-kernel_1.0_all.deb
dpkg --fsys-tarfile u-boot-for-power-kernel_1.0_all.deb | tar -xf - ./usr/lib/u-boot/u-boot.bin.0x38000/u-boot.bin.0x38000
mv ./usr/lib/u-boot/u-boot.bin.0x38000/u-boot.bin.0x38000 /home/user/vmlinuz-2.6.28.10-power47
rm -r usr
rm u-boot-for-power-kernel_1.0_all.deb

#3. Unpack Fiasco image
flasher -u -F zImage-2.6.28.10-power47.fiasco
rm zImage-2.6.28.10-power47.fiasco

#4. Transform zImage in uImage (necessary because u-boot boots Kernel only in uImage file format)
mkimage -A arm -O linux -T kernel -C none -a 80008000 -e 80008000 -n "Power Kernel v47" -d zImage uImage 

#5. Add power kernel uImage at end of previous file (starting write at offset 0x38000 aka 448 blocks)
dd if=uImage of=vmlinuz-2.6.28.10-power47 seek=448

#6. Remove zImage & uImage
rm zImage
rm uImage
The next part is taken from the maemo overclock wiki:

Code:
#7. Flash the kernel
softupd -vv -s --local(that is a double v)
Open new terminal
Code:
sudo gainroot
flasher --local -f -k /home/user/vmlinuz-2.6.28.10-power47
You'll see the flashing (takes some time)
# Type "sync" to save changes

Code:
#8. Optional - Multiboot - backup and replace Power47
mv /boot/zImage-2.6.28.10-power47 /boot/multiboot/vmlinuz-2.6.28.10-power47-bak
mv /boot/multiboot/vmlinuz-2.6.28.10-power47 /boot/multiboot/vmlinuz-2.6.28.10-power47-bak
mv /home/user/vmlinuz-2.6.28.10-power47 /boot/multiboot/vmlinuz-2.6.28.10-power47

Last edited by [DarkGUNMAN]; 2011-06-26 at 11:18.
 

The Following 22 Users Say Thank You to [DarkGUNMAN] For This Useful Post: