Xiaomi Mi 3 (xiaomi-cancro)
Appearance
| WARNING: This device cannot run postmarketOS, as its architecture is unsupported. |
| This device is still running on armhf, although it supports armv7. If you own it, change the device packages' architectures, test it and submit a patch. |
| This device has been archived. This means that it no longer appears in pmbootstrap and is likely broken. It can still be selected in pmbootstrap init by typing in the vendor and codename, but you will have to build the kernel package manually. |
|
Xiaomi Mi 3 running Weston | |
| Manufacturer | Xiaomi |
|---|---|
| Name | Mi 3 |
| Codename | xiaomi-cancro |
| Released | 2013 |
| Type | handset |
| Hardware | |
| Chipset | Qualcomm Snapdragon 800 (MSM8274AB) |
| CPU | Quad-core 2.3 GHz Krait 400 |
| GPU | Adreno 330 |
| Display | IPS Display 5 inches @ 1080px x 1920px (441 PPI) (Manufactured by Sharp or LG) |
| Storage | 16 GB / 64 GB ROM eMMC 4.5 |
| Memory | 2 GB LPDDR3 |
| Architecture | armhf |
| Software | |
Original software The software and version the device was shipped with. |
Android 4.3 |
Extended version The most recent supported version from the manufacturer. |
Android |
| postmarketOS | |
| Category | archived |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
no |
| Device package |
|
| Kernel package |
|
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
|
Battery Whether charging and battery level reporting work. |
Untested
|
Screen Whether the display works; ideally with sleep mode and brightness control. |
Works
|
Touchscreen |
Works
|
| Multimedia | |
3D Acceleration |
Untested
|
Audio Audio playback, microphone, headset and buttons. |
Untested
|
Camera |
Untested
|
| Connectivity | |
WiFi |
Untested
|
Bluetooth |
Untested
|
GPS |
Untested
|
| Modem | |
Calls |
Untested
|
SMS |
Untested
|
Mobile data |
Untested
|
| Miscellaneous | |
FDE Full disk encryption and unlocking with unl0kr. |
Untested
|
| Sensors | |
Accelerometer Handles automatic screen rotation in many interfaces. |
Untested
|
| This device is based on the Snapdragon 800. See the SoC page for common tips, guides and troubleshooting steps |
Contributors
- kelmes
Device owners
How to enter flash mode
- + (fastboot)
Hardware details
Chipset
The basic chipset is MSM8x74 ("x" denotes the modem code), but conformance to a particular device table on that link are not clear. Below is a superficial, pmos-independent attempt to determine the chipset details from userland. The test device is a 2GB/16GB Mi 3 (WCDMA 2013062 2014 stenciled on back case, below silver "mi" emblem), running twrp 3.1.1-0. Reference values are from Wikipedia.
chipset details
| feature | value | comment |
|---|---|---|
| kernel | 3.4.0-g83662a8-01427-gad51ea1 | Dec 2014 |
| Hardware | Qualcomm MSM8974PRO-AB | implies Snapdragon 801? |
| CPU max freq (KHz?) | 2265600 | 800AA, 801AA v3 or underclocked AB? |
| CPU min freq (KHz?) | 300000 | |
| GPU | ? | |
| GPU max freq (Hz?) | 578000000 | adreno 330? 800AB, or 801AB v3? need GPU stresser & GPU freq stats to confirm |
| GPU max-1 freq (Hz?) | 462400000 | adreno 330 (450MHz)? 800AA, or 801AA v3? |
| GPU min freq (Hz?) | 200000000 | |
| GPU target freq (Hz?) | 330000000 | = min+1 freq. decided by governor? |
| EMMC | ?.? | 800 is 4.5, 801 is 5.0? |
sample commands
cat /proc/version
cat /proc/cpuinfo |grep -i hard
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq
cat /sys/devices/system/cpu/cpu?/cpufreq/cpuinfo_cur_freq
cat /sys/devices/fdb00000.qcom,kgsl-3d0/kgsl/kgsl-3d0/gpu_available_frequencies
cat /sys/devices/fdb00000.qcom,kgsl-3d0/devfreq/fdb00000.qcom,kgsl-3d0/max_freq
cat /sys/devices/fdb00000.qcom,kgsl-3d0/devfreq/fdb00000.qcom,kgsl-3d0/min_freq
cat /sys/devices/fdb00000.qcom,kgsl-3d0/devfreq/fdb00000.qcom,kgsl-3d0/cur_freq
cat /sys/devices/fdb00000.qcom,kgsl-3d0/devfreq/fdb00000.qcom,kgsl-3d0/target_freq
Sensors
For comparison, results from test_sensors on obsolete SailfishOS 2.1.3.7 (armv7hl), kernel 3.4.0-cyanogenmod Dec 2017:
test_sensors
Hardware module ID: sensors Hardware module Name: Qualcomm Sensors Module Hardware module Author: Qualcomm Technologies, Inc. Hardware module API version: 0x1 Hardware HAL API version: 0x100 Poll device version: 0x1000001 API VERSION 0.1 (legacy): 0x1 API VERSION 0.1: 0x65537 API VERSION 1.0: 0x16777217 API VERSION 1.1: 0x16842753 API VERSION 1.2: 0x16908289 API VERSION 1.3: 0x16973825 Got 19 sensors === Sensor 0 == Name: Accelerometer Vendor: STMicroelectronics Version: 0x1 Handle: 0x0 Type: 1 maxRange: 39 resolution: 0 power: 0 mA minDelay: 8333 === Sensor 1 == Name: Magnetometer Vendor: AKM Version: 0x1 Handle: 0x23 Type: 2 maxRange: 4912 resolution: 0 power: 5 mA minDelay: 16666 === Sensor 2 == Name: Magnetometer Uncalibrated Vendor: AKM Version: 0x1 Handle: 0x24 Type: 14 maxRange: 4912 resolution: 0 power: 5 mA minDelay: 16666 === Sensor 3 == Name: Gyroscope Vendor: STMicroelectronics Version: 0x1 Handle: 0x2 Type: 4 maxRange: 35 resolution: 0 power: 6 mA minDelay: 5000 === Sensor 4 == Name: Gyroscope Uncalibrated Vendor: STMicroelectronics Version: 0x1 Handle: 0x8 Type: 16 maxRange: 35 resolution: 0 power: 6 mA minDelay: 5000 === Sensor 5 == Name: Proximity Sensor Vendor: Intersil Version: 0x1 Handle: 0x20 Type: 8 maxRange: 5 resolution: 0 power: 0 mA minDelay: 0 === Sensor 6 == Name: Ambient Light Sensor Vendor: Intersil Version: 0x1 Handle: 0x1 Type: 5 maxRange: 4000 resolution: 0 power: 0 mA minDelay: 0 === Sensor 7 == Name: Barometer Sensor Vendor: BOSCH Version: 0x1 Handle: 0x3 Type: 6 maxRange: 1100 resolution: 0 power: 0 mA minDelay: 5988 === Sensor 8 == Name: Temperature Sensor Vendor: BOSCH Version: 0x1 Handle: 0xc Type: 7 maxRange: 85 resolution: 0 power: 0 mA minDelay: 5988 === Sensor 9 == Name: Gravity Vendor: Qualcomm Version: 0x1 Handle: 0xd Type: 9 maxRange: 39 resolution: 0 power: 6 mA minDelay: 8333 === Sensor 10 == Name: Linear Acceleration Vendor: Qualcomm Version: 0x1 Handle: 0xe Type: 10 maxRange: 39 resolution: 0 power: 6 mA minDelay: 8333 === Sensor 11 == Name: Rotation Vector Vendor: Qualcomm Version: 0x1 Handle: 0x14 Type: 11 maxRange: 1 resolution: 0 power: 11 mA minDelay: 8333 === Sensor 12 == Name: Significant Motion Detector Vendor: Qualcomm Version: 0x1 Handle: 0x1f Type: 17 maxRange: 1 resolution: 1 power: 0 mA minDelay: -1 === Sensor 13 == Name: Game Rotation Vector Vendor: Qualcomm Version: 0x1 Handle: 0x22 Type: 15 maxRange: 1 resolution: 0 power: 6 mA minDelay: 8333 === Sensor 14 == Name: Orientation Vendor: Qualcomm Version: 0x1 Handle: 0x21 Type: 3 maxRange: 360 resolution: 0 power: 11 mA minDelay: 8333 === Sensor 15 == Name: Basic Gestures Vendor: Qualcomm Version: 0x1 Handle: 0x15 Type: 33171000 maxRange: 7 resolution: 1 power: 0 mA minDelay: 0 === Sensor 16 == Name: Facing Vendor: Qualcomm Version: 0x1 Handle: 0x17 Type: 33171002 maxRange: 3 resolution: 1 power: 0 mA minDelay: 0 === Sensor 17 == Name: Tilt Vendor: Qualcomm Version: 0x1 Handle: 0x18 Type: 33171003 maxRange: 180 resolution: 0 power: 6 mA minDelay: 10000 === Sensor 18 == Name: Gyro Tap Vendor: Qualcomm Version: 0x1 Handle: 0x19 Type: 33171001 maxRange: 6 resolution: 1 power: 6 mA minDelay: 0
See also
- pmbootstrap!1650 Initial merge request