Xiaomi Redmi 5 Plus (xiaomi-vince)

From postmarketOS
Jump to navigation Jump to search
Xiaomi Redmi 5 Plus
Xiaomi Redmi 5 Plus
Xiaomi Redmi 5 Plus
Manufacturer Xiaomi
Name Redmi 5 Plus
Codename xiaomi-vince
Released 2017
Category testing
Original software Android 8.1
postmarketOS kernel 5.18.3
Hardware
Chipset Qualcomm Snapdragon 625 (MSM8953)
CPU Octa-core Cortex-A53 2 GHz
GPU Adreno 506
Display 1080x2160 (403 PPI) IPS
Storage 32/64 GB
Memory 3/4 GB
Architecture aarch64
Features
USB Networking
Works
Flashing
Works
Touchscreen
Works
Display
Works
WiFi
Works
FDE
Works
Mainline
Works
Battery
Partial
3D Acceleration
Works
Audio
Partial
Bluetooth
Works
Camera
Broken
GPS
Broken
Mobile data
Broken
SMS
Broken
Calls
Broken
USB OTG
Works
NFC
Unavailable
Sensors
Accelerometer
Works
Magnetometer
Ambient Light
Proximity
Hall Effect
Barometer
Unavailable
Power Sensor
Misc
Keyboard
Touchpad
USB-A
HDMI/DP
Unavailable
Ir TX
Broken
TrustZone
FOSS bootloader


This device is based on the Snapdragon 625.
See the SoC page for common tips, guides and troubleshooting steps

Maintainer(s)

  • M0Rf30

Users owning this device


How to enter flash mode

  1. Turn off the device
  2. Press Power + Volume Down to enter fastboot

Installation

Mainline

Follow the usual Installation guide but stop before flashing.

Install lk2nd and flash it to your device:

pmbootstrap chroot -r -- apk add lk2nd-msm8953
pmbootstrap flasher flash_lk2nd

Boot your device. Once you see the warning screen about the unlocked boot loader, press the power button twice and then immediately hold the volume down button. You should now see a flickering version of the fastboot screen. This is lk2nd's fastboot mode and you can now continue the normal flashing procedure.

Downstream

The normal Installation guide should work out of the box.

Audio

To enable audio you need to install triggerhappy. You can do it in many ways:

As a flag during PMOS installation:

Follow the standard Installation guide, and during pmbootstrap install step, use --add triggerhappy flag

As a package on running device:

Type in device terminal: $ sudo apk add triggerhappy

Note On both cases you always need to enable the triggerhappy daemon with: $ sudo rc-update add triggerhappy default

FDE

Mainline kernel

Works perfectly even with animation.

Downstream kernel

Encryption works fine, but osk-sdl has some issues with pixelformat modes. I recommend to test Unl0kr, because its made on LVGL, so it shouldn't have the same problems that osk-sdl encounters with directfb SDL2 backend.

Note Actually, osk-sdl is working ok(ish) with pixelformat argument set in DFBARGS to ABGR, but I couldn't get this to work in initramfs and I don't think it is a proper way to do this.

GPU bug workaround

At the time of writing, Freedreno ( the GPU driver ) has some bug. If you encounter any of this, try to create a file with export FD_MESA_DEBUG=nobin in /etc/profile.d/gpu-nobin.sh and reboot. (from Redmi Note 4 with same GPU [1]. I've tested it, works fine.)

Touchscreen

There are some problems with suspend and module 'rmi_i2c'. (dmesg here) Temporary fix to enable touch:

$sudo rmmod rmi_i2c 
$sudo modprobe rmi_i2c

Also you can create crontab script with this lines.

Battery

The battery charge report doesn't works.

Parts

Smart Speaker

To use the speaker, the device relies on:

Vendor Model
Texas Instruments tas2557 (some useful commits 1

2)

Seems to be very similar to tas2559

Fingerprint

Two drivers are available within downstream kernel

Vendor Model
Fingerprint Cards AB FPC1020 (some useful commits 12)
Goodix GF3208

Sensors

Type Vendor Model
Accelerometer / Gyroscope STMicroelectronics LSM6DSL 1
Magnetometer / Compass Asahi Kasei AK09918C 1
Ambient Light Liteon Opto LTR579 ALSPS
Hall ROHM Semiconductor BU52061NVX

Serial UART

Getting UART output on this device should be pretty straightforward, because pins for serial transfer (TX and RX) are exposed directly on motherboard and are even labeled.

Xiaomi-vince-uart.jpg

Vince-uart-pins-shem.png

See also: Serial debugging

See also