[KERNEL] [UNIFIED] Anykernel

Search This thread

Android-Andi

Inactive Recognized Contributor
Mar 3, 2013
10,856
29,295
andi34.github.io
ANYKERNEL
espressowifi / espresso3g


Please respect the following 2 points

  • No feature requests!
  • Overclocked Kernel can be found here
NOTE:
This product is provided "as is" without any warranty. Use on your own risk.
I am not responsible for burned CPU or GPU.

Any kind of OC is really dangerous on Galaxy Tab2. While OMAP 4460 has a built-in temperature sensor, OMAP 4430 doesn't have one. Nothing stops it from overheating...


If you don't read and respect the OP, you accept to make a donation of 50$ to a charity of your choice!
[#WARRANTY]

It is difficult to update all Roms frequently, and it does not always makes sense to compile, download and flash a whole rom, if only some kernel changes are applied.

This kernel will include changes before i add them official to our kernel source (most of the time security bugfixes)!
Android 5.1 and Android 6.0
This Kernel works on all Android 5.1 and Android 6.0 Roms for espressowifi and espresso3g.

Android 4.4
On Android 4.4 we need a different kernel, 4.4 Kernel includes "KitKat" tag on zip name.

What else to say
  • Kernel compiled using GCC 4.8
  • Anykernel based on Anykernel2 by @osm0sis ( https://github.com/osm0sis/AnyKernel2 ) - it will dump your boot.img and replace the zImage and add proper kernel modules.

Roms with default libion
LineageOS (unofficial)
espresso3g
  • lineage-11-20180131-2053-UNOFFICIAL-espresso3g.zip and newer
  • lineage-13.0_espresso3g-6.0.1-20180130-2211.zip and newer
  • lineage-14.1_espresso3g-7.1.2-20180131-1859.zip and newer
espressowifi
  • lineage-11-20180131-2033-UNOFFICIAL-espressowifi.zip and newer
  • lineage-13.0_espressowifi-6.0.1-20180130-2146.zip and newer
  • lineage-14.1_espressowifi-7.1.2-20180131-1818.zip and newer

OmniRom (unofficial)
espresso3g
  • omni_espresso3g-4.4.4-20180127-2337.zip and newer
  • omni_espresso3g-6.0.1-20180128-0312.zip and newer
  • omni_espresso3g-7.1.2-20180128-1319.zip and newer
espressowifi
  • omni_espressowifi-4.4.4-20180127-2310.zip and newer
  • omni_espressowifi-6.0.1-20180128-0251.zip and newer
  • omni_espressowifi-7.1.2-20180128-1254.zip and newer

SlimRoms (unofficial)
espresso3g
  • Slim-espresso3g-4.4.4.build.9.15-UNOFFICIAL-20180128-0125.zip and newer
  • Slim_espresso3g-6.0.1-20180128-2332.zip and newer
  • Slim_espresso3g-7.1.2-20180131-1617.zip and newer
espressowifi
  • Slim-espressowifi-4.4.4.build.9.15-UNOFFICIAL-20180128-0028.zip and newer
  • Slim_espressowifi-6.0.1-20180128-2308.zip and newer
  • Slim_espressowifi-7.1.2-20180131-1555.zip and newer

Unlegacy-Android:
All official Unlegacy-Android builds starting on 15th feburary use the default libion


Roms with new DDK
Slim6 , Slim7, OmniROM4, OmniROM 6, OmniROM 7 and LineageOS 11, LineageOS 13 and LineageOS 14.1 compiled after 01.03.2019

[#DONATETOME]

XDA:DevDB Information
(unified) Anykernel, Kernel for the Samsung Galaxy Tab 2

Contributors
Android-Andi, Ziyan
Source Code: https://github.com/Unlegacy-Android/android_kernel_ti_omap4/commits/3.0/common

Kernel Special Features: Testing before applying on our source official, CVE fixes

Version Information
Status: Testing

Created 2016-10-21
Last Updated 2020-05-02
 

Android-Andi

Inactive Recognized Contributor
Mar 3, 2013
10,856
29,295
andi34.github.io
Reserved

As requested, here's my setup to compile espresso kernel.

01.05.2020
Follow https://github.com/andi34/android_build-bot/blob/manifest/README.md and https://github.com/andi34/android_build-bot/blob/kernelcompile/README.md

What do you need
  • Kernel Source (you can get our latest kernel source on SlimRoms, OmniRoms or CyanogenMods github, "espresso10 kernel")
  • GCC ( https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8 )
  • pvr source, added to omap4-common device repo and hardware_ti_omap4 repo (can be found on SlimRoms, OmniRoms or CyanogenMods github)
  • you can use my scripts put below (update some paths, marked red )
  • AnyKernel2 Source from osm0sis (see 1. post, update for your tab2 needed)

build-gcc4.8.env:
Code:
[COLOR="Red"]export CROSS_COMPILE='/android/kernelcompile/arm-eabi-4.8/bin/arm-eabi-'[/COLOR]
export LDFLAGS=''
export CFLAGS=''
export SUBARCH=arm
export ARCH=arm
[COLOR="Red"]export STRIP=/android/kernelcompile/arm-eabi-4.8/bin/arm-eabi-strip[/COLOR]

alias 'stm'='$STRIP --strip-unneeded *.ko'

compile-espresso.sh
Code:
#!/bin/bash

readonly red=$(tput setaf 1) #  red
readonly grn=$(tput setaf 2) #  green
readonly ylw=$(tput setaf 3) #  yellow
readonly blu=$(tput setaf 4) #  blue
readonly cya=$(tput setaf 6) #  cyan
readonly txtbld=$(tput bold) # Bold
readonly bldred=$txtbld$red  #  red
readonly bldgrn=$txtbld$grn  #  green
readonly bldylw=$txtbld$ylw  #  yellow
readonly bldblu=$txtbld$blu  #  blue
readonly bldcya=$txtbld$cya  #  cyan
readonly txtrst=$(tput sgr0) # Reset

err() {
	echo "$txtrst${red}$*$txtrst" >&2
}

warn() {
	echo "$txtrst${ylw}$*$txtrst" >&2
}

info() {
	echo "$txtrst${grn}$*$txtrst"
}

setbuildjobs() {
	# Set build jobs
	JOBS=$(expr 0 + $(grep -c ^processor /proc/cpuinfo))
	info "Set build jobs to $JOBS"
}

info "Kernel source path: $KERNELSOURCE"
info "PVR Source path: $PVRSAUCE"
info "Working directory: $WORKINGDIR"
info "resulting zImage and modules stored at: $WORKINGOUTDIR"

setbuildjobs

info "Moving to kernel source"
cd $KERNELSOURCE

info "Import toolchain environment setup"
info "Toolchain: $TOOLCHAIN"
source  $SAUCE/build-$TOOLCHAIN.env

info "Create a buid directory, known as KERNEL_OUT directory"
# then always use "O=$SAUCE/espresso" in kernel compilation

info "create working directory"
mkdir -p $WORKINGDIR

warn "Make sure the kernel source clean on first compilation"
make O=$WORKINGDIR mrproper

warn "Rebuild the kernel after a change, maybe we want to reset the compilation counter"
echo 0 > $WORKINGDIR/.version

if [ "$VARIANTDEFCONFIG" = "*p*" ]; then
	info "Import kernel config file: $DEFCONFIGNAME"
	info "Import variant config file: $VARIANTDEFCONFIGNAME"
	make O=$WORKINGDIR VARIANT_DEFCONFIG=$VARIANTDEFCONFIG $DEFCONFIGNAME
	info "Change kernel configuration if needed using:"
	info "  make O=$WORKINGDIR menuconfig "
	VARIANTDEFCONFIG=
else
	info "Import kernel config file: $DEFCONFIGNAME"
	make O=$WORKINGDIR $DEFCONFIGNAME
	info "Change kernel configuration if needed using:"
	info "  make O=$WORKINGDIR menuconfig "
fi

info "lets build the kernel"
make -j$JOBS O=$WORKINGDIR

if [ -f $WORKINGDIR/arch/arm/boot/zImage ]; then
	info "Copying the resulting zImage and modules to: $WORKINGOUTDIR"
	info "Creating directory..."
	mkdir -p $WORKINGOUTDIR
	mkdir -p $WORKINGOUTDIR/modules/system/lib/modules
	cp $WORKINGDIR/arch/arm/boot/zImage $WORKINGOUTDIR/
	find $WORKINGDIR/ -type f -name *.ko -exec cp {} $WORKINGOUTDIR/modules/system/lib/modules/ \;

	info "Files moved!"

	info "Pointing KERNELDIR to KERNEL_OUT directory"
	export KERNELDIR=$WORKINGDIR

	warn "Make sure the PVR source clean."
	warn "Running 'make clean'..."
	make clean -C $PVRSAUCE/build/linux2/omap4430_android

	info "Building the PVR module..."
	# we now use the default libion, our kernel was updated
	make -j8 -C $PVRSAUCE/build/linux2/omap4430_android TARGET_PRODUCT="blaze_tablet" BOARD_USE_TI_LIBION=false BUILD=release TARGET_SGX=540 PLATFORM_VERSION=4.1

	info "Copying the resulting PVR module to: $WORKINGOUTDIR"
	cp -fr $PVRSAUCE/binary2_omap4430_android_release/target/pvrsrvkm.ko $WORKINGOUTDIR/modules/system/lib/modules/pvrsrvkm_sgx540_120.ko
	mv $PVRSAUCE/binary2_omap4430_android_release/target/pvrsrvkm.ko $WORKINGOUTDIR/modules/system/lib/modules/

	warn "Don't leave any module objects in PVR source!"
	warn "Running 'make clean'..."
	make clean -C $PVRSAUCE/build/linux2/omap4430_android

	info "Properly stripping the kernel modules for smaller size (implified as stm command inside build.env)..."
	cd $WORKINGOUTDIR/modules/system/lib/modules
	stm

	info "####################"
	info "#       Done!      #"
	info "####################"
else
	warn "####################"
	warn "#      FAILED!     #"
	warn "####################"
fi

cd $SAUCE

espresso-m.sh
Code:
#!/bin/bash
[COLOR="Red"]SAUCE=~/android2/kernelcompile
PVRSAUCE=~/android2/official/omap4/stable/pvr-source/eurasiacon
KERNELSOURCE=~/android2/official/kernel/android_kernel_ti_omap4[/COLOR]
TOOLCHAIN="gcc4.8"
DEFCONFIGNAME=espresso_defconfig
WORKINGDIR=$SAUCE/out/$DEFCONFIGNAME
WORKINGOUTDIR=$SAUCE/$DEFCONFIGNAME-bin
. `dirname $0`/compile-espresso.sh

espresso-k.sh
Code:
#!/bin/bash

[COLOR="Red"]SAUCE=~/android2/kernelcompile
PVRSAUCE=~/android2/official/omap4/stable/pvr-source/eurasiacon
KERNELSOURCE=~/android2/official/kernel/android_kernel_ti_omap4[/COLOR]
TOOLCHAIN="gcc4.8"
DEFCONFIGNAME=espresso_kitkat_defconfig
WORKINGDIR=$SAUCE/espresso-kitkat
WORKINGOUTDIR=$WORKINGDIR-bin
. `dirname $0`/compile-espresso.sh
 
Last edited:

Android-Andi

Inactive Recognized Contributor
Mar 3, 2013
10,856
29,295
andi34.github.io
Reserved

DEVICE SPECIFIC ANYKERNEL

Edit 02.05.2020
Latest device specific AnyKernel-Zip can be found here:
https://xdaforums.com/showpost.php?p=79259009&postcount=204

Please note: our kernel detects your Tab2 variant at boot and chooses the right driver and config for your device! In some cases (e.g. if the mainboard or the screen got replaced) your device variant isn't detected right and it will use wrong driver!
I am not sure how many user are affected, but in such case we can skip the intelligent board detection and hardcode the variant.

Attached device specific kernel should work on all unified espresso/espressowifi & espresso3g roms from Android 5 up to Android 7, for Android 4 Roms please use the "kitkat" version.

Feel free to buy me a coconut water if it helped you to keep your Tab still, after many years, almost up to date.
 

Attachments

  • AnyKernel-2017-11-04-17-13-P3100-ONLY.zip
    5.5 MB · Views: 775
  • AnyKernel-2017-11-04-17-13-P3110-ONLY.zip
    5.5 MB · Views: 435
  • AnyKernel-2017-11-04-17-13-P3113-ONLY.zip
    5.5 MB · Views: 184
  • AnyKernel-2017-11-04-17-13-P5100-ONLY.zip
    5.5 MB · Views: 398
  • AnyKernel-2017-11-04-17-13-P5110-ONLY.zip
    5.5 MB · Views: 383
  • AnyKernel-2017-11-04-17-14-P5113-ONLY.zip
    5.5 MB · Views: 117
  • AnyKernel-2017-11-21-20-08-P3100-ONLY.zip
    5.5 MB · Views: 365
  • AnyKernel-2017-11-21-20-08-P3110-ONLY.zip
    5.5 MB · Views: 321
  • AnyKernel-2017-11-21-20-08-P3113-ONLY.zip
    5.5 MB · Views: 119
  • AnyKernel-2017-11-21-20-07-P5100-ONLY.zip
    5.5 MB · Views: 405
  • AnyKernel-2017-11-21-20-07-P5110-ONLY.zip
    5.5 MB · Views: 462
  • AnyKernel-2017-11-21-20-08-P5113-ONLY.zip
    5.5 MB · Views: 131
  • AnyKernel-2017-11-21-20-09-P3100-ONLY-kitkat.zip
    5.5 MB · Views: 192
  • AnyKernel-2017-11-21-20-09-P3110-ONLY-kitkat.zip
    5.5 MB · Views: 169
  • AnyKernel-2017-11-21-20-09-P3113-ONLY-kitkat.zip
    5.5 MB · Views: 138
  • AnyKernel-2017-11-21-20-10-P5100-ONLY-kitkat.zip
    5.5 MB · Views: 199
  • AnyKernel-2017-11-21-20-10-P5110-ONLY-kitkat.zip
    5.5 MB · Views: 201
  • AnyKernel-2017-11-21-20-09-P5113-ONLY-kitkat.zip
    5.5 MB · Views: 198
Last edited:

Android-Andi

Inactive Recognized Contributor
Mar 3, 2013
10,856
29,295
andi34.github.io
Some more CVE fixes applied on top of previous kernel:
  • CVE-2014-8173
  • CVE-2014-7970
  • CVE-2014-5206
  • CVE-2016-0819
  • CVE-2015-8830
  • CVE-2014-9715

I added a CVE overview on 2nd post.

Edit:
Added a KitKat version
 

Attachments

  • AnyKernel-2016-10-21.2.zip
    5.4 MB · Views: 537
  • AnyKernel-2016-10-21.2-KitKat.zip
    5.3 MB · Views: 350
Last edited:

galoneta

Senior Member
Nov 15, 2010
161
59
Hi Android-Andi.
Has this kernel the OPTION (or plan to enable) to overclock ?

Thanks.
 

Android-Andi

Inactive Recognized Contributor
Mar 3, 2013
10,856
29,295
andi34.github.io
Guys, if you don't read the OP the thread will be closed and you can take care about a security patched kernel yourself.

Source is available on github, add everything you miss by your own and stop spamming this thread!

Edit: everyone not accepting the forum rules will be reported!
Edit2: Thanks @ Moderator for the post remove / thread clean

~ All my work, news etc. on http://andi34.github.io ~
 
Last edited:

Android-Andi

Inactive Recognized Contributor
Mar 3, 2013
10,856
29,295
andi34.github.io
It is quite funny making noise about a bug which existed 9 years now.

1. It is fixed on my kernel as mentioned on 2nd post (wonder why i spend time doing it)

2. I don't see an issue on custom roms (can be fixed within 2 minutes), i would worry about android by your Manufacturer (on all devices).

On android we change the wheel: no central updates like on linux or windows - it is up to your manufacturer to update your device and there's a lot of security issues fixed by google on android every month (and sure, some kernel side too). How many stock updates you get? 1, maybe 2 within 1 year and support drops after that.

To be true: i am not sure if my next device is an android device:
On my g4 i am on stock rom and LG cares 0 about it (Security patch level 2016-07-01... I waited 6 or 7 month to get that update and it was already 1 month behind).

If manufacturer don't care about theire flagships, what else can we do? Flashing custom roms? Right works, but on my daylie driver i don't like to be a flashahollic... I am more thinking about using a different OS.

You should think about my words and don't care about a already fixed security issue ;)

~ All my work, news etc. on http://andi34.github.io ~
 
Last edited:
Dec 4, 2015
21
5
Florianópolis
Hi Andy,

First of all, many thanks for all your work! I´m using your ROMs and kernels since Slimkat and all are great!
I also do my best colaborating with the translating team of CyanogenMod and SlimRoms (Brazilian Portuguese).
But now I would like to compile a kernel bymyself, to patch the CVEs, changes I like, etc.
If you have time, can you post here the steps you do to compile the Anykernel?
Don´t need to waste time explaining the things, just post the step-by-step commands (git clone, makes, ADBs, etc) and I will do my research, ok?

Thanks in advance and greetings from Brazil!
 

Android-Andi

Inactive Recognized Contributor
Mar 3, 2013
10,856
29,295
andi34.github.io
Hi Andy,

First of all, many thanks for all your work! I´m using your ROMs and kernels since Slimkat and all are great!
I also do my best colaborating with the translating team of CyanogenMod and SlimRoms (Brazilian Portuguese).
But now I would like to compile a kernel bymyself, to patch the CVEs, changes I like, etc.
If you have time, can you post here the steps you do to compile the Anykernel?
Don´t need to waste time explaining the things, just post the step-by-step commands (git clone, makes, ADBs, etc) and I will do my research, ok?

Thanks in advance and greetings from Brazil!
Sure, i have nothing to hide :) i can upload my script next days. Busy on other stuff atm :) maybe send a small reminder if the script isn't added on 3rd post of this thread end of next week.

~ All my work, news etc. on http://andi34.github.io ~
 

iamashwin

Senior Member
Mar 21, 2013
503
380
24
Mysore
Realme 2 pro
Sure, i have nothing to hide :) i can upload my script next days. Busy on other stuff atm :) maybe send a small reminder if the script isn't added on 3rd post of this thread end of next week.

~ All my work, news etc. on http://andi34.github.io ~
Oh and @Android-Andi just a small request , change the color of the text for ""CVE-XXXXXYYYY" DOES NOT AFFECT" because This colour is hard to read on the screen :).
 

Android-Andi

Inactive Recognized Contributor
Mar 3, 2013
10,856
29,295
andi34.github.io
  • Like
Reactions: AranhaEscarlate

iamashwin

Senior Member
Mar 21, 2013
503
380
24
Mysore
Realme 2 pro
What kind ANY KERNEL is important when you can not clocked CPU and graphics
Dont use it if you dont want it!
It is for the kind of people who want a secure kernel ... more secure than the one given by samsung (I dont remember the last time they sent us a patched kernel update ...or did they !)
Nearly all the device I own are waaaay too insecure (be it my router (its also a linux system) , phone Landline TV ...) except for my 4 year old tab all thanks to Andi ! Respect it
Besides OP is doing all this as a hobby and not for your or my benefit.
Stop spaming this thread ! Please READ
Please respect the following 2 points

  • No feature requests!
  • Overclocking will never be added here!


If you don't read and respect the OP, you accept to make a donation of 50$ to a charity of your choice!

PSS If you are satisfied with the answer please delete the message and so will I .Lets keep this thread clean.
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 34
    ANYKERNEL
    espressowifi / espresso3g


    Please respect the following 2 points

    • No feature requests!
    • Overclocked Kernel can be found here
    NOTE:
    This product is provided "as is" without any warranty. Use on your own risk.
    I am not responsible for burned CPU or GPU.

    Any kind of OC is really dangerous on Galaxy Tab2. While OMAP 4460 has a built-in temperature sensor, OMAP 4430 doesn't have one. Nothing stops it from overheating...


    If you don't read and respect the OP, you accept to make a donation of 50$ to a charity of your choice!
    [#WARRANTY]

    It is difficult to update all Roms frequently, and it does not always makes sense to compile, download and flash a whole rom, if only some kernel changes are applied.

    This kernel will include changes before i add them official to our kernel source (most of the time security bugfixes)!
    Android 5.1 and Android 6.0
    This Kernel works on all Android 5.1 and Android 6.0 Roms for espressowifi and espresso3g.

    Android 4.4
    On Android 4.4 we need a different kernel, 4.4 Kernel includes "KitKat" tag on zip name.

    What else to say
    • Kernel compiled using GCC 4.8
    • Anykernel based on Anykernel2 by @osm0sis ( https://github.com/osm0sis/AnyKernel2 ) - it will dump your boot.img and replace the zImage and add proper kernel modules.

    Roms with default libion
    LineageOS (unofficial)
    espresso3g
    • lineage-11-20180131-2053-UNOFFICIAL-espresso3g.zip and newer
    • lineage-13.0_espresso3g-6.0.1-20180130-2211.zip and newer
    • lineage-14.1_espresso3g-7.1.2-20180131-1859.zip and newer
    espressowifi
    • lineage-11-20180131-2033-UNOFFICIAL-espressowifi.zip and newer
    • lineage-13.0_espressowifi-6.0.1-20180130-2146.zip and newer
    • lineage-14.1_espressowifi-7.1.2-20180131-1818.zip and newer

    OmniRom (unofficial)
    espresso3g
    • omni_espresso3g-4.4.4-20180127-2337.zip and newer
    • omni_espresso3g-6.0.1-20180128-0312.zip and newer
    • omni_espresso3g-7.1.2-20180128-1319.zip and newer
    espressowifi
    • omni_espressowifi-4.4.4-20180127-2310.zip and newer
    • omni_espressowifi-6.0.1-20180128-0251.zip and newer
    • omni_espressowifi-7.1.2-20180128-1254.zip and newer

    SlimRoms (unofficial)
    espresso3g
    • Slim-espresso3g-4.4.4.build.9.15-UNOFFICIAL-20180128-0125.zip and newer
    • Slim_espresso3g-6.0.1-20180128-2332.zip and newer
    • Slim_espresso3g-7.1.2-20180131-1617.zip and newer
    espressowifi
    • Slim-espressowifi-4.4.4.build.9.15-UNOFFICIAL-20180128-0028.zip and newer
    • Slim_espressowifi-6.0.1-20180128-2308.zip and newer
    • Slim_espressowifi-7.1.2-20180131-1555.zip and newer

    Unlegacy-Android:
    All official Unlegacy-Android builds starting on 15th feburary use the default libion


    Roms with new DDK
    Slim6 , Slim7, OmniROM4, OmniROM 6, OmniROM 7 and LineageOS 11, LineageOS 13 and LineageOS 14.1 compiled after 01.03.2019

    [#DONATETOME]

    XDA:DevDB Information
    (unified) Anykernel, Kernel for the Samsung Galaxy Tab 2

    Contributors
    Android-Andi, Ziyan
    Source Code: https://github.com/Unlegacy-Android/android_kernel_ti_omap4/commits/3.0/common

    Kernel Special Features: Testing before applying on our source official, CVE fixes

    Version Information
    Status: Testing

    Created 2016-10-21
    Last Updated 2020-05-02
    17
    Update
    • cve-2015-0565
    • cve-2016-8655
    • cve-2015-8966
    • cve-2014-8709
    • cve-2014-9420
    • cve-2016-10044
    • cve-2016-10088
    • cve-2015-8019
    • cve-2016-10208
    • cve-2016-1583
    • cve-2016-6786 & cve-2016-6787
    • cve-2016-9754
    • cve-2016-9794
    • cve-2016-9793
    16
    Fixes CVE-2017-0706 and CVE-2017-1000251
    15
    Since this community can't be silent about OC for Tab2 i've picked OC changes from @ketut.kumajaya to our new common kernel.
    Applied OC Patches have been very well tested in the past on our old kernel.
    • Needed patch files are attached if you like to compile your own kernel.
    • I've kept authorship on all commits, also i've kept Authorship and notes inside Voltage Control code.
    • not applied undervolting on default frequencies

    Limitations:
    • Limit maximum CPU frequency @ 1.35GHz , GPU @ 384 Mhz

    NOTE:
    This product is provided "as is" without any warranty. Use on your own risk.
    I am not responsible for burned CPU or GPU.

    Any kind of OC is really dangerous on Galaxy Tab2. While OMAP 4460 has a built-in temperature sensor, OMAP 4430 doesn't have one. Nothing stops it from overheating...


    • This will be a "one-time-only" kernel.
    • It's compatible with my ROMs compiled since March 2019
      (Should work on my Slim6 + 7, Omni 6 + 7 and LineageOS 13 + 14.1 compiled after 01.03.2019.
      Special KitKat Kernel attached which should work on my SlimKat, Omni 4 and LineageOS 11 compiled after 01.03.2019).
      • don't use it on older ROMs
      • don't use on ROMs i haven't compiled

    You need root and an app like Kernel Adiutor to enable GPU 384 Mhz frequency.
    CPU will work up to 1.35 GHz without root.
    Code:
    $ adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/UV_mV_table
    1350mhz: 1360 mV
    1200mhz: 1325 mV
    1008mhz: 1388 mV
    800mhz: 1325 mV
    600mhz: 1200 mV
    300mhz: 1025 mV

    I've quickly tested the kernel on Slim6.

    Edit:
    attached another version ("OC-TEST-UV") with undervolting on default frequencies
    Code:
    $ adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/UV_mV_table
    1350mhz: 1360 mV
    1200mhz: 1325 mV
    1008mhz: 1274 mV
    800mhz: 1213 mV
    600mhz: 1100 mV
    300mhz: 925 mV

    And a 3rd version with undervolting on default frequencies and GPU @ 384 Mhz by default ("OC-TEST-UV-GPUOC")
    15
    One more update.
    • updates to dsscomp & dss/manager,
    • enabled ColorControl for tuna
    • enable BFQ-v7r8 I/O scheduler

    Why there's 2 Kernels?
    • 1st kernel use BFQ-v7r8 I/O scheduler for 3.0 kernel
    • 2nd kernel uses BFQ-v7r8 I/O scheduler for 3.3 kernel - needs a bunch of backports from 3.3 kernel to work (would be good if we don't need them)
    I have never added BFQ scheduler on espresso because it was always buggy (crashes frequently, e.g. if you switch from bfq to anything else after boot)
    Only added for testing. - if it works well, we can discuss to add it by default.