[Thinkpad Tablet Android Development] Yahoo Mike:
#include <std_disclaimer.h>
/*
*
* We are not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at us for messing up your device, we will laugh at you.
*
*/

Warnings: this kernel has been tested on the TB-X605F (SDA450) only. It will not work for the:

TB-X605F (M10) released with the SDA429 chipset

TB-X605L (M10 LTE). This kernel is currently for the wifi variant only.

TB-X505F/L (M10 HD) or any of the other M10 variants that use the SDA429 chipset.

TB-X605FC (M10 FHD). See the opensource released by Lenovo. Note that the X605FC kernel is 4.9.112.

Introduction

On 4 June 2020, Lenovo released the kernel source for the TB-X605F/L.

Prior to that, this kernel was developed by porting the kernel source for the the P10 (TB-X705F) released by Lenovo in January 2019.

Current version is: 3.18.120 merged with CAFCAF LA.UM.5.5.r1-05300-8x96.0.

The update zip will load some modules. So backup the "System Image", "Vendor Image" and boot partitions with TWRP before loading this kernel.

For kernel developers

Lenovo have released the opensource for the TB-X705F (Smart Tab 10 wifi) dated 31 January 2019 at s000018_20180913_row. This kernel is based on that kernel source (3.18.71). The default config (YM_X605F_defconfig) is almost identical to the kernel config of the M10. Some of the main differences with the P10 source are:

removed the MM8013 chipset config. The P10 uses the MM8013 for battery stats etc. There is no MM8013 on the M10.

upgraded drivers for the primary autofocus camera.

set CONFIG_MODULE_SIG_FORCE to "n" - so kernel will load stock modules from any version. Thanks to [MENTION=9613333]yener90[/MENTION] for the suggestion.

While Lenovo releases the (compiled) stock M10 kernel at 3.18.120, the P10 kernel opensource is 3.18.71. Great job Lenovo!

The source will build signed system modules, if you want them. If you want the wifi driver it's pronto_wlan.ko, compile with CONFIG_PRONTO_WLAN=m.

Features

This kernel compiles and runs. It seems to be stable.

Working:

- wifi

- bluetooth

- power charging (USB and dock)

- camera

- FM radio

- touchscreen (including DT2W)

- audio

- OTG

Known bugs

you tell me

Installation

I assume you have unlocked bootloader, TWRP and Magisk. If not, follow these instructions.

The update zip is packaged using AnyKernel3 by [MENTION=4544860]osm0sis[/MENTION] .

if you are still on stock ROM & kernel, backup "System Image", "Vendor Image" and boot partitions in TWRP. You only have to do this once, not everytime you load a new version of this kernel.

download update_X605F_kernel.zip and copy it to your sdcard/OTG

boot to TWRP and use "update" to update the zip file

check that the update was successful, then reboot

confirm the kernel is loaded. It should start with "3.18.120-X605F-YM":

X605F:/ $ uname -r
3.18.120-X605F-YM-xxx

To return to stock kernel, just restore the stock boot, system and vendor backups you made in TWRP. If that doesn't work, then you'll have to reload system ROM using LMSA.

Changelog

11/03/2020 - 3.18.120-X605F-YM-g02f9b3e-00023-gcef72f9
- fixed camera - it's now recognised and autofocus works
- cleared out some dead code that's not needed for M10 (hangover from P10 source)

05/03/2020 - 3.18.120-X605F-YM-g02f9b3e-00018-g818259c3
- rebased kernel to 3.18.120
- merge CAF LA.UM.5.5.r1-05300-8x96.0
- added DT2W
- fixed "adb reboot". The rebase fixed it.
- added a defconfig for LineageOS
- included signed modules in zip file (including wlan)

20/01/2020 - 3.18.71-X605F-kernel-g0a9bdb1
- disabled signed module enforcement
- removed system and vendor modules from update zip

17/01/2020 - initial commit

Download

current release: update_X605F_kernel.zip

XDA:DevDB Information

M10 kernel, Kernel for the Lenovo Thinkpad Tablet

Contributors

Yahoo Mike

Source Code: https://github.com/Yahoo-Mike/android_kernel_lenovo_X605F

branch: msm-3.18.120 is source for this release (default branch)

branch: official-3.18.120 is official source released by Lenovo on 4 June 2020.

branch: msm-3.18.71 is the initial port from P10 kernel source

Kernel Special Features:

Version Information

Status: Testing

Created 2020-01-16

Last Updated 2020-06-05