Xiaomi Mi Note 2 (xiaomi-scorpio)
Users owning this device
- Tooniis (Notes: 64GB Storage, 4GB Memory)
How to enter flash mode
Hold Power + Volume Down while the phone is turned off. This will make the phone boot into fastboot mode
You will need to unlock the bootloader in order to be able to flash anything onto the phone.
Installing TWRP before doing anything else is recommended, as it makes dealing with the phone easier later on, and allows for quick restoration by taking backups of
/boot, then flashing them back in order to restore the device to its original state. Note that this method has only been tested with LineageOS, and running its installation ZIP in TWRP after restoring the backup was necessary to get it to boot, otherwise it would just keep loading forever.
Official images are available for this device. Those can be directly flashed with fastboot for a quick install.
Choose an image for your device from the download page.
Once downloaded, decompress the images with
$ xz -d <image>-xiaomi-scorpio.img.xz $ xz -d <image>-xiaomi-scorpio-boot.img.xz
Once decompressed, you may flash the main image to either:
/system: ~3.2 GB. Will allow you to keep the main part of your existing Android installation as well as your data.
$ fastboot flash system <image>-xiaomi-scorpio.img
/data: Extends close to the remaining size of your storage. Will wipe your Android installation along with your data.
$ fastboot flash data <image>-xiaomi-scorpio.img
Then you may either flash the boot image:
$ fastboot flash boot <image>-xiaomi-scorpio-boot.img
or boot it directly without flashing:
$ fastboot boot <image>-xiaomi-scorpio-boot.img
Initialization and Building
Follow the Installaton Guide to initialize pmbootstrap and build/install everything necessary.
Once you reach the flashing step:
- Flash the rootfs:
$ pmbootstrap flasher flash_rootfs
- Flash the kernel and initramfs to the boot partition:
$ pmbootstrap flasher flash_kernel
You can also avoid flashing them and instead, boot the kernel directly:
$ pmbootstrap flasher boot
|USB||TI TUSB320 (extcon)
PMI8996 SMBCharger (OTG supply)
|P||Peripheral mode only, host mode might be working but without power. USB networking works.|
|UFS||Samsung KLUCG4J1CB-B0B1 (64GB variant)||Y|
LG Display SW43101
|GPU||Adreno 5301||Y||Somewhat glitchy, causes some artifacts and tearing on GNOME at least.|
|WiFi||QCA6174a -> PCIe||Y|
|Bluetooth||QCA6174a -> UART||Y|
|Modem||MSS1||P||Sending and receiving SMS works.
Mobile data will require a driver for IPA.
Calls have not been tested, and while it might be technically possible to make and receive calls, it will not be of much use since the earpiece and microphones are not working.
|IR Transmitter||PM8994 LPG2||Y||IR LED works. Usage with an actual IR receiver device not tested, but should work.|
|Audio Codec||WCD9335 (Headphones, earpiece, microphones)
|P||Headphones output only. Headphones mic input is very quiet for some reason.
Will require a driver for speaker codec.
|Video Codec||Venus1||Y||Tested with |
|Battery||PMI8996 SMBCharger/Fuel gauge2
|P||Fuel gauge works. Charging will require drivers for PMIC SMBCharger and SMB1351.|
|N||Will require drivers for both camera modules.|
|N||Will require a driver for SLPI.|
|Touchkeys||Cypress StreetFighter||Y||Driver not upstream yet.|
|Fingerprint Reader||FPC1020||N||Will require a driver.|
|Buttons||TLMM1,2/PM8996 GPIO2 (Home, Volume Up)
PM8994 PON/RESIN2 (Power, Volume Down)
|Haptics||PMI8996 Haptics2||Y||Driver not upstream yet.|
|LEDs||PM8994 LPG2 (Keypad backlights)
PMI8996 LPG/Flash2 (Status light, Flash)
|P||Will require a driver for flash.|
1: Internal component
2: Driver of component
The display comes up blue after initialization sometimes. Rebooting makes it work usually.This issue has not appeared since MSM DRM was set to be compiled as a module. System locks up when accessing memory intensively. This might be caused by writing to a protected area of memory.Adding this reserved memory region fixed it. System crashes when modem and ADSP get powered up at the same time.Fixed temporarily through pmaports!2283.
- USB VBUS turns off instantly when a USB device is plugged into an already plugged in OTG adapter. For now the OTG adapter must be plugged into the phone with the USB device plugged into it already.
- WiFi range is bad. This is due to lack of board firmware. Supplying board firmware made from the vendor firmware for the downstream QCA_CLD driver makes it lose all APs in a scan as soon as an attempt is made to connect to one of them, which means it is impossible to connect.