Openmoko on HTC-Dream

From Openmoko

Revision as of 17:34, 20 July 2009 by Leviathan (Talk | contribs)

Jump to: navigation, search

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.

Setup the rootfs

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

Firmware

**Coming soon**
Personal tools

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.

Setup the rootfs

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

Firmware

**Coming soon**