Hi! We're discussing a clarification of the content license; please look over to Current events if you're interested in editing.

Dream

From Htc-linux

Revision as of 15:08, 2 February 2010 by GNUtoo (Talk | contribs)
Jump to: navigation, search

Contents

Introduction

The HTC Dream comes with android installed,you need to "root" it in order to be able to do what you want such as software modifications.

Here are some newer links that point to external resources that explain how to get "root":

XDA developers forum: [1] Android and me: [2]

TODO: If the links are outdated please go ahead and update them.

Research

Kernel

Kernel#Kernel_for_QCT_MSM7xxxA_based_devices

Note openmoko-msm-2-6-29 tree. It aims for non-android userspace and uses wl12xx for wifi instead of ti1251 driver. also has "refresh hack" (see below) added. TODO: add such branch in linuxtogo kernel.git for easier referrenece

Android

Android comes with several prorietary components :

  • akmd -> compas/acceleratomethers [1]
  • libgps.so -> gps
  • libhtc_ril.so -> telephony [2]
  • libhgl.so -> 3D opengl ES driver
  • others components

But also some non free applications such as the market and others

Standard GNU/Linux

Status

The status is currently compiled against FSO userspace and leviathan_incomming kernel branch at git://gitorious.org/htc-msm-2-6-32/leviathan-incoming.git

Component Working? Notes Info on how to get it working TODO
screen(framebuffer) Kdrive and xorg work fine with kernel patches,but I didn't find yet how to enable xrandr -o 1 on xorg need workaround Xfbdev(kdrive) and xorg needs "refresh hack" http://git.linuxtogo.org/?p=groups/mobile-linux/kernel.git;a=commitdiff;h=fcf0dc8dc232b237dc8d3098a5de09fab0ad9ba3 , and xorg also needs that patch: http://git.linuxtogo.org/?p=groups/mobile-linux/kernel.git;a=commit;h=d61ae9e6fd1616391f696cb662c388433891c426 for better screen detection
  • look if xrandr -o 1 work with xf86-video-msm(didn't seem to work with xf86-video-fb) ,and make a recipe for xf86-video-msmfb driver(which is avaliable here: git://codeaurora.org/quic/xwin/xf86-video-msm.git )
touchscreen need that patch:http://git.linuxtogo.org/?p=groups/mobile-linux/kernel.git;a=commit;h=f7a220350da29a4263c6904fa6d4df38fc0bc512 the kernel patch transforms it in a tslib driver
trackball yes a bit slow
sound see notes,nearly working Nearly working,some (not so)rare buffer underrun remain
  • remove the nasty silent hack
  • fix the remaining routing bugs
  • clean the driver using Mark Brown's comment in the alsa-devel mailing list
Modem/GSM incomplete I made a call but was unable to retrive sim contacts(little python prblem),sound works because the baseband modem takes care of it modify /etc/frameworkd.conf to use qualcomm_msm driver
wifi use wireless-compat use that howto : http://bobcopeland.com/android_wifi.html to make it work
Power management unknow,using wakelocks no apm(something much better that can lower the clock of the components was implemented in the kernel)
GPS has been decoded
  • ask how it works and test it
keyboard yes needs xmodmap to have android's keys,not done yet,problem with the m key under Xfbdev(kdrive)(press 1 time=> KeyPress it,press a second time => KeyRelease),works fine with xorg
  • need to map the @#$ etc... keys
usbnet yes available on usb0 on the host computer and target device you just need to select the msm controller in usb gadget,and of course use usbnet,should also now work as module
Accelerated GL no OEM's Provide libhgl.so Needs to be reverse engineered on a per device basis, most chips are currently qualcomm. Means no accelerated media (H264 etc.)
  • look at xf86-video-msmfb driver(which is avaliable here: git://codeaurora.org/quic/xwin/xf86-video-msm.git ) and the respective 2.6.29 kernel and port the kernel part forward
camera we have a driver but it makes some oops
  • debug the oops
vibrator works fine use something like this to make it vibrate:
echo 2000 > /sys/class/timed_output/vibrator/enable 

needs CONFIG_ANDROID_TIMED_GPIO

compas
lcd backlight was working as led but there were some issues with FSO,so it is now converted from a led driver to a real backlight one
  • make the sysfs node do something
Accelerometers Unknow
Bluetooth connected trough serial,optional firmware(needed for higher speeds)
echo 1 > /sys/class/rfkill/rfkill0/state
hciattach /dev/ttyHS0 texas

For seeing it

  • Make it not fail while scanning(try proprietary firmware)