Openmoko on HTC-Dream
From Openmoko
(catspec Category:Openmoko based distributions) |
(→Current status) |
||
(14 intermediate revisions by 4 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 | ||
− | * | + | * Xorg |
* Wifi | * Wifi | ||
* Touchscreen | * Touchscreen | ||
− | + | * Phonecalls | |
− | + | * ALSA | |
− | * Phonecalls | + | |
− | + | ||
− | + | ||
− | * ALSA | + | |
== Setup the rootfs == | == Setup the rootfs == | ||
Line 24: | 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: | + | ** Second partition: ext3 (root) |
− | * mount it and extract http://ftp.o2s.ch/pub/openmoko/images/shr-full-eglibc-ipk-- | + | * 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 == | ||
Line 39: | Line 48: | ||
=== Using precompiled image === | === Using precompiled image === | ||
Download an kernel image from: | Download an kernel image from: | ||
− | * http://ftp.o2s.ch/pub/openmoko/ | + | * 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) | (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 === | ||
Line 52: | Line 57: | ||
export HACK_DIR=`pwd` | export HACK_DIR=`pwd` | ||
− | git clone git://gitorious.org/ | + | git clone git://gitorious.org/htc-msm-2-6-32/leviathan-incoming.git |
− | cd | + | cd leviathan-incoming |
− | git checkout -b | + | git checkout --track -b msm-gnuconform orgigin/msm-gnuconform |
− | git pull | + | 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. | + | sudo mv /lib/modules/2.6.32 /mnt/foo/lib/modules/ |
sync | sync | ||
umount /mnt/foo | umount /mnt/foo | ||
Line 74: | Line 79: | ||
==== For SD-card rootfs ==== | ==== 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/ | + | --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 | ||
==== For internal rootfs ==== | ==== For internal rootfs ==== | ||
mkbootimg --cmdline "console=tty0 no_console_suspend=1 root=/dev/mtdblock5 rootfstype=yaffs2 rootdelay=2 fbcon=rotate:1 rw" \ | mkbootimg --cmdline "console=tty0 no_console_suspend=1 root=/dev/mtdblock5 rootfstype=yaffs2 rootdelay=2 fbcon=rotate:1 rw" \ | ||
− | --kernel $HACK_DIR/ | + | --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 93: | Line 98: | ||
mkdir firmware | mkdir firmware | ||
cd firmware | cd firmware | ||
− | wget http://ftp.o2s.ch/pub/openmoko/firmware-wl12xx/wl1251-fw.bin | + | wget http://ftp.o2s.ch/pub/openmoko/htcdream/firmware-wl12xx/wl1251-fw.bin |
− | wget http://ftp.o2s.ch/pub/openmoko/firmware-wl12xx/wl1251-nvs.bin | + | wget http://ftp.o2s.ch/pub/openmoko/htcdream/firmware-wl12xx/wl1251-nvs.bin |
scp * root@192.168.0.202:/lib/firmware/ | scp * root@192.168.0.202:/lib/firmware/ | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Screenshots == | == Screenshots == | ||
Line 158: | Line 106: | ||
[[Image:Image2.jpg]] | [[Image:Image2.jpg]] | ||
− | [[Category:Openmoko | + | [[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
- 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 Neo Freerunner).
- First partition: vfat
- Second partition: ext3 (root)
- 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.
[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/