[KERNEL] [OnePlus2] [OOS3/OOS2] Boeffla-Kernel (18-12-2017)

Status
Not open for further replies.
Search This thread

andip71

Recognized Developer
Apr 22, 2008
17,110
67,651
Potsdam
Google Pixel 7 Pro
Hi all,

some of you know me from the OnePlus One or the Samsung devices area, where I provide my kernels already for more than two years to Galaxy S5, S3 and Note 10.1 users for all sort of platforms (Samsung, Cyanogenmod, Omnirom etc.)

Finally I got an OnePlus Two a few weeks ago and decided to start a kernel also for this device.

Please note:
I am not heading to have as many features as possible implemented, this is not my design goal. If you are more into that, move on to other, good existing kernels. If you are searching for a good mix of improvements and new functions while not sacrificing stability, you are welcome here (see below the history section for more info).

Compatibility

Important: This kernel is only meant to be compatible with official OnePlus OOS and nothing else.
So when the kernel does not run on custom rom XYZ, do not even bother me with it or ask hundred times in the thread for compatibility.
I could not care less about it !!



Important notes

When using new anykernel concept Boeffla-Kernel: Flash stock kernel of rom first !

This kernel is ONLY compatible to OxygenOs stock 2.x or 3.x, nothing else !!!

If you are using a custom rom that bases on OxygenOs, it might work. However, if it does not work, do not expect me to do tweak to make the kernel running with your favorite rom. I would not do it - my one and only reference is OxygenOs stock.

It is not supposed to be compatible to LineageOS, CM, HydrogenOS etc.

Also note: You have to use Boeffla-Config app which I provide on my homepage to tweak the kernel. 3rd party apps will not be able to unleash the full power of the kernel.


Support

First read the FAQ section on the Homepage !!!

Click here to learn about all possible kernel settings in the config app (outdated at the moment).
Click here to learn about using the config app (outdated at the moment).

I will refuse to give support if you do any undervolting and experience freezes or hot reboots.

I will also not provide any support if you do not use Boeffla-Config app to tweak the kernel, other 3rd party tweaking apps are known (and intended) to cause issues.

I will refuse to give support if you have xposed framework installed and reporting any kind of weird issues. My opinion to xposed it quite clear: too powerful for >90% of the users that just mess up their system with it.

Otherwise, you can get in touch with me via the support e-mail address: [email protected]

Please provide kernel version, rom version, a detailed issue description and ideally supporting screenshots or log files.


Change logs

(you can also access them directly in Boeffla-Config V2 by pressing menu and selecting "change log...")

Change log for OxygenOS 3.x kernel - Click here
Change log for OxygenOS 2.x kernel - Click here


Features

  • Support of anykernel concept (only latest kernels) - flash stock kernel before flashing Boeffla
  • Full integration with Boeffla-Config V2 (you need at least version 2.2.42 or higher !!!) configuration app
    (get it from http://www.boeffla.de) to configure all kernel settings
  • The two CPUs (big and little cpu) can be configured completely separate in terms of min/max frequencies, governors and hotplug profiles
  • Additional governors: Impulse, zzmoove, elementalx, conservative, ondemand
  • Additional schedulers: fiops, bfq, sio und zen
  • Hotplugging done by using stock core_ctl method
  • Many Hotplug tweak profiles (default are: little CPU always runs on 4 cores, big CPU runs on between 2 and 4 cores based on load)
  • Notification LED control (fading, speed, brightness)
  • Boeffla-Sound engine (Headphones volume configurable only)
  • Dynamic FSync (activated if screen on, deactived if screen off), configurable
  • Input boost frequencies and duration configurable, input boost switch
  • No CPU and GPU overclocking yet
  • No CPU and GPU voltage interface (will probably never come to save me support work)
  • GPU underclocking to 27 MHz possible
  • msm_adreno_tz and simple_ondemand tweaked to better utilize low frequencies
  • Show CPU frequency usage per CPU and frequency in Boeffla-Config
  • Show GPU frequency usage per frequency in Boeffla-Config
  • KCal V2 Color control
  • Display backlight limits configurable (to avoid display brightness gets too low in some situations)
  • Display backlight dimmer
  • Swipe2wake gestures
  • Swipe2sleep gestures
  • Boeffla generic wakelock blocker V1.1.0 (documentation)
  • Vibration control
  • Haptic feedback control for gestures
  • BCL (battery current limit) driver switchable (default is on)
  • SD card read ahead buffer configurable (default increased to 1024 kB)
  • Ext4 File system tweaks (default to on, can be disabled)
  • Thermal engine profiles (in system Tweaks section)
  • Kernel logger (dmesg) configurable
  • Boeffla charge analysis (display of charger type and charge current in Boeffla-Config app in real time)
  • Boeffla touchkey LED control (LEDs fully off, LED on screen touch, configurable duration)
  • USB charge rate bumped up to 900 mA
  • CIFS support (module, do not mount inside /data, if you rooted with Chainfire SuperSu, make sure you uncheck the namespace separation in SuperSu app)
  • NFS support (module)
  • NTFS support (module)
  • XBox support (module)
  • OTG-Ethernet support (module)
  • TCP Congestion changed to Westwood
  • Many additional TCP congestion algorithms activated to be used
  • init.d support (in /system/etc/init.d - set correct permissions!)
  • Automatic EFS backup
  • Integrated full busybox 1.27.2 (own compilation)
  • Kernel initialisation log file (with history of 3 log files)
  • Emergency reset script automatically placed into /boeffla-kernel-data folder of your internal memory
  • Google gcc 4.9 toolchain (64 bit) used for best stability
  • Always using latest Oxygen OS Initramfs
  • Device tree build from kernel sources for future options on frequencies and voltages
  • Always based on latest Oxygen OS kernel sources (https://github.com/OnePlusOSS/android_kernel_oneplus_msm8994)

Download

For all information and downloads (stable AND testing versions), visit the Boeffla-Kernel homepage:
www.boeffla.de


History and design targets

Basically I created my first Boeffla-Kernel in 2012 as there was no kernel for the Samsung Galaxy S3 around that had exactly the mix of functionalities that I wanted. I wanted to have full flexibility in undervolting and charge rates for instance, but did not like the sharpness and/or brightness tweaks many kernels have implemented as per default.

Hence, I began to create my own kernel after a while, adding all the features I like. This is the result of my work, which in the end I decided to share with you. I hope you like it as much as I do.

The objective of this kernel is to have a kernel for daily use. It does not aim for best battery life, or best smoothness or best benchmark scores. Also it does not aim to have the broadest feature set available everywhere.
It aims more for a good mix of all, not sacrificing stability and functionality in the end.
And - most important: It aims to stay quite close to stock !!!

These design targets are also valid for the OnePlus kernel here!!!

This said, I will definitely NEVER implement:

  • things I do personally not need
  • things I do not like
  • things that are in any way dangerous
  • anything which is highly experimental
  • f2fs - it is known to cause various issues and compatibility problems
  • a CAF based kernel
  • anykernel method to use the ramdisk of the installed rom
  • anything that requires upstreaming of kernel parts to a higher kernel major version
So do not even ask for it if it falls into the listed categories. Everything else I am happy to check and decide.

And: I do not really care about benchmark numbers, they say almost nothing as long as something is not completely wrong. Important for me is the feel-good factor.
I am also not interested in gaming at all, so never expect a gamer kernel. It will just not happen...


Compatibility

To reiterate it again: Flash the kernel only if you are running a compatible rom !!!


Configuration of the kernel

To tweak and configure the kernel, manually load and install the app "Boeffla-Config V2" from the downloads section on www.boeffla.de.

You need at least version 2.2.03 or higher for the OnePlus Two Boeffla Kernels.

Donation

If you like my work, feel free to donate: Donation-Link

If you donate at least 2,49 EUR (to be in line with the donation app prices on Google Play store), you will receive a personal donation code which unlocks some nice little comfort functions in Boeffla-Config V2 on top.


Source code

All sources can be found in my Github repository: http://github.com/andip71


Credits to developers

Of course, I had never been able to create all that by my own. So I want to give credits to the really good developers around, that have given me all the inspiration and from which I cherry picked lots of the implemented functionalities:

* ZaneZam
* Ak
* Yank555
* Hardcore
* Chainfire
* Netarchy
* Gokhanmoral
* Simone201
* Entropy512
* Faux
* Savoca

... I just hope I did not forget someone. If so, please let me know and I will add you of course.
Thanks to all of you for your great work !!!


Special thanks

Also I want to thank xda user @magnamentis for the ongoing testing to iron out the stability issues of the first alphas. He was doing that always taking the risk to "ffy" his brand new OP2.

Special thanks as well to @ZaneZam to pinpoint the issue during my absence as I was on business trips most of the time in the past weeks.

Disclaimer

*** As always - Flash on our own risk! ***

Make sure you flash the correct version depending on your firmware version!

I can and will not take any responsibility for bricked phones or lost data.

It is generally recommended to run a complete Nandroid backup in your custom recovery and safely store your personal data before you flash a new kernel.


Cheers and enjoy
Andi
 
Last edited:

andip71

Recognized Developer
Apr 22, 2008
17,110
67,651
Potsdam
Google Pixel 7 Pro
*** You want my support? Then stick to my rules ***

Guys, I am receiving more and more completely useless support requests in different threads. Useless because people provide nothing to be able to help, not even the minimal possible information they could give.

Hence, I will now remind anyone again on the support guide lines stated here:
http://boeffla.de/index.php/support/support

Also you need to ensure you follow the installation guide lines incl. trouble-shooting stated here:
http://boeffla.de/index.php/support/installation-how-to

And to cut a long story short: If you do not at least provide what I request in the support guide lines, I will IGNORE YOUR REQUESTS IN FUTURE.
Straight and simple. I have enough of people wasting my time just because they are too lazy to write details.
Period.

Also as a reminder:
  • you use xposed? -> no support, everything is your own issue
  • you use a custom rom and not the official stock or CM one? -> good luck, you are on your own
  • you undervolt or overclock? -> have fun, but without my support
Sorry, this might sound harsh (and it is meant to sound harsh), but you cannot imagine about how crappy support requests can be. Stating something does not work is just not enough.

Please consider that!!!

Andi
 
Last edited:

andip71

Recognized Developer
Apr 22, 2008
17,110
67,651
Potsdam
Google Pixel 7 Pro
Online

Hi all,

kernel is now officially released in version 1.0-beta1.

Download link, as always, on the kernel homepage.

Some notes again:
  • Make sure you have latest Boeffla-Config app running -> 2.02.03 !!!
  • This is the very very very first kernel version, so expect bugs or issues
  • Please be nice when you have an issue, this OP2 kernel costed me more grey hairs already than all other kernels I ever built together

Let the fun begin.

Andi
 

Alvin Vesper

Member
Aug 4, 2015
26
5
Awesome!! As stated there's no gpu over clocking, however I don't play games on my phone, will I be able to downclock the gpu?
 

v7

Retired Forum Moderator / Inactive RC
May 17, 2014
7,958
8,411
Arkham
Thanks a lot Andi!Had an awesome experience with the test kernel.Gonna flash this soon ;)

Tapped from my ❶+❷ ;)
 
  • Like
Reactions: andip71

Byrd San

Senior Member
Apr 9, 2011
66
20
Antioch
I'm excited to finally try out this kernel. I've always stumbled upon threads that mentioned this kernel and since I've had my Nexus 6, I never got the chance to try this kernel out. But now that I joined the OnePlus 2 family, I can finally see what this kernel is all about!
 

andip71

Recognized Developer
Apr 22, 2008
17,110
67,651
Potsdam
Google Pixel 7 Pro
I'm excited to finally try out this kernel. I've always stumbled upon threads that mentioned this kernel and since I've had my Nexus 6, I never got the chance to try this kernel out. But now that I joined the OnePlus 2 family, I can finally see what this kernel is all about!

Sure, just for expectation management: Do not expect too much for the start now.

The msm8994 soc development is quite fresh, as well as the device.

So I am not really far where I want to be in future in terms of features etc.

But stuff will come over the time, as it was with the OPO kernels and the S5, S3, Tab 10.1 kernels etc.

Andi
 

Byrd San

Senior Member
Apr 9, 2011
66
20
Antioch
Sure, just for expectation management: Do not expect too much for the start now.

The msm8994 soc development is quite fresh, as well as the device.

So I am not really far where I want to be in future in terms of features etc.

But stuff will come over the time, as it was with the OPO kernels and the S5, S3, Tab 10.1 kernels etc.

Andi

That's definitely understandable and patience is key so there's no rush at all. Thanks for your hard work thus far! :)
 

Quizo

Senior Member
Jul 20, 2010
159
9
I flashed it fine but there is no apk in the config V-2 download, its just a zip. am I missing something?
 

andip71

Recognized Developer
Apr 22, 2008
17,110
67,651
Potsdam
Google Pixel 7 Pro
I flashed it fine but there is no apk in the config V-2 download, its just a zip. am I missing something?

You need to download the app from here:
http://boeffla.df-kunde.de/bc/

(note, it MUST be an apk. if you download a zip, your browser does not interpret the mime headers correctly and you might use another browser)

Save it on your phone, install it manually.

Andi
 
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 196
    Hi all,

    some of you know me from the OnePlus One or the Samsung devices area, where I provide my kernels already for more than two years to Galaxy S5, S3 and Note 10.1 users for all sort of platforms (Samsung, Cyanogenmod, Omnirom etc.)

    Finally I got an OnePlus Two a few weeks ago and decided to start a kernel also for this device.

    Please note:
    I am not heading to have as many features as possible implemented, this is not my design goal. If you are more into that, move on to other, good existing kernels. If you are searching for a good mix of improvements and new functions while not sacrificing stability, you are welcome here (see below the history section for more info).

    Compatibility

    Important: This kernel is only meant to be compatible with official OnePlus OOS and nothing else.
    So when the kernel does not run on custom rom XYZ, do not even bother me with it or ask hundred times in the thread for compatibility.
    I could not care less about it !!



    Important notes

    When using new anykernel concept Boeffla-Kernel: Flash stock kernel of rom first !

    This kernel is ONLY compatible to OxygenOs stock 2.x or 3.x, nothing else !!!

    If you are using a custom rom that bases on OxygenOs, it might work. However, if it does not work, do not expect me to do tweak to make the kernel running with your favorite rom. I would not do it - my one and only reference is OxygenOs stock.

    It is not supposed to be compatible to LineageOS, CM, HydrogenOS etc.

    Also note: You have to use Boeffla-Config app which I provide on my homepage to tweak the kernel. 3rd party apps will not be able to unleash the full power of the kernel.


    Support

    First read the FAQ section on the Homepage !!!

    Click here to learn about all possible kernel settings in the config app (outdated at the moment).
    Click here to learn about using the config app (outdated at the moment).

    I will refuse to give support if you do any undervolting and experience freezes or hot reboots.

    I will also not provide any support if you do not use Boeffla-Config app to tweak the kernel, other 3rd party tweaking apps are known (and intended) to cause issues.

    I will refuse to give support if you have xposed framework installed and reporting any kind of weird issues. My opinion to xposed it quite clear: too powerful for >90% of the users that just mess up their system with it.

    Otherwise, you can get in touch with me via the support e-mail address: [email protected]

    Please provide kernel version, rom version, a detailed issue description and ideally supporting screenshots or log files.


    Change logs

    (you can also access them directly in Boeffla-Config V2 by pressing menu and selecting "change log...")

    Change log for OxygenOS 3.x kernel - Click here
    Change log for OxygenOS 2.x kernel - Click here


    Features

    • Support of anykernel concept (only latest kernels) - flash stock kernel before flashing Boeffla
    • Full integration with Boeffla-Config V2 (you need at least version 2.2.42 or higher !!!) configuration app
      (get it from http://www.boeffla.de) to configure all kernel settings
    • The two CPUs (big and little cpu) can be configured completely separate in terms of min/max frequencies, governors and hotplug profiles
    • Additional governors: Impulse, zzmoove, elementalx, conservative, ondemand
    • Additional schedulers: fiops, bfq, sio und zen
    • Hotplugging done by using stock core_ctl method
    • Many Hotplug tweak profiles (default are: little CPU always runs on 4 cores, big CPU runs on between 2 and 4 cores based on load)
    • Notification LED control (fading, speed, brightness)
    • Boeffla-Sound engine (Headphones volume configurable only)
    • Dynamic FSync (activated if screen on, deactived if screen off), configurable
    • Input boost frequencies and duration configurable, input boost switch
    • No CPU and GPU overclocking yet
    • No CPU and GPU voltage interface (will probably never come to save me support work)
    • GPU underclocking to 27 MHz possible
    • msm_adreno_tz and simple_ondemand tweaked to better utilize low frequencies
    • Show CPU frequency usage per CPU and frequency in Boeffla-Config
    • Show GPU frequency usage per frequency in Boeffla-Config
    • KCal V2 Color control
    • Display backlight limits configurable (to avoid display brightness gets too low in some situations)
    • Display backlight dimmer
    • Swipe2wake gestures
    • Swipe2sleep gestures
    • Boeffla generic wakelock blocker V1.1.0 (documentation)
    • Vibration control
    • Haptic feedback control for gestures
    • BCL (battery current limit) driver switchable (default is on)
    • SD card read ahead buffer configurable (default increased to 1024 kB)
    • Ext4 File system tweaks (default to on, can be disabled)
    • Thermal engine profiles (in system Tweaks section)
    • Kernel logger (dmesg) configurable
    • Boeffla charge analysis (display of charger type and charge current in Boeffla-Config app in real time)
    • Boeffla touchkey LED control (LEDs fully off, LED on screen touch, configurable duration)
    • USB charge rate bumped up to 900 mA
    • CIFS support (module, do not mount inside /data, if you rooted with Chainfire SuperSu, make sure you uncheck the namespace separation in SuperSu app)
    • NFS support (module)
    • NTFS support (module)
    • XBox support (module)
    • OTG-Ethernet support (module)
    • TCP Congestion changed to Westwood
    • Many additional TCP congestion algorithms activated to be used
    • init.d support (in /system/etc/init.d - set correct permissions!)
    • Automatic EFS backup
    • Integrated full busybox 1.27.2 (own compilation)
    • Kernel initialisation log file (with history of 3 log files)
    • Emergency reset script automatically placed into /boeffla-kernel-data folder of your internal memory
    • Google gcc 4.9 toolchain (64 bit) used for best stability
    • Always using latest Oxygen OS Initramfs
    • Device tree build from kernel sources for future options on frequencies and voltages
    • Always based on latest Oxygen OS kernel sources (https://github.com/OnePlusOSS/android_kernel_oneplus_msm8994)

    Download

    For all information and downloads (stable AND testing versions), visit the Boeffla-Kernel homepage:
    www.boeffla.de


    History and design targets

    Basically I created my first Boeffla-Kernel in 2012 as there was no kernel for the Samsung Galaxy S3 around that had exactly the mix of functionalities that I wanted. I wanted to have full flexibility in undervolting and charge rates for instance, but did not like the sharpness and/or brightness tweaks many kernels have implemented as per default.

    Hence, I began to create my own kernel after a while, adding all the features I like. This is the result of my work, which in the end I decided to share with you. I hope you like it as much as I do.

    The objective of this kernel is to have a kernel for daily use. It does not aim for best battery life, or best smoothness or best benchmark scores. Also it does not aim to have the broadest feature set available everywhere.
    It aims more for a good mix of all, not sacrificing stability and functionality in the end.
    And - most important: It aims to stay quite close to stock !!!

    These design targets are also valid for the OnePlus kernel here!!!

    This said, I will definitely NEVER implement:

    • things I do personally not need
    • things I do not like
    • things that are in any way dangerous
    • anything which is highly experimental
    • f2fs - it is known to cause various issues and compatibility problems
    • a CAF based kernel
    • anykernel method to use the ramdisk of the installed rom
    • anything that requires upstreaming of kernel parts to a higher kernel major version
    So do not even ask for it if it falls into the listed categories. Everything else I am happy to check and decide.

    And: I do not really care about benchmark numbers, they say almost nothing as long as something is not completely wrong. Important for me is the feel-good factor.
    I am also not interested in gaming at all, so never expect a gamer kernel. It will just not happen...


    Compatibility

    To reiterate it again: Flash the kernel only if you are running a compatible rom !!!


    Configuration of the kernel

    To tweak and configure the kernel, manually load and install the app "Boeffla-Config V2" from the downloads section on www.boeffla.de.

    You need at least version 2.2.03 or higher for the OnePlus Two Boeffla Kernels.

    Donation

    If you like my work, feel free to donate: Donation-Link

    If you donate at least 2,49 EUR (to be in line with the donation app prices on Google Play store), you will receive a personal donation code which unlocks some nice little comfort functions in Boeffla-Config V2 on top.


    Source code

    All sources can be found in my Github repository: http://github.com/andip71


    Credits to developers

    Of course, I had never been able to create all that by my own. So I want to give credits to the really good developers around, that have given me all the inspiration and from which I cherry picked lots of the implemented functionalities:

    * ZaneZam
    * Ak
    * Yank555
    * Hardcore
    * Chainfire
    * Netarchy
    * Gokhanmoral
    * Simone201
    * Entropy512
    * Faux
    * Savoca

    ... I just hope I did not forget someone. If so, please let me know and I will add you of course.
    Thanks to all of you for your great work !!!


    Special thanks

    Also I want to thank xda user @magnamentis for the ongoing testing to iron out the stability issues of the first alphas. He was doing that always taking the risk to "ffy" his brand new OP2.

    Special thanks as well to @ZaneZam to pinpoint the issue during my absence as I was on business trips most of the time in the past weeks.

    Disclaimer

    *** As always - Flash on our own risk! ***

    Make sure you flash the correct version depending on your firmware version!

    I can and will not take any responsibility for bricked phones or lost data.

    It is generally recommended to run a complete Nandroid backup in your custom recovery and safely store your personal data before you flash a new kernel.


    Cheers and enjoy
    Andi
    64
    Beta19

    Hi folks,

    I am back from x-mas holidays and one day earlier as planned - the updated kernel in beta19 which should now work perfectly fine with OOS 2.2.0.

    Here we go:

    Version 1.0-beta19
    27.12.2015

    • Note: This kernel version is only supposed to work on OxygenOS 2.2.0 - nothing else !!!
    • Kernel sources updated to OnePlus2_14_A.11_151211 kernel source
    • Ramdisk updated to OxygenOS 2.2.0
    • Stock thermal configuration updated to OxygenOS 2.2.0 version
    • Compiled with O2 and kernel size optimization
    Enjoy and Merry X-Mas
    Andi
    62
    OOS 2.2.0 kernel update

    Good afternoon folks,

    today is big "ZaneZam" day for the OnePlus 2 kernel.
    Finally I merged his work of the past weeks in, which will now proudly give you the very first version of the zzmoove governor, which is famous on other phones like the Galaxy S3, S5, OnePlus One etc.

    Basically all additions to that kernel version are done by @zanezan, so please click Thanks on his posts as well :)

    Version 1.1-beta6
    29.01.2016

    • Note: This kernel version is only supposed to work on OxygenOS 2.2.0 - nothing else !!!
    • Note: You should use Boeffla-Config app version 2.2.24 or higher for this kernel version !!!
    • New: Added zzmoove CPU governor (credits to ZaneZam)
    • New: Activated conservative CPU govenor (credits to ZaneZam)
    • New: Conservative and ondemand CPU governor reworked to better work on big.little devices (credits to ZaneZam)
    • New: Workaround to improve random reboot situation on CPU governors zzmoove, elementalx, conservative and ondemand (credits to ZaneZam)
    Enjoy
    Andi
    56
    Development progress update...

    Hi all,

    I know, what I do now is close to suicide... but I cannot hold back some of the work I started this morning.

    Also I know it is not the right thread, but anyways. So you know, I started with it, I am on it :D

    And no: No questions about ETA allowed. You know about my opinion when it will come out potentially.

    Andi