Openmoko on HTC-Dream

From Openmoko

(Difference between revisions)
Jump to: navigation, search
(Current status)
 
(45 intermediate revisions by 9 users not shown)
Line 1: Line 1:
 +
= Current status =
 +
* <span style="background:green"> '''The HTC Dream support has been merged in the SHR distribution.'''</span>
 +
* [http://trac.shr-project.org/trac/wiki/Devices/HTCDream/InstallGuide An Installation guide] is available on the SHR wiki
 +
 +
== Headline text ==
 +
 +
= History =
 +
 +
<span style="background:red">The following page is kept for historical reasons only</span>
 +
 
== Introduction ==
 
== Introduction ==
 +
 
HTC-Dream is a android based phone.
 
HTC-Dream is a android based phone.
 
Android is running on top of a Linux kernel.
 
Android is running on top of a Linux kernel.
Line 6: Line 17:
 
I booted an Openmoko user space.
 
I booted an Openmoko user space.
 
The way to do it on your own is described below.
 
The way to do it on your own is described below.
 +
For questions ask leviathan and GNUtoo in irc://irc.freenode.net/#htc-linux
 +
 +
''If leviathan doesn't answer, he might be smoking ATM or be working elsewhere.''
 +
''In this case, try to contact him on jabber, or leave him an offline message: leviathan@xmpp.ccczh.ch''
 +
 +
'''If links are down, just try the overlay'n directory. The site is outdated very fast!'''
 +
  
 
=== Working ===
 
=== Working ===
 
* USB-Ethernet
 
* USB-Ethernet
 
* Framebuffer console
 
* Framebuffer console
* Xfbdev
+
* Xorg
 +
* Wifi
 +
* Touchscreen
 +
* Phonecalls
 +
* ALSA
  
 
== Setup the rootfs ==
 
== Setup the rootfs ==
Line 16: Line 38:
 
* In order to follow this guide format a SD-Card (just like installing Openmoko on Neo Freerunner).
 
* In order to follow this guide format a SD-Card (just like installing Openmoko on Neo Freerunner).
 
**  First partition: vfat
 
**  First partition: vfat
** Second partition: ext2 (root)
+
** Second partition: ext3 (root)
* mount it and extract http://downloads.openmoko.org/distro/testing/daily/om-gta02/20090616/openmoko-fso-console-image-glibc-ipk--20090616-om-gta02.rootfs.tar.gz to it.
+
* mount it and extract http://ftp.o2s.ch/pub/openmoko/htcdream/repo/images/htcdream/shr-full-eglibc-ipk--20100509-htcdream.rootfs.tar.bz2 to it.
 +
 
 
== Bootloader ==
 
== Bootloader ==
 
You need to install fastboot.
 
You need to install fastboot.
Line 23: Line 46:
  
 
== Kernel ==
 
== Kernel ==
 +
=== Using precompiled image ===
 +
Download an kernel image from:
 +
* http://ftp.o2s.ch/pub/openmoko/htcdream/repo/images/htcdream/zImage-2.6.32%2br17%2bgitr636fa4daf243826ef6cebb64dd0509f3b079fcb5-r17-htcdream.bin
 +
(I had to disable anonymous ftp because some people misused it to upload copyrighted movies and pr0n. Sry. -- leviathan)
 +
 
=== Building new kernel ===
 
=== Building new kernel ===
I forked the android kernel and I'm adding new features daily
+
Use the kernel from the replicants.
Fetch the kernel sourcecode from http://gitorious.org/openmoko-msm-2-6-29
+
Fetch the kernel sourcecode from http://gitorious.org/replicant/gnulinuxkernel
 
And configure it as you whish.
 
And configure it as you whish.
  
 
  export HACK_DIR=`pwd`
 
  export HACK_DIR=`pwd`
  git clone git://gitorious.org/openmoko-msm/openmoko-msm.git
+
  git clone git://gitorious.org/htc-msm-2-6-32/leviathan-incoming.git
  cd openmoko-msm
+
  cd leviathan-incoming
  cp arch/arm/configs/openmoko_msm .config
+
git checkout --track -b msm-gnuconform orgigin/msm-gnuconform
 +
  git pull
 +
wget http://ftp.o2s.ch/defconfig_OE3 -O .config
 
  make CROSS_COMPILE=/usr/local/openmoko/arm/arm-angstrom-linux-gnueabi/bin/ ARCH=arm
 
  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 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/
+
  sudo mv /lib/modules/2.6.32 /mnt/foo/lib/modules/
 
  sync
 
  sync
 
  umount /mnt/foo
 
  umount /mnt/foo
Line 46: Line 76:
 
  mv Newramdisk.cpio.gz newramdisk.cpio.gz
 
  mv Newramdisk.cpio.gz newramdisk.cpio.gz
 
  sudo cp Mkbootimg.bin /usr/bin/mkbootimg
 
  sudo cp Mkbootimg.bin /usr/bin/mkbootimg
 +
 +
==== For SD-card rootfs ====
 
  mkbootimg --cmdline "console=tty0 no_console_suspend=1 root=/dev/mmcblk0p2 rootdelay=2 fbcon=rotate:1" \
 
  mkbootimg --cmdline "console=tty0 no_console_suspend=1 root=/dev/mmcblk0p2 rootdelay=2 fbcon=rotate:1" \
  --kernel $HACK_DIR/msm/arch/arm/boot/zImage \
+
  --kernel $HACK_DIR/leviathan-incoming/arch/arm/boot/zImage \
 +
--ramdisk ./newramdisk.cpio.gz -o openmoko-boot.img
 +
 
 +
==== For internal rootfs ====
 +
mkbootimg --cmdline "console=tty0 no_console_suspend=1 root=/dev/mtdblock5 rootfstype=yaffs2 rootdelay=2 fbcon=rotate:1 rw" \
 +
--kernel $HACK_DIR/leviathan-incoming/arch/arm/boot/zImage \
 
  --ramdisk ./newramdisk.cpio.gz -o openmoko-boot.img
 
  --ramdisk ./newramdisk.cpio.gz -o openmoko-boot.img
  
Line 54: Line 91:
 
* execute
 
* execute
 
  fastboot flash boot openmoko-boot.img
 
  fastboot flash boot openmoko-boot.img
* restart then handy
+
* restart the phone
 
  fastboot reboot
 
  fastboot reboot
  
 
== WLAN ==
 
== WLAN ==
* http://bobcopeland.com/android_wifi.html
+
=== Firmware ===
* Look onto this section with the calibration files
+
mkdir firmware
 +
cd firmware
 +
wget http://ftp.o2s.ch/pub/openmoko/htcdream/firmware-wl12xx/wl1251-fw.bin
 +
wget http://ftp.o2s.ch/pub/openmoko/htcdream/firmware-wl12xx/wl1251-nvs.bin
 +
scp * root@192.168.0.202:/lib/firmware/
  
 
== Screenshots ==
 
== Screenshots ==
Line 65: Line 106:
 
[[Image:Image2.jpg]]
 
[[Image:Image2.jpg]]
  
[[Category:Distributions]]
+
[[Category:Openmoko distributions]]

Latest revision as of 19:23, 30 April 2011

Contents

[edit] Current status

  • The HTC Dream support has been merged in the SHR distribution.
  • An Installation guide is available on the SHR wiki

[edit] Headline text

[edit] History

The following page is kept for historical reasons only

[edit] 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 user space. This work is done. I booted an Openmoko user space. The way to do it on your own is described below. For questions ask leviathan and GNUtoo in irc://irc.freenode.net/#htc-linux

If leviathan doesn't answer, he might be smoking ATM or be working elsewhere. In this case, try to contact him on jabber, or leave him an offline message: leviathan@xmpp.ccczh.ch

If links are down, just try the overlay'n directory. The site is outdated very fast!


[edit] Working

  • USB-Ethernet
  • Framebuffer console
  • Xorg
  • Wifi
  • Touchscreen
  • Phonecalls
  • ALSA

[edit] Setup the rootfs

[edit] 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.

[edit] Kernel

[edit] Using precompiled image

Download an kernel image from:

(I had to disable anonymous ftp because some people misused it to upload copyrighted movies and pr0n. Sry. -- leviathan)

[edit] Building new kernel

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/htc-msm-2-6-32/leviathan-incoming.git
cd leviathan-incoming
git checkout --track -b msm-gnuconform orgigin/msm-gnuconform
git pull
wget http://ftp.o2s.ch/defconfig_OE3 -O .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.32 /mnt/foo/lib/modules/
sync
umount /mnt/foo

[edit] 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

[edit] For SD-card rootfs

mkbootimg --cmdline "console=tty0 no_console_suspend=1 root=/dev/mmcblk0p2 rootdelay=2 fbcon=rotate:1" \
--kernel $HACK_DIR/leviathan-incoming/arch/arm/boot/zImage \
--ramdisk ./newramdisk.cpio.gz -o openmoko-boot.img

[edit] For internal rootfs

mkbootimg --cmdline "console=tty0 no_console_suspend=1 root=/dev/mtdblock5 rootfstype=yaffs2 rootdelay=2 fbcon=rotate:1 rw" \
--kernel $HACK_DIR/leviathan-incoming/arch/arm/boot/zImage \
--ramdisk ./newramdisk.cpio.gz -o openmoko-boot.img

[edit] Flashing boot.img

  • Start into fastboot
  • execute
fastboot flash boot openmoko-boot.img
  • restart the phone
fastboot reboot

[edit] WLAN

[edit] Firmware

mkdir firmware
cd firmware
wget http://ftp.o2s.ch/pub/openmoko/htcdream/firmware-wl12xx/wl1251-fw.bin
wget http://ftp.o2s.ch/pub/openmoko/htcdream/firmware-wl12xx/wl1251-nvs.bin
scp * root@192.168.0.202:/lib/firmware/

[edit] Screenshots

Image.jpg Image2.jpg

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 user space. This work is done. I booted an Openmoko user space. The way to do it on your own is described below.

Working

  • USB-Ethernet
  • Framebuffer console
  • Xfbdev

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

I forked the android kernel and I'm adding new features daily Fetch the kernel sourcecode from http://gitorious.org/openmoko-msm-2-6-29 And configure it as you whish.

export HACK_DIR=`pwd`
git clone git://gitorious.org/openmoko-msm/openmoko-msm.git
cd openmoko-msm
cp arch/arm/configs/openmoko_msm .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

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

Screenshots

Image.jpg Image2.jpg