Jump to content

Xiaomi Mi 9T / Redmi K20 (xiaomi-davinci)

From postmarketOS Wiki
Note This device is supported as part of a generic port. Refer to Generic SM7150 (qcom-sm7150) for installation instructions and more information.
Xiaomi Mi 9T /
Redmi K20
Xiaomi Mi 9T / Redmi K20
Xiaomi Mi 9T / Redmi K20
Manufacturer Xiaomi
Name Mi 9T /
Redmi K20
Codename xiaomi-davinci
Model
  • Mi 9T: M1903F10G
  • Redmi K20: M1903F10A
  • Redmi K20 Chinese Carrier Version: M1903F10C
Released 2019
Type handset
Hardware
Chipset Qualcomm Snapdragon 730 (SM7150-AA)
CPU Octa-core (2x 2.2 GHz Kryo 470 Gold
6x 1.8 GHz Kryo 470 Silver)
GPU Adreno 618
Display 1080 x 2340 AMOLED
Storage 64/128/256 GB
Memory 6 GB
Architecture aarch64
Software
Original software Android (MIUI)
Original version
The version the device was shipped with.
9 (MIUI 10) (Linux kernel 4.14.83)
Extended version
The most recent supported version from the manufacturer.
11 (MIUI 12) (Linux kernel 4.14.180)
FOSS bootloader partial
postmarketOS
Category community
Pre-built images
Whether pre-built images are available here.
yes
pmOS kernel
The kernel version that runs on the device's port.
Mainline 6.13.7
Unixbench score
Unixbench Whetstone/Dhrystone score. See Unixbench.
5923.2
Generic port Generic SM7150 (qcom-sm7150)
Features
Flashing
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
Charging and battery level reporting works
Partial
Screen
Display works. Ideally with sleep mode and brightness control.
Works
Touchscreen
Works
Multimedia
3D Acceleration
Works
Audio
Audio playback, microphone, headset and buttons.
Partial
Camera
Partial
Camera Flash
Works
Connectivity
WiFi
Works
Bluetooth
Works
GPS
Partial
NFC
Near Field Communication
Partial
Modem
Calls
Works
SMS
Works
Mobile data
Works
Miscellaneous
FDE
Full disk encryption and unlocking with unl0kr.
Works
USB OTG
USB On-The-Go or USB-C Role switching
Works
Sensors
Accelerometer
Auto screen rotation works in desktops e.g. Phosh or Plasma Mobile
Works
Magnetometer
Sensor to measure magnetism
Works
Ambient Light
Works
Proximity
Works
Haptics
Works
U-Boot
Secondary Bootloader
It is possible to chainload U-Boot from stock bootloader.
Works
Mainline
Latest versions of U-Boot are not broken and it is possible to use them.
Works
Internal Storage
It is possible to boot from internal storage (e.g. eMMC or UFS).
Works
USB Host
It is possible to boot from a USB storage or connect a keyboard.
Partial
USB Peripheral
It is possible to use device as a peripheral in U-Boot, e.g. for fastboot mode.
Works
Display
Works
Buttons
It is possible to navigate in boot menu or grub with volume and power buttons.
Works

Maintainer(s)

Users owning this device


How to enter flash mode

  • Bootloader: Power on the device with both Power and Volume Down buttons.
  • Recovery: Power on the device with both Power and Volume Up buttons.
  • Fastbootd: Reboot into bootloader mode first and then run fastboot reboot fastboot from a computer.

Installation

See Generic SM7150 (qcom-sm7150). The boot partition image should be flashed to the cache partition.

Quirks

This should provide a rough overview explaining some unexpected things in the feature support table in the infobox.

NFC

This device shares the reset GPIO between NFC and the amplifier (for speaker audio). There is no such mechanism in the mainline kernel yet, so only one of them can work at a time. Due to that, NFC is currently disabled, but works fine and can be enabled in the kernel if preferred over speaker audio.

Battery

It charges, but very slowly since the hardware charger is not supported yet and especially the fuel gauge implementation is very basic and inaccurate.

Audio

Speaker audio works, microphone and earpiece are not working due to missing WCD implementation in the kernel.

Camera

The tele and ultrawide sensors are supported by our kernel fork and probing fine, but the camss is not implemented yet, making it impossible to take pictures.

GPS

GPS works, but is not very accurate (I wasn't able to test with AGPS yet).

FOSS Bootloader

This device uses a fork of U-Boot from here that tracks upstream U-Boot with Casey's changes for Qualcomm devices.

Mainline

The SM7150 mainline kernel used by this device is being developed here.