Difference between revisions of "Motorola Moto G4 Play (motorola-harpia)"

From postmarketOS
Jump to navigation Jump to search
(Add modem information to wiki page)
 
(31 intermediate revisions by 11 users not shown)
Line 1: Line 1:
 
{{Infobox device
 
{{Infobox device
 
| manufacturer = Motorola
 
| manufacturer = Motorola
| name = Moto G4 Play
+
| name = Moto G4 Play
 
| codename = motorola-harpia
 
| codename = motorola-harpia
 
| image = File:Motorola_Moto_G4_Play.png
 
| image = File:Motorola_Moto_G4_Play.png
 
| imagecaption = Moto G4 Play running Weston
 
| imagecaption = Moto G4 Play running Weston
 
| releaseyear = 2016
 
| releaseyear = 2016
 +
| category = community
 
| originalsoftware = Android 6.0.1
 
| originalsoftware = Android 6.0.1
 
| chipset = Qualcomm MSM8916 Snapdragon 410
 
| chipset = Qualcomm MSM8916 Snapdragon 410
| cpu = Quad-core 1.21GHz Cortex A53
+
| cpu = Quad-core 1.21 GHz Cortex-A53
 
| gpu = Adreno 306
 
| gpu = Adreno 306
 
| storage = 8GB or 16GB
 
| storage = 8GB or 16GB
Line 20: Line 21:
 
| status_wifi = Y
 
| status_wifi = Y
 
| status_xwayland = Y
 
| status_xwayland = Y
| status_fde =  
+
| status_fde = Y
 
| status_mainline = Y
 
| status_mainline = Y
| status_battery =
+
| status_battery = Y
 
| status_3d = Y
 
| status_3d = Y
 
| status_accel = Y
 
| status_accel = Y
 
| status_audio = Y
 
| status_audio = Y
 
| status_bluetooth = Y
 
| status_bluetooth = Y
| status_camera = N
+
| status_camera =
| status_gps = N
+
| status_gps = Y
| status_mobiledata = N
+
| status_mobiledata = Y
 
| status_sms = Y
 
| status_sms = Y
| status_calls =
+
| status_calls = Y
 
| booting = yes
 
| booting = yes
 
}}
 
}}
Line 42: Line 43:
  
 
== How to enter flash mode ==
 
== How to enter flash mode ==
Hold down POWER + Vol Down while booting to enter Flash Mode.
+
Hold down {{Button|Power}} + {{Button|Volume Down}} while booting to enter Flash Mode.
  
 
== Installation ==
 
== Installation ==
As some features are still in development for this device, the kernel needs to be built from source using envkernel. To do this, you'll need a copy of
 
the [https://gitlab.com/postmarketOS/pmbootstrap/ pmbootstrap tree], and the [https://github.com/msm8916-mainline/linux latest kernel tree]
 
for the device. Once you have those, and you have run <code>pmbootstrap init</code>, run the following commands:
 
  
<source>
+
=== Preparation ===
cd /path/to/linux/kernel
+
If necessary, unlock your bootloader by following the instructions on the [http://motorola-global-portal.custhelp.com/app/standalone/bootloader/unlock-your-device-a Motorola Support page].
source /path/to/pmbootstrap/helpers/envkernel.sh
 
make msm8916_defconfig pmos.config
 
make -j<cores>
 
pmbootstrap build --envkernel linux-postmarketos-qcom-msm8916
 
</source>
 
  
You will also need to install the [https://github.com/msm8916-mainline/lk2nd/releases/latest lk2nd bootloader], as it is required to handle some quirks
+
Install the [https://github.com/msm8916-mainline/lk2nd/releases/latest lk2nd bootloader], as it is required to handle some quirks
 
with msm8916 devices on mainline kernels. Flash the <code>lk2nd.img</code> image to the boot partition with <code>fastboot flash boot /path/to/lk2nd.img</code>. lk2nd
 
with msm8916 devices on mainline kernels. Flash the <code>lk2nd.img</code> image to the boot partition with <code>fastboot flash boot /path/to/lk2nd.img</code>. lk2nd
 
also provides a fastboot interface that allows for flashing kernels without overwriting lk2nd itself. To enter it, power on the device, then hold down Vol Down as soon
 
also provides a fastboot interface that allows for flashing kernels without overwriting lk2nd itself. To enter it, power on the device, then hold down Vol Down as soon
Line 64: Line 57:
 
[[File:Motorola-harpia_lk2nd_example.jpeg|x500px]]
 
[[File:Motorola-harpia_lk2nd_example.jpeg|x500px]]
  
After that, proceed with [[Installation_guide#Installation_and_flashing|installation]] as usual, using lk2nd's fastboot interface to flash the kernel and rootfs.
+
When you have lk2nd installed and running, follow [[Qualcomm_Snapdragon_410/412_(MSM8916)#Installation]].
  
=== Modem ===
+
== Usage ==
Modem is currently working on harpia, but as of writing, a few things are still waiting to be merged into pmaports. See [https://gitlab.com/postmarketOS/pmaports/-/merge_requests/907 pmaports!907]
+
=== Audio ===
for more information. This section will be removed once the required changes are merged into pmaports.
+
See [[Qualcomm_Snapdragon_410_(MSM8916)#Audio]].
 
 
'''Following these directions is not recommended until the required changes are in pmaports.''' If you would like to get modem working now, proceed with the above install guide, with the following
 
modifications:
 
  
* Use the <code>harpia-modem</code> branch of [https://gitlab.com/srxl/pmaports/-/tree/harpia-modem this] fork of pmaports:
 
<source>
 
cd ~/.local/var/pmbootstrap/cache_git/pmaports
 
git remote add harpia-modem https://gitlab.com/srxl/pmaports.git
 
git fetch harpia-modem
 
git checkout harpia-modem
 
</source>
 
* lk2nd needs to be built from source, as there are some required changes that have not been added to a release yet. The [https://github.com/msm8916-mainline/lk2nd#building README] on the lk2nd repo has instructions on how to do this.
 
 
== Usage ==
 
 
=== Modem ===
 
=== Modem ===
 
Follow the directions on [[Qualcomm_Snapdragon_410_(MSM8916)#Modem|this wiki page]] to use the modem. If you have a device model other than what is listed here, please edit the list below
 
Follow the directions on [[Qualcomm_Snapdragon_410_(MSM8916)#Modem|this wiki page]] to use the modem. If you have a device model other than what is listed here, please edit the list below
 
with the results of modem functionality testing.
 
with the results of modem functionality testing.
  
* '''XT1602:''' Modem working, can send and receive text messages. Calls untested.
+
* '''XT1602:''' Modem working, can send and receive text messages. Can initiate and answer phone calls. Mobile data does not work.
 +
* '''XT1604:''' Modem working, can send but not receive text messages. Can make phone calls and receive. The Modem doesn't always start on boot, you need to run mmcli -S for it to start working.
 +
* '''XT1607:''' Modem working, can send text messages. Earpiece and Mic1 work with phone calls. Had to manually load RETUS_6.0.1 NON-HLOS firmware, will document and maybe package alternate firmware.
 +
 
 +
=== Touchscreen ===
 +
synaptics s3203b: works ; others: unknown
  
 
== See also ==
 
== See also ==
* [https://gitlab.com/postmarketOS/pmaports/tree/master/device/device-motorola-harpia Device package]
+
* {{Device package|motorola-harpia|community}}
 
* [https://github.com/msm8916-mainline/linux Development kernel tree]
 
* [https://github.com/msm8916-mainline/linux Development kernel tree]
 +
 +
[[File:Motorola-harpia-uart-pins.jpg|200px|thumb|left|motorola-harpia UART pins location]]

Latest revision as of 00:00, 25 May 2021

Motorola Moto G4 Play
Moto G4 Play running Weston
Moto G4 Play running Weston
Manufacturer Motorola
Name Moto G4 Play
Codename motorola-harpia
Released 2016
Category community
Original software Android 6.0.1
Hardware
Chipset Qualcomm MSM8916 Snapdragon 410
CPU Quad-core 1.21 GHz Cortex-A53
GPU Adreno 306
Display HD (720x1280)
Storage 8GB or 16GB
Memory 1GB or 2GB
Architecture aarch64
Features
USB Networking
Works
Flashing
Works
Touchscreen
Works
Display
Works
WiFi
Works
Xwayland
Works
FDE
Works
Mainline
Works
Battery
Works
3D Acceleration
Works
Accelerometer
Works
Audio
Works
Bluetooth
Works
Camera
GPS
Works
Mobile data
Works
SMS
Works
Calls
Works
USB OTG
NFC



Users owning this device

  • ChexM1xstar (Notes: XT1601)
  • Ityt (Notes: XT1602; Plasma-mobile unstable, Phosh stable)
  • Libertus (Notes: XT1600)
  • Minecrell
  • R31k0
  • Sorixelle
  • Thejsa (Notes: 16GB/1GB XT1604; loaned to family)
  • Timbz
  • Unrznbl (Notes: XT1607, need firmware-from-device updater in order for my modem to work, shelli ui works well, needs mms then daily driver!)
  • VR25 (Notes: XT1607; date and time get messed up on reboot; need help to get modem working)


Contributors

  • Sorixelle

How to enter flash mode

Hold down Power + Volume Down while booting to enter Flash Mode.

Installation

Preparation

If necessary, unlock your bootloader by following the instructions on the Motorola Support page.

Install the lk2nd bootloader, as it is required to handle some quirks with msm8916 devices on mainline kernels. Flash the lk2nd.img image to the boot partition with fastboot flash boot /path/to/lk2nd.img. lk2nd also provides a fastboot interface that allows for flashing kernels without overwriting lk2nd itself. To enter it, power on the device, then hold down Vol Down as soon as you see the boot splash. You should be presented with a menu that looks like the following:

Motorola-harpia lk2nd example.jpeg

When you have lk2nd installed and running, follow Qualcomm_Snapdragon_410/412_(MSM8916)#Installation.

Usage

Audio

See Qualcomm_Snapdragon_410_(MSM8916)#Audio.

Modem

Follow the directions on this wiki page to use the modem. If you have a device model other than what is listed here, please edit the list below with the results of modem functionality testing.

  • XT1602: Modem working, can send and receive text messages. Can initiate and answer phone calls. Mobile data does not work.
  • XT1604: Modem working, can send but not receive text messages. Can make phone calls and receive. The Modem doesn't always start on boot, you need to run mmcli -S for it to start working.
  • XT1607: Modem working, can send text messages. Earpiece and Mic1 work with phone calls. Had to manually load RETUS_6.0.1 NON-HLOS firmware, will document and maybe package alternate firmware.

Touchscreen

synaptics s3203b: works ; others: unknown

See also

motorola-harpia UART pins location