Skip to content

LG-G6/android_kernel_lge_msm8996

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LGE MSM8996 4.4 source - Swan2000-LOS20 custom branch.

This branch contains the Swan2000 version of LGE MSM8996's 4.4 kernel source updated to be on par with the default Lineage-20 stable branch, but focused on better performance and efficiency over stable through a set of optimizations and voltage tweaks that aren't allowed at stable kernels aimed for official LOS support and such.

The custom name comes from a merge between the philosophies behind SwanKernel and mk2000, since the developers from those kernels worked in tandem to bring and optimize linux 4.4 to LGE's MSM8996 trio, comprised of LG G5, V20, and G6.

Additional Info

For more in-depth info on this kernel, please refer to the documentation available on this repository's wiki.

The wiki has all major changes that were made to tailor this source to LGE MSM8996 devices, as well as some improvements and optimizations added along the way, serving as a good knowledge base for anyone who aims to improve this kernel or update other MSM8996/MSM8996pro devices from Linux 3.18.y to 4.4.y.

Building the kernel

!! This guide assumes you're using a Linux distro to build the kernel !!

First clone this repo, get into the folder you cloned it into, open up git terminal and type git checkout LGE-4.4-new-Swan2000-LOS20 to switch to this branch.

Then download these toolchains:

Eva GCC Arm

Eva GCC AArch64

Unzip the subfolders from that first link (everything that's inside the *-gcc-master folder) into ~/toolchains/arm-eabi/ And the subfolders from the second link into ~/toolchains/aarch64-elf/

Then just go back to the cloned kernel source, open a terminal (or use the same one previously used for git) and type ./build.sh DEVICE, DEVICE will be the variant you'll be building for, so US996, H850, etc.

If you're only interested in the kernel Image in order to use it as a prebuilt kernel for a ROM source, those steps should already give you the Image.lz4-dtb you need to place into the prebuilt folder. It'll be located in a newly created folder inside the cloned repo, /build/arch/arm64/boot/ to be more precise.

If you want a flashable zip, then you need to run ./copy_finished.sh after the kernel build completes successfully. That command will pack everything up and place the flashable zip into a newly created out/ folder.