Openmoko on HTC-Dream
From Openmoko
Contents |
Introduction
HTC-Dream is a android based phone. Android is running on top of a linux kernel. So we have basically no work to do using this kernel to boot an OpenMoko userspace. This work is done. I booted an OpenMoko userspace. The way to do it on your own is described below.
Working
- USB-Ethernet
- Framebuffer console
Setup the rootfs
- In this example setup I used a SD-Card as root partition.
- In order to follow this guide format a SD-Card (just like installing OpenMoko on NeoFreerunner).
- First partition: vfat
- Second partition: ext2 (root)
- mount it and extract http://downloads.openmoko.org/distro/releases/Om2008.12/Om2008.12-om-gta02.rootfs.tar.gz to it
Bootloader
You need to install fastboot. In order to do this, you will have need to have "root" on the existing android device or already have a developer version of the bootloader installed.
Kernel
Building new kernel
Use 2.6.29 from android.git.kernel.org. 2.6.27 rebooted after a few minutes without any reason.
export HACK_DIR=`pwd` git clone git://android.git.kernel.org/kernel/msm.git wget http://wiki.openmoko.org/images/3/3b/Openmoko-htc-dream-kernel-config.txt cp Openmoko-htc-dream-kernel-config.txt msm/.config cd msm make CROSS_COMPILE=/usr/local/openmoko/arm/arm-angstrom-linux-gnueabi/bin/ ARCH=arm sudo make CROSS_COMPILE=/usr/local/openmoko/arm/arm-angstrom-linux-gnueabi/bin/ ARCH=arm modules_install sudo mv /lib/modules/2.6-29-openmoko-htc-dream /mnt/foo/lib/modules/ sync umount /mnt/foo
Building boot.img
mkdir $HACK_DIR/mk_boot_img cd $HACK_DIR/mk_boot_img wget http://wiki.openmoko.org/images/9/92/Mkbootimg.bin wget http://wiki.openmoko.org/images/f/f6/Newramdisk.cpio.gz mv Newramdisk.cpio.gz newramdisk.cpio.gz sudo cp Mkbootimg.bin /usr/bin/mkbootimg mkbootimg --cmdline "console=tty0 no_console_suspend=1 root=/dev/mmcblk0p2 rootdelay=2 fbcon=rotate:1" \ --kernel $HACK_DIR/msm/arch/arm/boot/zImage \ --ramdisk ./newramdisk.cpio.gz -o openmoko-boot.img
Flashing boot.img
- Start into fastboot
- execute
fastboot flash boot openmoko-boot.img
- restart then handy
fastboot reboot
WLAN
Driver
First we have to get running the kernel part with:
mkdir $HACK_DIR/wlan_git cd $HACK_DIR/wlan_git git clone git://android.git.kernel.org/platform/system/wlan/ti.git wget http://www.o2s.ch/pub/wireless_2.6.29.patch patch -p1 < ../wireless_2.6.29.patch cd ti/sta_dk_4_0_4_32 export KERNEL_DIR=$HACK_DIR/msm make sudo ifconfig usb0 192.168.0.200 scp wlan.ko root@192.168.0.202:~ ssh root@192.168.0.202 Password: <just press enter> insmod wlan.ko iwconfig root@om-gta02:~# iwconfig lo no wireless extensions. dummy0 no wireless extensions. rmnet0 no wireless extensions. rmnet1 no wireless extensions. rmnet2 no wireless extensions. usb0 no wireless extensions. tiwlan0 no wireless extensions. exit
Firmware
cd CUDK/tiwlan_loader make scp tiwlan_loader.bin root@192.168.0.202:~ ssh root@192.168.0.202 Password: <just press enter> root@om-gta02:~# ./tiwlan_loader.bin --help Usage: ./wlan_loader [driver_name] [options] -e <filename> - eeprom image file name. default=./nvs_map.bin -i <filename> - init file name. default=tiwlan.ini -f <filename> - firmware image file name. default=firmware.bin