Difference between revisions of "Meizu Pro 5 (meizu-turbo)"

From postmarketOS
Jump to navigation Jump to search
m (Use templates)
 
(10 intermediate revisions by 4 users not shown)
Line 7: Line 7:
 
| releaseyear = 2015
 
| releaseyear = 2015
 
| originalsoftware = Android 5, Ubuntu Touch
 
| originalsoftware = Android 5, Ubuntu Touch
| chipset = Samsung Exynos 7420 Octa
+
| chipset = Exynos 7420 Octa
 
| cpu = Octa-core (4x2.1 GHz Cortex-A57 & 4x1.5 GHz Cortex-A53)
 
| cpu = Octa-core (4x2.1 GHz Cortex-A57 & 4x1.5 GHz Cortex-A53)
| gpu = Mali-T760MP8
+
| gpu = Mali-T760 MP8
| storage = 32GB/64GB
+
| storage = 32/64 GB
| display = AMOLED, 16M colors
+
| display = 1080x1920 AMOLED
| memory = 3GB/4GB
+
| memory = 3/4 GB
 
| architecture = aarch64
 
| architecture = aarch64
 
| status_usbnet = Y
 
| status_usbnet = Y
 
| status_flashing = P
 
| status_flashing = P
| status_touch =  
+
| status_touch = Y
| status_screen = N
+
| status_screen = Y
 
| status_wifi =  
 
| status_wifi =  
 
| status_xwayland =  
 
| status_xwayland =  
Line 57: Line 57:
  
 
== Status ==
 
== Status ==
Currently when turned on, the device enters reboot loop.
+
Currently when turned on, the device enters reboot loop. The reboot is triggered by the line:
USB networking workds, telnet debugging hook lets log in at early stage before the reboot.
+
 
All steps from init.sh until switch_root when entered manually in telnet debug shell seem to work without problem.
+
'''
The display is not working - blank black screen. If provoked to display an early splash (e.g. no rootfs), a black image is displayed
+
udevadm trigger --type=devices --action=add
with white lines on the left and top borders, as if it is a part of zoomed in image.
+
'''
Turning on OpenRC logging does not produce any log files in /var/log on sysroot partition, which suggests that either switch_root and call to /sbin/init fails,
+
The device is accessible with telnet hook and via SSH (after additional procedure)
or OpenRC fails on very early stage.
+
 
The same result has been observed on a modified UBPorts kernel (currently in APKBUILD) and on faust98 kernel (see below).
+
In order to workaround this problem you can compile a custom eudev package with this patch:
 +
https://github.com/elelel/eudev/commit/f27656ae371c0da23346cdccbd3dc28cf38d2794
 +
...and install it on the system
 +
 
 +
Current aport does not contain firmware blobs. Adding them might fix the eudev problem.
 +
 
 +
=== Getting device to boot in spite of uedev ===
 +
 
 +
Install PostmarketOS's telnet debug hook, log on with telnet, then  execute:
 +
 
 +
. init_functions.sh
 +
mount_boot_partition
 +
extract_initramfs_extra /boot/initramfs-*-extra
 +
start_charging_mode
 +
wait_root_partition
 +
resize_root_partition
 +
unlock_root_partition
 +
resize_root_filesystem
 +
mount_root_partition
 +
mount -o remount,rw /dev/mapper/sda41p2 /sysroot
 +
 
 +
mount -t proc proc /sysroot/proc
 +
mount -t sysfs sys /sysroot/sys
 +
chroot /sysroot
 +
 
 +
 
 +
If you want just to boot to SSH, in chroot, comment out the offendig string, e.g. with sed replace or vi in /etc/init.d/udev-trigger.rc
 +
 
 +
'''
 +
udevadm trigger --type=devices --action=add
 +
'''
 +
 
 +
If you want to make the device boot to UI as normal, you should install patched eudev package (see above) at this point and reboot.
  
 
== Development notes ==
 
== Development notes ==
Line 72: Line 104:
 
# Official kernel sources
 
# Official kernel sources
 
## [https://github.com/meizuosc/m576/tree/master Android branch]. This branch seem to contain the very first kernel used for the earliest FlymeOS 4.x ROM. It is reported to be uncomplete, in particular, it misses Meizu proprietary sources for power management.
 
## [https://github.com/meizuosc/m576/tree/master Android branch]. This branch seem to contain the very first kernel used for the earliest FlymeOS 4.x ROM. It is reported to be uncomplete, in particular, it misses Meizu proprietary sources for power management.
## [https://github.com/meizuosc/m576/tree/ubuntu Ubuntu branch]. This branch seem to contain kernel actually used in more recent official Android releases (3.10.100) at least till commit f866ad068f11fb5e68ff87901346483945972ae9. After that Ubuntu-specific patches as well as generic bugfixes come.
+
## [https://github.com/meizuosc/m576/tree/ubuntu Ubuntu branch]. This branch seem to contain kernell for Android release updated to 3.10.100 in commit f866ad068f11fb5e68ff87901346483945972ae9. After that Ubuntu-specific patches as well as generic bugfixes come.
 
## Android 7 kernel, not released. Kernels from previous two links were only used in very early official ROMs. Later kernel sources were not realeased. There is a Github [https://github.com/meizuosc/m576/issues/5 issue] requesting the release. Meizu is known to respond positively to such issues.
 
## Android 7 kernel, not released. Kernels from previous two links were only used in very early official ROMs. Later kernel sources were not realeased. There is a Github [https://github.com/meizuosc/m576/issues/5 issue] requesting the release. Meizu is known to respond positively to such issues.
 
# Unofficial sources
 
# Unofficial sources
Line 81: Line 113:
  
 
== See also ==
 
== See also ==
[https://gitlab.com/postmarketOS/pmaports/merge_requests/106 Initial merge request]
+
* {{MR|106|pmaports}} Initial merge request
<!--
+
* {{Device package|meizu-turbo}}
Link to related gitlab issues or merge requests like the following (replace CHANGEME with the ID, e.g. 1234):
+
* {{Kernel package|meizu-turbo}}
* {{MR|CHANGEME}} Initial merge request
 
* {{issue|CHANGEME}} Some related issue
 
You can also add normal web links:
 
* [https://redmine.replicant.us/projects/replicant/wiki/GalaxyS2I9100 Replicant wiki page]
 
-->
 

Latest revision as of 12:03, 18 December 2020

Meizu Pro 5
[[|200px|alt=Meizu 5 Pro]]
Meizu 5 Pro
Manufacturer Meizu
Name Pro 5
Codename meizu-turbo
Released 2015
Category testing
Original software Android 5, Ubuntu Touch
Hardware
Chipset Exynos 7420 Octa
CPU Octa-core (4x2.1 GHz Cortex-A57 & 4x1.5 GHz Cortex-A53)
GPU Mali-T760 MP8
Display 1080x1920 AMOLED
Storage 32/64 GB
Memory 3/4 GB
Architecture aarch64
Features
USB Networking
Works
Flashing
Partial
Touchscreen
Works
Display
Works
WiFi
Xwayland
FDE
Mainline
Battery
3D Acceleration
Accelerometer
Audio
Bluetooth
Camera
GPS
Mobile data
SMS
Calls
USB OTG



Contributors

elelel

Maintainer(s)

How to enter flash mode

The device has to be with unlocked bootloader. Android phone version has bootloader locked by default. Locked bootloader may be unlocked with a Beta FlymeOS image for the international phone version. International firmware can be flashed to Chinese phone if one changes phone's id (possible with a 5.1.x Chinese firmware, root and a hex editor).


Press volume down and power while turning on to get into fastboot mode.

Installation

Current pmbootstrap utility assumes that boot partition is always named 'boot' on fastboot devices. This device's boot partition has 'bootimg' label. Because of that boot partition must be either flashed directly with fastboot utility, or pmbootstrap config source code has to be fixed.

Status

Currently when turned on, the device enters reboot loop. The reboot is triggered by the line:

udevadm trigger --type=devices --action=add

The device is accessible with telnet hook and via SSH (after additional procedure)

In order to workaround this problem you can compile a custom eudev package with this patch: https://github.com/elelel/eudev/commit/f27656ae371c0da23346cdccbd3dc28cf38d2794 ...and install it on the system

Current aport does not contain firmware blobs. Adding them might fix the eudev problem.

Getting device to boot in spite of uedev

Install PostmarketOS's telnet debug hook, log on with telnet, then execute:

. init_functions.sh
mount_boot_partition
extract_initramfs_extra /boot/initramfs-*-extra
start_charging_mode
wait_root_partition
resize_root_partition
unlock_root_partition
resize_root_filesystem
mount_root_partition
mount -o remount,rw /dev/mapper/sda41p2 /sysroot
mount -t proc proc /sysroot/proc
mount -t sysfs sys /sysroot/sys
chroot /sysroot


If you want just to boot to SSH, in chroot, comment out the offendig string, e.g. with sed replace or vi in /etc/init.d/udev-trigger.rc

udevadm trigger --type=devices --action=add

If you want to make the device boot to UI as normal, you should install patched eudev package (see above) at this point and reboot.

Development notes

Kernels

There are several candidate kernels for the port:

  1. Official kernel sources
    1. Android branch. This branch seem to contain the very first kernel used for the earliest FlymeOS 4.x ROM. It is reported to be uncomplete, in particular, it misses Meizu proprietary sources for power management.
    2. Ubuntu branch. This branch seem to contain kernell for Android release updated to 3.10.100 in commit f866ad068f11fb5e68ff87901346483945972ae9. After that Ubuntu-specific patches as well as generic bugfixes come.
    3. Android 7 kernel, not released. Kernels from previous two links were only used in very early official ROMs. Later kernel sources were not realeased. There is a Github issue requesting the release. Meizu is known to respond positively to such issues.
  2. Unofficial sources
    1. UBPorts kernel. Based on Meizu Pro 5 branch. Contains Ubuntu Touch fixes and ports, mainly Android binder and anbox-specific patches.
    2. faust93's kernel. Kernel used in at least two unofficial Android roms. This kernel, probably based on CM14.1, seems to be most up to date candidate, but contains a lot of patches from assorted sources and may be not very stable


See also