HTC HD2 (htc-leo)

From postmarketOS
Jump to navigation Jump to search
HTC HD 2
HTC HD2
HTC HD2
Manufacturer HTC
Name HD 2
Codename htc-leo
Released 2009
Category testing
Original software Windows Mobile 6.5 Professional
Hardware
Chipset Qualcomm QSD8250 Snapdragon S1
CPU 1.0 GHz Scorpion
GPU Adreno 200
Display 480x800
Storage 512 MB
Memory 448 MB
Architecture armv7
Non-Android based device
Features
USB Networking
Broken
Flashing
Works
Touchscreen
Works
Display
Works
WiFi
Works
Xwayland
FDE
Mainline
Battery
Works
3D Acceleration
Broken
Accelerometer
Audio
Bluetooth
Camera
GPS
Mobile data
SMS
Calls
USB OTG



Contributors

  • Langoor
  • (others on IRC)
  • Dominduchami
  • (others on the Matrix chat : Henri Dellal, knuxify and others)

What works

  • Kernel boots
  • Display and touchscreen works
  • Boots with xfce and mate (UI's that require 3D acceleration are not working)
  • Wifi works correctly

What does not work

  • Usb networking
  • 3D acceleration
  • Everything else

Progress

  • Got the kernel to compile, based on maniacx's nougat android kernel
  • The qsd8k-legacy kernel boots correctly : [1]
  • Add firmware for wlan

Next steps

  • Add support for bluetooth and 3D acceleration (?)

Bootloaders

Because of the age of the HD2, there are serval 3rd party bootloaders available, most commonly used:

  • Haret, Haret is a bootloader (provided as haret.exe) to boot linux or android from WITHIN windows mobile, you start windows mobile, not a great choice for postmarketOS.
  • a(MagLDR), Propitary 3rd party bootloader developed by Cotulla, some folks over at Tytung's android forum, reverse egineered it and created aMagLdr, still propietary (?)
  • cLK, based on littlekernel and download possible with cwm or twrp recovery embedded, seems to be the best option. Littlekernel also provides fastboot wich is handy. Only this bootloader is tested right now.

Installation

MAGLDR would probably also work, but using CLK is easier because of fastboot access.

  • Install the rootfs using an SD Card pmbootstrap install --sdcard=/dev/sd?
  • Insert the SD Card
  • Boot the device into the CLK bootloader
  • Flash the kernel to the boot partition using pmbootstrap flasher flash_kernel (flashing to the additional partitions such as sboot or tboot should work too)
  • Select the first option (or the other boot partion if it was chosen in the previous step) to boot the kernel

Flashing the rootfs and the kernel to NAND would probably work on the Tmobile US verion of HD2 (it has 1gb of storage space), but it is untested for now.

How the wlan support was done

  • Find what wlan chip is being used : bcm4329 in this case
  • Read WiFi page
  • Check what package contains firmware for the chip, in this case it is "firmware-aosp-broadcom-wlan"
  • Change the firmware path in the kernel config
  • Add a nonfree_firmware section :
nonfree_firmware() {
	pkgdesc="Wifi firmware"
	depends="firmware-aosp-broadcom-wlan"
	mkdir "$subpkgdir"
}
  • Update checksums, rebuild device and linux packages and boot the device

See also