[Thinkpad Tablet General] Yahoo Mike:
This thread is for sharing your experiences with Project Treble GSI images on the Lenovo Smart Tabs M10 (TB-X605F/L) & P10 (TB-X705F/L). I'll update this post as more things are discovered.

You can load Android 10 and 11 GSI ROMs on top of Lenovo's stock Pie ROMs.

You can also load Android 10 and 11 GSI ROMs on top of Lenovo's stock Oreo ROMs. There are some graphics glitches when you use the stock Oreo ROMs.

WARNING 1: this procedure will wipe your whole device (including data). So do a backup first.

WARNING 2: this is experimental. If you don't know what you're doing, then you could brick your device. The risk is all yours.

Loading over stock Pie

unlock the bootloader (if not already unlocked)

download Disable_Dm-Verity_ForceEncrypt.zip (created by @Zackptg5). If you want your data partition encrypted, then rename the zip file to Disable_Dm-Verity_enfec.zip. We'll use this to disable dm-verity on boot.

download modify_phh_gsi.sh to your SDcard or OTG device. I wrote this script to by-pass phhusson's read-write mount of /system during boot, which freezes our tablets. The script also runs resize2fs to make the /system filesystem take up the whole /system partition. Don't forget to make this script executable with chmod.

copy those files to your SDCard or OTG device:

adb push modify_phh_gsi.sh /external_sd/
adb shell chmod a+x /external_sd/modify_phh_gsi.sh
adb push Disable_Dm-Verity_ForceEncrypt.zip /external_sd/
[B]only if you want an encrypted data partition[/B]: adb shell mv /external_sd/Disable_Dm-Verity_ForceEncrypt.zip /external_sd/Disable_Dm-Verity_enfec.zip

load the stock Pie ROM using LMSA rescue mode or QComDLoader

boot the device into fastboot (Power+VolDown)

flash the GSI image: fastboot flash system your_gsi.img (you can install the GSI image in twrp, if you prefer)

flash TWRP (for Pie): fastboot flash recovery pie_twrp.img

boot into twrp (pwr+VolUp+VolDown)

format Data partition

install Disable_Dm-Verity_enfec.zip or Disable_Dm-Verity_ForceEncrypt.zip

run modify_phh_gsi.sh and boot the GSI:

adb shell /external_sd/modify_phh_gsi.sh
adb reboot

(optional) if your GSI doesn't include Google Apps, then download and install a gapps zip (ARM64) in TWRP. I use "pico", but choose the one that suits you. Do this after running modify_phh_gsi.sh - to avoid running out of space.

reboot to system

Loading over stock Oreo

unlock the bootloader (if not already unlocked)

download and unzip the stock Oreo ROM

load the stock Oreo ROM using QComDLoader, and your device in EDL mode. When it's finished, do

not

boot into the system. QComDLoader configuration settings:

Download Mode: Upgrade
Chipset: 8953
eMMC Programmer: prog_emmc_firehose_8953_ddr.mbn
Raw program: rawprogram_unsparse_upgrade.xml
patch0: patch0.xml

boot the device into fastboot (Power+VolDown)

flash the GSI image: fastboot flash system your_gsi.img (you can install the GSI image in twrp, if you prefer)

flash TWRP (for Oreo): fastboot flash recovery oreo_twrp.img

boot into twrp (pwr+VolUp+VolDown)

(optional) if your GSI doesn't include Google Apps, then download and install a gapps zip (ARM64) in TWRP. I use "pico", but choose the one that suits you. OpenGApps isn't officially available for Android 11 yet.

(optional) to get the right pixel density, add "ro.sf.lcd_density=240" to vendor/build.prop. I wrote gsi4tablet.sh to do this for you. Run it in twrp adb shell. Make sure the script is executable (using chmod).

reboot to system

Here are some links to Lenovo's stock Oreo ROMs:

TB-X605F: TB-X605F_USER_S000022_20181026_Q00020_ROW_Bundle

TB-X605L: TB-X605L_USER_S000020_20180921_Q00020_ROW

TB-X705F: TB-X705F_USER_S000017_20180831_Q00020_ROW

TB-X705L: TB-X705L_USER_S000023_20180921_Q00020_ROW

Choosing a GSI image

@phhusson keeps a full list of Project Treble GSI images.

Our devices are all ARM64 A-only. This means that you should only get ARM64 and A-only GSI images. Anything else will not work.

If there is an ARM64 A-only "vndklite" GSI, you can use that.

But do not use AB (or AB vndklite) GSIs, because this tablet is non-System-As-Root (nonSAR).

Note for A11: there is no A-only GSI with vndklite. So just use the A-only GSI.

"This device is not Certified by Google"

If you get this message when you boot the GSI, use ADB and follow instructions under "How to bypass certified device after first boot?".

If you can't find sqlite3 in adb, then install the Device ID app from this XDA article to get the GSF number on your tablet.

"Insufficient storage space available in System partition"

If you get this error message when trying to install GApps, read this post.

What about Android 12 ?

There are no non-SAR A12 GSIs for these tablets, because of the vndk-lite implementation.

If you want to try Android 12, visit this thread about converting the tablet to system-as-root (SAR). It is also experimental.

How do I repartition my tablet?

You might want to do this to increase the size of the system partition. Google it, if you like. But there are no instructions on this thread. No one wants to support noobs who trash their partition tables.

Where do I find... ?

QComDLoader is downloaded during an LMSA rescue. You'll find it in C:\ProgramData\LMSA\Download\ToolFiles\QcomDLoader_1.3.2\QcomDLoader_1.3.2. Alternatively, @Chaser42 has a link and some instructions at the bottom of the first post in this thread.

EDL mode: the easiest ways to enter EDL mode are: adb reboot edl or in TWRP: Reboot->EDL Mode. Alternatively, from a powered-off device: insert USB cable while holding VolUp

TWRP for Oreo for TB-X605F/L.

TWRP for Oreo for TB-X705F/L.

Magisk (for phhusson-based GSI ROMs) lives here.

GApps lives here.

Disable_Dm-Verity lives here.

Last modified: 2 September 2022 (add note about A11 and vndklite)