Lenovo Yoga Tab 3 10 LTE/WiFi (lenovo-lxf-p5100)
| This device is supported as part of a generic port. Refer to Generic MSM8909 (qcom-msm8909) for installation instructions and more information. |
| 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. |
|
| |
| Manufacturer | Lenovo |
|---|---|
| Name | Yoga Tab 3 10 WiFi |
| Codename | lenovo-lxf-p5100 |
| Model | yt3-x50f |
| Released | 2016 |
| Type | tablet |
| Hardware | |
| Chipset | Qualcomm Snapdragon 212 (APQ8009) |
| CPU | Quad-core 1.3 GHz Cortex-A7 |
| GPU | Adreno 304 |
| Display | 800x1280 10.1" IPS LCD |
| Storage | 16/32 GB |
| Memory | 2 GB |
| Architecture | armv7 |
| Software | |
Original software The software and version the device was shipped with. |
Android 5.1 |
Extended version The most recent supported version from the manufacturer. |
Android 6 |
| postmarketOS | |
| Category | archived |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
no |
| Generic port | Generic MSM8909 (qcom-msm8909) |
| Device package |
|
| Kernel package |
|
Initial MR Initial merge request. |
pmaports!6128 |
| This device is supported as part of a generic port. Refer to Generic MSM8909 (qcom-msm8909) for installation instructions and more information. |
|
| |
| Manufacturer | Lenovo |
|---|---|
| Name | Yoga Tab 3 10 LTE |
| Codename | lenovo-lxf-p5100 |
| Model |
yt3-x50y yt3-x50l yt3-x50m |
| Released | 2016 |
| Type | tablet |
| Hardware | |
| Chipset | Qualcomm Snapdragon 210 (MSM8909) |
| CPU | Quad-core 1.3 GHz Cortex-A7 |
| GPU | Adreno 304 |
| Display | 800x1280 10.1" IPS LCD |
| Storage | 16/32 GB |
| Memory | 2 GB |
| Architecture | armv7 |
| Software | |
Original software The software and version the device was shipped with. |
Android 5.1 |
Extended version The most recent supported version from the manufacturer. |
Android 6 |
| postmarketOS | |
| Category | testing |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
yes |
| Generic port | Generic MSM8909 (qcom-msm8909) |
| Device package |
|
| Kernel package |
|
Initial MR Initial merge request. |
pmaports!6128 |
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). |
Broken
|
Internal storage eMMC, SD cards, UFS... |
Works
|
SD card Also includes other external storage cards. |
Works
|
Battery Whether charging and battery level reporting work. |
Partial
|
Screen Whether the display works; ideally with sleep mode and brightness control. |
Partial
|
Touchscreen |
Partial
|
Stylus |
Partial
|
| Multimedia | |
3D Acceleration |
Partial
|
Audio Audio playback, microphone, headset and buttons. |
Broken
|
Camera |
Broken
|
| Connectivity | |
WiFi |
Works
|
Bluetooth |
Works
|
GPS |
Untested
|
| Modem | |
Calls |
Broken
|
SMS |
Broken
|
Mobile data |
Broken
|
| Miscellaneous | |
FDE Full disk encryption and unlocking with unl0kr. |
Untested
|
USB OTG USB On-The-Go or USB-C Role switching. |
Partial
|
| Sensors | |
Accelerometer Handles automatic screen rotation in many interfaces. |
Broken
|
The Lenovo Yoga Tab 3 10 LTE/WiFi is an interesting tablet that has a stand. There are QR code stickers on the motherboard with a codename printed on them. All codename variants begin with the lxf_p5100 prefix and may have different suffixes:
- _B01: Model Name
yt3-x50m, LTE Variant - _J01: Model Name
yt3-x50l, LTE Variant - _L01: Model Name
yt3-x50f, Wi-Fi Variant
How to enter flash mode
- Fastboot: Press and hold + until the Lenovo logo shows up. Alternatively, run
adb reboot bootloader. Depending on your firmware, you might see a tux logo or the Android robot instead. - EDL: Press and hold + while connecting the device to a computer with a USB cable.
How to unlock the bootloader
- Go to Settings → About device
- Tap the build number 7 times to enable Developer options
- In Developer options, enable "Allow bootloader to be unlocked"
- Boot to fastboot mode and run
fastboot oem unlock-go - Wait until it has wiped everything in the userdata partition.
Installation
| 🚧 | This page is a work-in-progress. Some information contained within may be inaccurate or incomplete. |
lk2nd is a secondary bootloader that provides a standard fastboot interface, which can be used to boot postmarketOS without Android boot flashed or pmbootstrap flasher flash_kernel.
- Download lk2nd-msm8909.img from Releases page on Github.
- Boot your phone to bootloader (fastboot) mode.
- Follow lk2nd instructions to install lk2nd. Basically flash it to the boot partition (
fastboot flash boot lk2nd-msm8909.img) - Follow Qualcomm_Snapdragon_410/412_(MSM8916)#Installation to install postmarketOS.
| Note: Enter lk2nd fastboot mode by pressing after booting (this time wait until it vibrates then press ! |
Table of hardware
| Feature | Components | Status | Driver | Note |
|---|---|---|---|---|
| Display | MDP 3 Panel: boent35523b_800p, auoOTM1287A_800p |
P | N | Works with simple-framebuffer. There is no panel driver upstream, but it can be generated from the downstream code. |
| GPU | Adreno 304 | P | P | See MSM8909#Adreno |
| Wi-Fi | Qualcomm WCN3620 | Y | Y | This chip is found in many MSM8909 and MSM8916 devices. |
| Bluetooth | ||||
| FM | ? | ? | ||
| Modem | ? | ? | ||
| Audio Codec | N | N | ||
| Charger | smb358 Charger | N | Y | This IC handles USB power out/mode switching and is supported upstream.
See [1] |
| Power management | pm8909 | Y | Y | |
| Battery Temperature Sensor | ? | ? | It is connected to PM8916.
Also, the only current developer's unit lack of Battery Temperature Sensor. (See the BAT_TEMP pin at below) Untested, but it seems that mainline lacks a temperature sensor driver? | |
| Fuel Gauge | bq27xxx | Y | Y | See [2] |
| Rear Camera | N | N | ||
| Front Camera | N | N | ||
| Magnetometer | AKM AK09911 | Y | Y | Managed to get output via sysfs |
| Accelerometer | Bochs BMA223 | N | N | No Mainline driver |
| Light Sensor | ELAN EPL2102 | N | N | lack of mainline driver,rare chip |
| Touchscreen/Stylus | hideep-ts-i2c | P | P | It seems the kernel driver doesn't work with some of the touchscreens that come with the device. There are issues in userspace (See libinput#1046) |
| Buttons | Gpio button/pm8941-resin/pm8941-pwrkey | Y | Y | |
| LEDs | sn3191 | P | Y | Power LED Doesn't work due to sensors occupying the I2C bus. It's possible to get it to work by removing the sensors from the device tree. |
| USB Controller/PHY | ChipIdea USB Controller / Qualcomm USB HS PHY | P | Y | See [3] |
| Modem | MSM8909 Modem | N | N | Untested, but it has no mainline driver. |
Test pins
There are many soldering point/test pins on the motherboard, most of which are labelled.
| Label | Component | Description |
|---|---|---|
| BAT_TEMP | Battery | Battery temperature sensor |
| VBAT+ | Battery | Battery positive |
| GND | Battery | Battery ground |
| SCL | Touchscreen/Fuel gauge | There are two such pins on the board: one near the battery socket for the fuel gauge's I2C bus, and one for the touchscreen's I2C bus. |
| SDA | Touchscreen/Fuel gauge | There are two such pins on the board: one near the battery socket for the fuel gauge's I2C bus, and one for the touchscreen's I2C bus. |
| PWR | Buttons | Power button |
| VOL+ | Buttons | Volume up button |
| VOL- | Buttons | Volume down button |
| LEDR | LEDs | Power LED positive |
| DP | Micro-USB | Data Positive |
| DM | Micro-USB | Data Negative |
| VBUS | Micro-USB | USB Power positive |
| USB_ID | Micro-USB | Micro-USB USB_ID pin |
| Rx | UART | UART pin of Rx |
| Tx | UART | UART pin of Tx |
| VDD | Touchscreen | VDD pin of the touchscreen, its main power source |
| VID | Touchscreen | VDD pin of the touchscreen, the main IO voltage |
| INT | Touchscreen | Interrupt pin of the touchscreen, connected to the SoC's GPIO pin 13 |
| RST | Touchscreen | Reset pin of the touchscreen, connected to the SoC's GPIO pin 12 |
Downstream
Missing device tree changes
Here are the search results from searching 800p in a folder that contains all the DTBs extracted from the stock Android kernel:
$ grep -rnw ./ -e '800p'
./13_dtbdump_Qualcomm_T
=echnologies,_Inc._MSM8909_QRD_SKUE.dtb:25729:zauoOTM1287A 800p video mode dsi panel
./13_dtbdump_Qualcomm_Technologies,_Inc._MSM8909_QRD_SKUE.dtb:26365:zboeNT35523B 800p video mode dsi panel
./35_dtbdump_Qualcomm_Technologies,_Inc._MSM8208_1GB_QRD_SKUE.dtb:25034:zauoOTM1287A 800p video mode dsi panel
./35_dtbdump_Qualcomm_Technologies,_Inc._MSM8208_1GB_QRD_SKUE.dtb:25670:zboeNT35523B 800p video mode dsi panel
./32_dtbdump_Qualcomm_Technologies,_Inc._MSM8208_QRD_SKUE.dtb:25033:zauoOTM1287A 800p video mode dsi panel
./32_dtbdump_Qualcomm_Technologies,_Inc._MSM8208_QRD_SKUE.dtb:25669:zboeNT35523B 800p video mode dsi panel
./05_dtbdump_Qualcomm_Technologies,_Inc._MSM8909_QRD_SKUE.dtb:25728:zauoOTM1287A 800p video mode dsi panel
./05_dtbdump_Qualcomm_Technologies,_Inc._MSM8909_QRD_SKUE.dtb:26364:zboeNT35523B 800p video mode dsi panel
According to that, boent35523b_800p and auoOTM1287A_800p are the panels used in the device.
However, those device trees won't appear when searching 800p in the kernel tree provided by Lenovo. The OEM has provided a kernel tree that lacks many of their device tree changes.
Gallery
-
Stock home screen
-
lk2nd boot
-
pmOS with Xfce4 on a downstream kernel
Contributors
- Chaosleo07
Maintainers
Users owning this device
See also
External links
- Vendor kernel source
- Vendor kernel source repository (reuploaded to GitHub)
- Normal TWRP (broken)
- Unofficial TWRP with modifications (dead link)
- Device info (WiFi variant)
- Device info (LTE variant)
- Schematics
- DIY battery replacement with lithium-ion battery forum post (it has some info about the fuel gauge)