Moto G 2014 (motorola-titan)

From postmarketOS
Jump to: navigation, search
Motorola Moto G (2nd gen)
Moto G 2014 running Weston
Moto G 2014 running Weston
Manufacturer Motorola
Name Moto G (2nd gen)
Codename titan
Released 2014
Original software Android 4.4.4 on Linux 3.10
Hardware
Chipset Qualcomm MSM8226 Snapdragon 400
CPU Quad-core 1.2 GHz Cortex-A7
GPU Adreno 305
Display 720x1280 IPS LCD
Storage 8 GB
Memory 1 GB

Contributors

What works

  • [x] Kernel compiles (LineageOS)
  • [x] Booting the system
  • [ ] Splash screens
  • [x] Unlock the root encrypted partition
  • [x] Framebuffer graphics
  • [x] Weston
  • [x] Touchscreen
  • [ ] XWayland
  • [ ] Battery
  • [ ] Flash light
  • [ ] RGB front LED
  • [ ] Backlight control
  • [x] flash_system
  • [x] boot
  • [ ] flash_kernel
  • [ ] wifi

What doesn't work well

  • I had to disable -Werror in order to compile the kernel
  • initfs hook is not executed
  • Splash screens don't work and I cannot get framebuffer working in initramfs
  • Screen is black after I've entered the password. Workaround:
sh /etc/postmarketos-mkinitfs/hooks/00-device-motorola-titan.sh`
# From initramfs
/tmp # show_splash splash1.ppm.gz 
fbsplash: short read

This is written to dmesg everytime you type the previous command:

[   74.192213,0] mdss_fb_alloc_fb_ion_memory: alloc 0x398000B vaddr = e9b99000 (0x00200000 iova) for fb0
[   74.192374,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.192685,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.192846,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.193004,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.193106,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.193263,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.193366,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.193522,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.193624,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.193780,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.193882,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.194037,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.194138,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.194292,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.194446,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.194547,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.194702,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.194804,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.194960,0] vm_start=b6ad2000 vm_end=b6e6a000 vm_page_prot=1799
[   74.196516,0] lm3630a_bl 0-0038: wake up and re-init chip

Useful stuff

White LED:

echo 255 > /sys/devices/leds-qpnp-rgb-e1d8be00/leds/white/brightness

RGB LED documentation

Links

Drivers table

Component Brand Module Works?
Accelerometer Bosch Sensortec MEMS accelerometer sensor driver bma2x2
Framebuffer mdss Yes
WiFi wcnss
Storage
USB networking