View source for Openmoko on HTC-Dream
From Openmoko
You do not have permission to edit this page, for the following reasons:
You can view and copy the source of this page:
Return to Openmoko on HTC-Dream.
You do not have permission to edit this page, for the following reasons:
You can view and copy the source of this page:
Return to Openmoko on HTC-Dream.
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 user space. This work is done. I booted an Openmoko user space. The way to do it on your own is described below.
Start into fastboot mode
wget http://ftp.o2s.ch/pub/openmoko/images/shr-fso-console-image-eglibc-ipk--20091106-htcdream.rootfs.yaffs2 -O system.yaffs2 fastboot flash system system.yaffs2
Always get a 403: Forbidden. File seems to be there, but Iam not able to download it.
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.
Download an kernel image from:
Select -htcdream-fastboot_sd.bin for SD-card booting or -htcdream-fastboot_mtd.bin for booting from internal flash.
Rename it to openmoko-boot.img (to keep consistent with the howto ;) )
Use the kernel from the replicants. Fetch the kernel sourcecode from http://gitorious.org/replicant/gnulinuxkernel And configure it as you whish.
export HACK_DIR=`pwd` git clone git://gitorious.org/replicant/gnulinuxkernel.git cd gnulinuxkernel git checkout -b leviathan cp arch/arm/configs/openmoko .config 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-msm /mnt/foo/lib/modules/ sync umount /mnt/foo
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/gnulinuxkernel/arch/arm/boot/zImage \ --ramdisk ./newramdisk.cpio.gz -o openmoko-boot.img
mkbootimg --cmdline "console=tty0 no_console_suspend=1 root=/dev/mtdblock5 rootfstype=yaffs2 rootdelay=2 fbcon=rotate:1 rw" \ --kernel $HACK_DIR/gnulinuxkernel/arch/arm/boot/zImage \ --ramdisk ./newramdisk.cpio.gz -o openmoko-boot.img
fastboot flash boot openmoko-boot.img
fastboot reboot
mkdir firmware cd firmware wget http://ftp.o2s.ch/pub/openmoko/firmware-wl12xx/wl1251-fw.bin wget http://ftp.o2s.ch/pub/openmoko/firmware-wl12xx/wl1251-nvs.bin scp * root@192.168.0.202:/lib/firmware/
wget http://ftp.o2s.ch/pub/openmoko/packages/compat-wireless-msmwifi_2009-10-28-.4_htcdream.ipk scp compat-wireless-msmwifi_2009-10-28-.4_htcdream.ipk root@192.168.0.202:~ ssh root@192.168.0.202 <enter> opkg install compat-wireless-msmwifi_2009-10-28-.4_htcdream.ipk
Download http://wireless.kernel.org/download/compat-wireless-2.6/compat-wireless-2.6.tar.bz2 Unpack it. Change into the folder.
make ARCH=arm CROSS_COMPILE=/usr/local/openmoko/arm/arm-angstrom-linux-gnueabi/bin/ KLIB=$HACK_DIR/gnulinuxkernel KLIB_BUILD=$HACK_DIR/gnulinuxkernel "$@"
Change up
cd ..
Run following script
#!/bin/sh compat=compat-wireless-2009-09-30/ mkdir modules/ for i in $compat/net/mac80211/mac80211.ko \ $compat/net/wireless/cfg80211.ko \ $compat/net/wireless/lib80211.ko \ $compat/net/wireless/lib80211_crypt_wep.ko \ $compat/net/wireless/lib80211_crypt_ccmp.ko \ $compat/net/wireless/lib80211_crypt_tkip.ko \ $compat/drivers/net/wireless/wl12xx/wl1251_sdio.ko \ $compat/net/rfkill/rfkill_backport.ko \ $compat/drivers/net/wireless/wl12xx/wl1251.ko; do cp $i modules/ done
Copy it onto your device
scp -r modules root@192.168.0.202:~
Connect to your device and start the networking:
insmod rfkill_backport.ko insmod cfg80211.ko insmod mac80211.ko insmod lib80211.ko insmod lib80211_crypt_tkip.ko insmod lib80211_crypt_wep.ko insmod lib80211_crypt_ccmp.ko insmod wl1251.ko insmod wl1251_sdio.ko