I'm experimenting with the kernel for Lenovo IdeaTab A2109. Here I'm documenting what I'm doing so that others who'd like to do so might join in.
The kernel sources supplied by Lenovo are one big tarball without any git history and a lot of confusing additions. I succeeded in turning this big blob into a small set of separate patches that apply to a specific commit in Nvidia's kernel repo. This commit is part of the branch l4t/l4t-r16-r2. This work I've uploaded to a specific kernel branch in my own repo, named A2109-l4t-clean.
I applied my patches to the following commit:
Separate patches can be found here:
b2b7383 Add tegra camera drivers mt9m114 and s5k5cag
f240d22 Add ft5x06 touchscreen driver
a17df64 Add Solteam JSA1127 Ambient Light Sensor Driver from Lenovo sources
f238e38 Add driver for LIS3DH Accelerometer of ST Microelectronics
c8a6793 Fix a few permissions
ea0743b Add support for batteries with BQ27541 (I2C/HDQ) chips
706cfec Add gpio drivers for power button and Gensor rotation lock switch
b52503b Add changes in kai board files from Lenovo for A2109
1b59410 Enable the inclusion of tiload kernel driver
12be434 Switch to Lenovo's driver and codec for aic326x
To make the kernel, checkout my own branch and do the following to produce a working kernel config:
I have several challenges:
I really hope that other people want to join me. I'll either succeed or fail, but I first want to try this, before moving to lollipop-5.1. I hope people would like to join me!
The kernel sources supplied by Lenovo are one big tarball without any git history and a lot of confusing additions. I succeeded in turning this big blob into a small set of separate patches that apply to a specific commit in Nvidia's kernel repo. This commit is part of the branch l4t/l4t-r16-r2. This work I've uploaded to a specific kernel branch in my own repo, named A2109-l4t-clean.
I applied my patches to the following commit:
Code:
commit 92f2d2099e3411dfa1966e8ead58dc5654f3124c
Author: Nikesh Oswal <noswal@nvidia.com>
Date: Tue Aug 28 19:51:04 2012 +0530
enterprise pinmux: set the pinmux for audio ports
Bug: 1039342
Change-Id: Ic1f0e9fa8c8d9e69b7fb9cd35d2cbbf578c579e5
Signed-off-by: Nikesh Oswal <noswal@nvidia.com>
Reviewed-on: http://git-master/r/127868
Reviewed-by: Ravindra Lokhande <rlokhande@nvidia.com>
Reviewed-by: Scott Peterson <speterson@nvidia.com>
Separate patches can be found here:
b2b7383 Add tegra camera drivers mt9m114 and s5k5cag
f240d22 Add ft5x06 touchscreen driver
a17df64 Add Solteam JSA1127 Ambient Light Sensor Driver from Lenovo sources
f238e38 Add driver for LIS3DH Accelerometer of ST Microelectronics
c8a6793 Fix a few permissions
ea0743b Add support for batteries with BQ27541 (I2C/HDQ) chips
706cfec Add gpio drivers for power button and Gensor rotation lock switch
b52503b Add changes in kai board files from Lenovo for A2109
1b59410 Enable the inclusion of tiload kernel driver
12be434 Switch to Lenovo's driver and codec for aic326x
To make the kernel, checkout my own branch and do the following to produce a working kernel config:
Code:
make tegra_kai_android_defconfig
I have several challenges:
- Switch from Lenovo's driver for aic326x to the one in the l4t/l4t-r16-r2 branch by Nvidia
- Rebase my patches so that they produce a working kernel on top of the l4t/l4t-r16-r2 branch
- Rebase my patches so that they produce a working kernel on top of an Nvidia 3.4 branch
I really hope that other people want to join me. I'll either succeed or fail, but I first want to try this, before moving to lollipop-5.1. I hope people would like to join me!