Meizu M6 Note (meizu-meilan-note-6)
| This device has been tested with postmarketOS, but its device package has not yet been added to the postmarketOS repositories. This means that it cannot be selected in pmbootstrap. Status: Booting |
|
Meizu M6 NOTE | |
| Manufacturer | Meizu |
|---|---|
| Name | M6 Note |
| Codename | meizu-meilan-note-6 |
| Released | 2017 |
| Type | handset |
| Hardware | |
| Chipset | Qualcomm Snapdragon 625 (MSM8953) |
| CPU | Octa-core 2 GHz Cortex-A53 |
| GPU | Adreno 506 |
| Display | 1080x1920 IPS |
| Storage | 16/32/64 GB |
| Memory | LPDDR3 SDRAM, 933MHz, 3/4 GB |
| Architecture | aarch64 |
| Software | |
Original software The software and version the device was shipped with. |
Android (Flyme OS) 7 |
Extended version The most recent supported version from the manufacturer. |
Android (Flyme OS) |
| postmarketOS | |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
no |
pmOS kernel The kernel version that runs on the device's port. |
7.1.3 |
Flashing Whether 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
|
Internal storage eMMC, SD cards, UFS... |
Works
|
Battery Whether charging and battery level reporting work. |
Works
|
Screen Whether the display works; ideally with sleep mode and brightness control. |
Works
|
Touchscreen |
Works
|
| Multimedia | |
3D Acceleration |
Works
|
Audio Audio playback, microphone, headset and buttons. |
Works
|
Camera |
Partial
|
Camera Flash |
Works
|
| Connectivity | |
WiFi |
Works
|
Bluetooth |
Works
|
GPS |
Partial
|
| Modem | |
Calls |
Partial
|
SMS |
Works
|
Mobile data |
Works
|
| Miscellaneous | |
FDE Full disk encryption and unlocking with unl0kr. |
Untested
|
USB OTG USB On-The-Go or USB-C Role switching. |
Untested
|
| Sensors | |
Accelerometer Handles automatic screen rotation in many interfaces. |
Works
|
Magnetometer Sensor to measure the Earth's magnetism |
Untested
|
Ambient Light Measures the light level; used for automatic screen dimming in many interfaces. |
Works
|
Proximity |
Partial
|
Hall Effect Measures magnetic fields; usually used as a flip cover sensor |
Untested
|
Haptics |
Works
|
| This device is based on the Snapdragon 625. See the SoC page for common tips, guides and troubleshooting steps |
Meizu M6 Note (m1721) is a Qualcomm Snapdragon 625 (MSM8953) handset. This
page tracks a work-in-progress mainline postmarketOS port (phosh) built on
the msm8953-mainline kernel. The
pmaports device directory is meizu-m1721 (from the internal model id
m1721); meilan-note-6 is the marketing codename. The port is not yet in
upstream pmaports.
Maintainer(s)
Contributors
- Skivaks
Users owning this device
- CyberTailor (Notes: LineageOS 21.0, needs screen replacement)
Installation
WARNING: This is an unofficial out-of-tree port. It is not in upstream pmaports and is not installable through the official postmarketOS tooling: pmbootstrap init does not list the device, and there is no official image. It is built from a personal pmaports fork against a forked msm8953-mainline kernel and flashed manually (see Flash mode below). Use at your own risk. |
The device-specific kernel patch series (14 patches: DTS, panel, camera sensors,
sound/voice, LED/flash, haptics, sensors) lives as a branch on a personal fork of
the msm8953-mainline kernel:
nomorecoolnicknames/linux @ meizu-m1721
(based on the barni2000/7.1.3/develop branch); these have not yet
been submitted upstream.
The postmarketOS aports (device package, the shared kernel aport with the m1721 patches, and the libcamera fork) are published as a pmaports overlay: nomorecoolnicknames/meizu-m1721-pmaports, which includes build + flash instructions.
Note: the boot partition holds lk2nd in its first 512 KiB; the postmarketOS boot.img is written at a 512 KiB offset so lk2nd stays intact. |
Flash mode
- Stock Fastboot: power on the device with + .
- lk2nd Fastboot: power on the device and, after the boot vibration, hold a button.
What works
Main:
- USB Networking
- Flashing (via lk2nd)
- Touchscreen — Focaltech FT5435 (edt-ft5x06)
- Display — Himax HX8399C-TCL FHD DSI panel + backlight (device-specific panel driver)
- 3D acceleration — Adreno 506 (Freedreno/Mesa, OpenGL ES 3.1)
- WiFi — WCN3680 (wcn36xx)
- Bluetooth — WCN3680 (wcn36xx)
- Battery + charger — PMI8950 (fuel-gauge + smbcharger); correct charging icon
- Accelerometer / Gyroscope — InvenSense ICM-20608 (inv_mpu6050)
- Ambient Light Sensor — LiteOn LTR-578ALS (PART_ID 0xB1; earlier taken for an LTR-390, whose ALS register block it shares), driven by an out-of-tree
ltr578IIO driver carried in the port that exposes both the ALS and the proximity channels (see proximity under partial) - Audio — earpiece, headphones, microphones (on-SoC msm8953-wcd codec) and the external boosted speaker amp Cirrus CS35L35 (speaker is the phosh default)
- Voice calls — incoming + outgoing (GNOME Calls / ModemManager over QRTR), earpiece + mic, in-call speakerphone switching, hardware in-call mic mute; needs a q6voice in-call device-switch kernel patch, a UCM Voice Call verb and a polkit grant for ModemManager voice ops (all carried in the port)
- Mobile Data
- SMS (send + receive, on the active SIM — see SIM under partial)
- Vibrator / Haptics — PMI8950 SPMI haptics (qcom-spmi-haptics with output-stage fixes carried in the port)
Other:
- GPS — modem GNSS, NMEA sentences flow (needs open sky for a fix). Off by default to save power (a permanently-searching GNSS drains the battery and heats the modem); enabled on demand via a
gps onhelper - Notification LED — Awinic AW2013 (leds-aw2013)
- Flashlight / torch — Awinic AW36413, all 4 ring LEDs (out-of-tree
leds-aw36413LED-class flash driver carried in the port, both chips; phosh torch toggle works)
Partial / in progress
- Camera — rear Sony IMX260 (imx362 driver) and front Samsung S5K3P8SP both stream RAW; the capture pipeline, rear colour (native GRBG Bayer phase + a libcamera IMX362 sensor helper) and still-frame capture work. Standalone GStreamer sinks run the SoftISP preview at ~24–29 fps, but inside GNOME Snapshot the preview drops to ~10 fps: root-caused to buffer-ring starvation (Snapshot's camerabin holds more buffers than libcamera's default ring depth), not a GPU/GTK4 limit; a libcamera buffer-count bump is built and pending on-device verification. (The DMABuf zero-copy import patch currently fails per frame and falls back to CPU upload, which still sustains 28+ fps.) Megapixels still crashes on this SoftISP setup.
- SIM — both slots detected with LTE registration; single active SIM, switchable between slots at runtime with a QMI provisioning tool (
sim-select). True dual-standby (both SIMs reachable at once) is not available on the mainline QRTR stack — the second subscription never registers without qcril-style userspace, so calls/SMS only reach the active SIM. - Headphone jack detection — insertion is detected and audio switches to headphones; unplugging is not detected (codec MBHC removal detect), so switching back currently needs a replug-less workaround.
- Proximity sensor — the out-of-tree
ltr578driver reports live proximity (and ALS) values on-device; the remaining step is wiring it to iio-sensor-proxy so the screen blanks against the ear during a call.
What does not work
- Fingerprint — Goodix GF3208. No mainline driver, and enablement is blocked lower down: the sensor's SPI controller (BLSP1 QUP1 @0x78b5000) is reachable under the stock Android bootloader but not under this port's lk2nd/mainline chain — enabling it (via the hardware controller, or even a raw-GPIO bit-bang of its pads) prevents boot. Static RE of the stock bootloader found it does nothing special to open the controller, so the difference is in the kernel SPI driver/clock path; a decisive clock-rate + earlycon fault-capture experiment is the next step. The vendor stack drives the sensor entirely from a QSEE TrustZone trustlet, which does not exist on mainline.
- Power Consumption — way too high even with no user activity. Trying to find the processes that are causing heavy CPU usage, but no clues at the moment.