Jump to content

HTC One M8 (htc-m8)

From postmarketOS Wiki
HTC One M8
HTC One M8
HTC One M8
Manufacturer HTC
Name One M8
Codename htc-m8
Released 2014
Type handset
Hardware
Chipset Qualcomm Snapdragon 801 (MSM8974AB)
CPU 4x 2.45 GHz Krait 400
GPU Adreno 330
Display 1080x1920 Super LCD3
Storage 16 or 32 GB
Memory 2 GB LPDDR3
Architecture armv7
Software
Original software Android
postmarketOS
Category testing
Pre-built images
Whether pre-built images are available here.
no
Features
Flashing
It is possible to flash the device with pmbootstrap flasher.
Works
USB Networking
After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system).
Works
Battery
Charging and battery level reporting works
Works
Screen
Display works. Ideally with sleep mode and brightness control.
Works
Touchscreen
Works
Multimedia
3D Acceleration
Untested
Audio
Audio playback, microphone, headset and buttons.
Untested
Camera
Broken
Connectivity
WiFi
Works
Bluetooth
Untested
GPS
Untested
Modem
Calls
Broken
SMS
Broken
Mobile data
Broken
Miscellaneous
FDE
Full disk encryption and unlocking with unl0kr.
Untested
USB OTG
USB On-The-Go or USB-C Role switching
Works
Sensors
Accelerometer
Auto screen rotation works in desktops e.g. Phosh or Plasma Mobile
Untested


Contributors

Maintainers

Users owning this device


Bootloader unlocking

Although HTC supports unlocking the bootloader through an online service on https://www.htcdev.com/, this makes postmarketOS depend on HTC in the long term, which is dangerous. There is an exploit for the Windows Phone version of the M8 which would allow to chainload linux in the long run.

How to enter flash mode

Hold the Power and Vol- button while the device is off, or hold the Vol- and then hold the Power button while the phone is on so it will force-reboot to the hboot mode, then select fastboot.

Installation

The Device Tree image is not generated by pmbootstarp properly. Copying one from a TWRP boot image into the initramfs then recompiling works. Use this tool (or download the whole dt.img from me) to unpack the TWRP image, then copy the boot.img-htc-m8-dt file to the ~/.local/var/pmbootstrap/chroot_rootfs_htc-m8/boot, rename it to dt.img and pmbootstrap install. After that, just use pmbootstrap flasher flash_kernel and pmbootstrap flasher flash_rootfs.
The Device Tree image is now generated properly and the standard pmbootstrap flasher flash_kernel and pmbootstrap flasher flash_rootfs can be used to install.

Note The device might freeze after flashing. If it doesn't boot after 5 minutes, force-reboot it (hold the power button until the device restarts)

The device currently seems to get as far as booting the kernel but freezes before SSH becomes fully available (or displays Connection refused when trying to connect before it freezes.

See also