[Kernel][25.04.2021][4.14.231][Android 11] Kirisakura 1.1.6_R for OP7/Pro aka Guacamole

Search This thread

Macusercom

Forum Moderator
Staff member
Sep 2, 2014
1,055
575
Vienna
christophgrubits.at
new YAAP build Version: 11.0 20210414 for 7T have patch for proximity sensor.. ) please add it also into the kernel)

It's always good to add the matching commit(s) to help the dev quickly see where and how it was fixed. It does make it easier to add it if the dev doesn't have to search for it ;)

A quick look lead me to the device source code that apparently fixes it: https://github.com/yaap/device_oneplus_sm8150-common/commit/c2bb1ab44a16d81e066509bd5f44eefaaaa041bc

I couldn't find any matching commits in the kernel repo of YAAP unfortunately.
 
Last edited:
  • Like
Reactions: Freak07

OmkarTheAndroid

Senior Member
  • May 6, 2013
    115
    146
    It's always good to add the matching commit(s) to help the dev quickly see where and how it was fixed. It does make it easier to add it if the dev doesn't have to search for it ;)

    A quick look lead me to the device source code that apparently fixes it: https://github.com/yaap/device_oneplus_sm8150-common/commit/c2bb1ab44a16d81e066509bd5f44eefaaaa041bc

    I couldn't find any matching commits in the kernel repo of YAAP unfortunately.
    This was fixing an unrelated issue, happened when the device booted too quickly, would cause all sensors to disappear
    My money is on https://github.com/yaap/device_oneplus_sm8150-common/commit/351f2335b207c62eb7f33554f24272614e094e62
    As for how it's fine on stock kernel + OOS but not on custom kernel for OOS, "for all intents and purposes, stock kernel is patching something but we don't really know"
     
    Last edited:
    • Like
    Reactions: Macusercom

    mrsover

    Senior Member
    Jan 15, 2017
    109
    20
    This was fixing an unrelated issue, happened when the device booted too quickly, would cause all sensors to disappear
    My money is on https://github.com/yaap/device_oneplus_sm8150-common/commit/351f2335b207c62eb7f33554f24272614e094e62
    As for how it's fine on stock kernel + OOS but not on custom kernel for OOS, "for all intents and purposes, stock kernel is patching something but we don't really know"
    same commit in last derpfest R ROM
     

    Freak07

    Recognized Developer / Recognized Contributor
    Jan 2, 2011
    4,887
    15,600
    Update to 1.1.4_R

    Hey guys and girls,


    alright here´s another update. Proximity sensor for 7T devices is confirmed working, thanks to @miguelang611 ! (I hope the same is true for the regular OnePlus 7, somebody else needs to confirm this here)
    Edit: It´s confirmed working on the regular OnePlus 7 as well, thanks to @Madsunable confirming it here.
    thanks to who pointed this commit out: https://github.com/yaap/device_oneplus_sm8150-common/commit/351f2335b207c62eb7f33554f24272614e094e62
    I think it was @OmkarTheAndroid. also thanks to @Macusercom for pointing out another commit! It´s very nice to see teamwork and the spirit of the community sometimes emerge! :)
    It´s interesting that this is an issue. I don´t think it´s actually the kernel changing the permissions on stock rom. The different input devices (such as brightness, proximity, pedometer) get registered in a bit of a different order on source built kernels compared to a stock rom. That can be either due to me not using kernel modules but building everything in the zImage (hence the order is different during bootup) or OnePlus not pushing the actual source.
    However I´m glad this fixes it. You need to be rooted with magisk (which is a requirement anyway as mentioned in the OP) for this fix to work.

    Other notable changes are regarding the scheduler. As some of you might know, as most other devices based on a CAF-Kernel the OnePlus 7 uses WALT (window assisted load tracking) to collect and provide information about CPU utilization to the scheduler.
    So an interesting new thing is that we now use dynamic WALT windows. This means the WALT window, where the scheduler collects information about CPU utilization, is now dynamically adjusted whether the device runs at 60 or 90fps. This allows the scheduler to work better, since simply put, more information in a shorter time is better when the device runs at 90fps.
    If you´re interested to learn more about WALT or its "counterpart" PELT have a look here: https://lwn.net/Articles/706374/
    It contains a link for further information. Alternatively use Google as your best friend.

    Linux-Upstream is merged as well.


    Changelog:
    - Linux-Stable Upstream to 4.14.230
    - fix proximity sensor for OP 7 and OP 7T
    - implement dynamic walt windows



    Download:



    Instructions can be found in the OP!
    But look at this post too :)

    Have fun, enjoy the kernel and your phone.

    Donations are not mandatory but very welcome.
    If you like my work and want to buy me a coffee/green tea to keep development going: http://paypal.me/freak07
     
    Last edited:

    daniel84cs

    Senior Member
    Dec 27, 2011
    2,627
    5,442
    OnePlus 7 Pro
    Great Performance on latest OOS , thanks for the update.
    Screenshot_20210417-195018.jpg
     
    • Like
    Reactions: ChrisFeiveel84

    xXRapToRiXx

    Senior Member
    Nov 15, 2014
    537
    155
    I just installed the newest Kernel on my 7 pro running official LineageOS18.1 and being on the newest OOS11 Firmware files. Everything seems fine but the double-tap to wake feature stopped working. It is surely not a dealbreaker but I wanted to mention it regardless. Maybe I did something wrong tho I don't know.
     

    Freak07

    Recognized Developer / Recognized Contributor
    Jan 2, 2011
    4,887
    15,600
    I just installed the newest Kernel on my 7 pro running official LineageOS18.1 and being on the newest OOS11 Firmware files. Everything seems fine but the double-tap to wake feature stopped working. It is surely not a dealbreaker but I wanted to mention it regardless. Maybe I did something wrong tho I don't know.
    No you didn't do something wrong. Custom roms change the backend for the gestures in the kernel.

    Maybe there will be a separate release for custom roms, like in the later android 10 days if there's no simple way to unify oos and custom ROM kernel.
    Yeah a telegram group would be awesome
    Does this kernel has a telegram group?
    No :) everything one needs can be found in this thread.
     

    KapilNagpal01

    Senior Member
    Jul 31, 2019
    191
    85
    Hi freak. Post installing the kernel, charging slows down compared to stock kernel. In FKM it shows only 7.7 W with Current 1818 ma and voltage 4.17 volts. Though in stock it's 12 to 13 volts. In case possible please have a look into it.

    Befor in A10 this was never the case. Thanks
     

    ChrisFeiveel84

    Senior Member
    Jun 29, 2017
    117
    58
    36
    Oberhausen (NRW) Gemany
    the stock oneplus (7t warp 30) charger can only handle max 5 volts with a maximum of 6000mah

    Hi freak. Post installing the kernel, charging slows down compared to stock kernel. In FKM it shows only 7.7 W with Current 1818 ma and voltage 4.17 volts. Though in stock it's 12 to 13 volts. In case possible please have a look into it.

    Befor in A10 this was never the case. Thanks
     

    Attachments

    • IMG_20210418_172304.jpg
      IMG_20210418_172304.jpg
      798.5 KB · Views: 62

    KapilNagpal01

    Senior Member
    Jul 31, 2019
    191
    85
    the stock oneplus (7t warp 30) charger can only handle max 5 volts with a maximum of 6000mah
    This means 30 W (5*6). Usually One Plus 7 stock charges between 12 to 13 W and was same with Freak Kernal till A10 but now it charges approx 7.7 W. So I just wanted to inform him in case he would like to check it.

    Only from 90 to 100% charging is slowed in stock kernel. Thanks
     

    Top Liked Posts

    • There are no posts matching your filters.
    • 25
      Update to 1.1.4_R

      Hey guys and girls,


      alright here´s another update. Proximity sensor for 7T devices is confirmed working, thanks to @miguelang611 ! (I hope the same is true for the regular OnePlus 7, somebody else needs to confirm this here)
      Edit: It´s confirmed working on the regular OnePlus 7 as well, thanks to @Madsunable confirming it here.
      thanks to who pointed this commit out: https://github.com/yaap/device_oneplus_sm8150-common/commit/351f2335b207c62eb7f33554f24272614e094e62
      I think it was @OmkarTheAndroid. also thanks to @Macusercom for pointing out another commit! It´s very nice to see teamwork and the spirit of the community sometimes emerge! :)
      It´s interesting that this is an issue. I don´t think it´s actually the kernel changing the permissions on stock rom. The different input devices (such as brightness, proximity, pedometer) get registered in a bit of a different order on source built kernels compared to a stock rom. That can be either due to me not using kernel modules but building everything in the zImage (hence the order is different during bootup) or OnePlus not pushing the actual source.
      However I´m glad this fixes it. You need to be rooted with magisk (which is a requirement anyway as mentioned in the OP) for this fix to work.

      Other notable changes are regarding the scheduler. As some of you might know, as most other devices based on a CAF-Kernel the OnePlus 7 uses WALT (window assisted load tracking) to collect and provide information about CPU utilization to the scheduler.
      So an interesting new thing is that we now use dynamic WALT windows. This means the WALT window, where the scheduler collects information about CPU utilization, is now dynamically adjusted whether the device runs at 60 or 90fps. This allows the scheduler to work better, since simply put, more information in a shorter time is better when the device runs at 90fps.
      If you´re interested to learn more about WALT or its "counterpart" PELT have a look here: https://lwn.net/Articles/706374/
      It contains a link for further information. Alternatively use Google as your best friend.

      Linux-Upstream is merged as well.


      Changelog:
      - Linux-Stable Upstream to 4.14.230
      - fix proximity sensor for OP 7 and OP 7T
      - implement dynamic walt windows



      Download:



      Instructions can be found in the OP!
      But look at this post too :)

      Have fun, enjoy the kernel and your phone.

      Donations are not mandatory but very welcome.
      If you like my work and want to buy me a coffee/green tea to keep development going: http://paypal.me/freak07
      21
      Update to 1.1.6_R

      Hey guys and girls,


      I hope everyone is having a good weekend. Here´s the next update. It includes the source for 11.0.0.2. Not many changes but they are merged. Good to see OnePlus pushing it more timely for this update!

      Latest Linux-Stable Upstream is merged as well.

      Some changes to how the WLAN driver is being initialized during boot. This might help people where WLAN would fail to load on 1.1.4 (probably only on custom roms, since nobody with OOS reported a problem here). Please note, the kernel is still primarily made for OOS and not custom roms.
      So wake gestures may not work on custom roms and if custom roms remove the 1080p timings in their respective kernel (which are still present in this kernel) there might be glitches. Always have backups ready when flashing anything to your device so you can return back to where you started!


      Changelog:
      - Linux-Stable Upstream to 4.14.231
      - Merge Source for OOS 11.0.0.2
      - change WLAN driver initialization



      Download:



      Instructions can be found in the OP!
      But look at this post too :)

      Have fun, enjoy the kernel and your phone.

      Donations are not mandatory but very welcome.
      If you like my work and want to buy me a coffee/green tea to keep development going: http://paypal.me/freak07
      5
      @Freak07
      I wondered always if it's possible to use as kernel 5.10/11/12 (mainline or newer lts)

      Let's say, you guys port always the minor revision updates of 4.14.xxx to the current sources that you have.
      But it should be possible to port device specific modules to upstream instead?
      I mean, yes i know that it will be a very hard task, because some things are incompatible and needs changes etc, and you will need to track oneplus changes and port them upwards... instead of backwards porting of 4.14 updates.

      But since the Qualcomm drivers at least are in the upstream kernel anyway, it shouldn't be thaaat impossible 😂

      So why no one ever tryed or did this? Just because it is that hard? Or is the 4.14 kernel any special, like a specifically android tree?
      I mean almost every newer android phone is based on 4.14, i seen that myself, but an 5.12 kernel on an android device, would actually be impressing 😂

      Don't take this as anything, i just want to understand it, not asking to port anything or whatever.

      Cheers ✌️

      It is possible and as far as I know it has been done. It might need a full firmware build though.

      Is it worth it? No, i don't think so.

      See also here:
      Post in thread '[REFERENCE] How to get an Android kernel up to date with linux-stable' https://forum.xda-developers.com/t/...-date-with-linux-stable.3626913/post-74033650

      Or here:

      Post in thread '[REFERENCE] How to get an Android kernel up to date with linux-stable' https://forum.xda-developers.com/t/...-date-with-linux-stable.3626913/post-75436939

      Is it worth to get snippets of a newer kernel base into the kernel? Yes it might, but it needs to be tested very well.
      See for example the scheduler from 4.19 (sd865) was backported to this kernel.

      Regarding the question that every kernel is seemingly 4.14:

      Sd845 is 4.9, Sd855 is 4.14, sd865 is 4.19 and sd888 is 5.4.
      Qcom forks a branch for each generation and all drivers for that soc generation are adjusted to that branch. Not only qcom drivers, but every other out of tree specific driver as well.

      Maybe that helps to understand it a bit better.
      5
      there have been some people who tried to run the kernel 4.4 and 4.10 (stock is 3.x.x) on an axon 7, but because you couldn't find everything for porting and it was not stable, you let it go again. So it is impossible but not very expensive where the 5.4 kernel is divided into two parts: boot.img and vendor_boot.img because the 5.4, if I understood correctly, is a gki (generic kernel image) and devices have specific data (drivers and co) are provided from the vendor_boot.img because they are not contained in the boot.img themselves.


      aner from 4.14.x to 4.19.x should be easier to do than the jump from 4.14.x to 5.4.x (but I have no plan myself)..


      but if someone who knew about it would want to try it (if @Freak07 would want to test something like that) I would agree to test it with my 7t

      GKI or Qualcomms take on it, QGKI has nothing to do with the 5.4 kernel in itself.
      It´s what google wants or plans to set as a requirement in the future.

      It just fell together with the sd888 and qcom using 5.4 as kernel base this year. The pixel 5 was the first device using a GKI kernel and that is still based on 4.19.
      Not much regarding the kernel itself has changed, except that more drivers are built now as external kernel modules instead of directly into the zImage. Some of them are in the vendor_boot.img and some of them not.
      QCOMs adaption of GKI, called QGKI is also again different. So the fragmentation goal google had it mind is only partially improved.
      I think generally these changes make it more difficult to provide a "standalone" out of tree built kernel like this one. But it should still be possible, as the pixel 5 kernel can still be built as a "non" GKI kernel with all drivers built directly into the zImage. If you´re interested look up the kernel projects in the pixel 5 forum.

      Of course, the jump from 4.14 to 4.19 is "smaller" than from 4.14 to 5.4. :)
      That was also explained in the posts I linked earlier.

      I don't think it's really worth it, really important things gets mostly backported to lts kernels, new features doesn't get added, but new features inside a kernel needs to be used by userspace too (programs/code that uses the kernel). So basically there is almost no benefit.

      my question was only meant to understand the reason. didn't wanted to start a discussion about it.

      Things where we would actually benefit needs to cherry picked and ported... like a more efficient lz4 algorithm or any other more efficient better code, that is compatible and used by userspace.
      Sure, probably there are many things that the kernel handle itself, that gives us benefits, without any "android" code that "controls" it and sure probably there are some things or more things of that if we would actually switch to 5.12 for example, but the risks and work is high to detect and fix the broken functions that probably negates the benefits.

      However, all what i mean is, it's a lot of work and a project, where the time could simply be better invested. If @Freak07 wants to try it, it's his time and choice.

      but for me personally, i would rather benefit from a kernel that is working/optimized for custom roms like derfest/crdroid etc, instead of oos. With cherry picked things that makes my device actually faster/more powersave etc...

      But as you see, in the conclusion everyone wants something, or wants something new, or likes to experiment etc, that's why we are here and customize our phones at all 😂

      But im not going to request anything, just wanted to know why i never seen an new kernel for our devices.

      Cheers ✌️

      It´s a little miracle that everything happened as it was and I found a few days and the time to do the fresh bringup of the A11 kernel for the OP7 series, when the source was still broken.
      So no, no interest from my side for trying this.

      Better custom rom compatability might be there in the future once everything is a bit more unified amongst the different custom roms. (and I find time)
      2
      @Freak07 Do you hide the bootloader unlock in the kernel? If not, would you consider doing that?

      for op7 and op7 pro it´s hidden in the kernel. op7t and 7tpro are excluded as that´s what breaks fingerprint scanner on those devices.

      However with hardware evalution in play safety net can´t be "fixed" in the kernel. there´s a magisk module called universal safety net fix from kdrag0n. You might want to give that a try.

      Can Oneplus 7 pro sprint 5g use this kernel?

      backup your current boot and dtbo.img (or extract them from your full firmware zip) so you can get back to stock via fastboot ,flash the kernel and report back.
      @Freak07 ,thanks for you time and great work ,
      i have question about kernel on A11 for 7 pro , i saw other developer like arter97 stop develop kernel on A11 for our devcie because of precaution damage to device , what can be happen with custom kernel to device on A11 and why its that?? thanks
      I have no idea what you´re talking about. I think people moved on, have less time, their life changed or have simply no motivation to update their project to Android 11. After all everyone of us does this for free and as a hobby.
    • 122
      Kirisakura-Kernel for the One Plus 7 Pro

      Hello everyone,

      Kirisakura - Kernel is designed to bring a handful of beneficial features to the device, while ensuring excellent performance and smoothness to get you safely through the day!

      This project aims to keep most of the subsystems updated, way ahead of the stock kernel, thereby improving security and performance, while keeping stability as the foucs during testing! This includes Linux-Stable, CAF-Upstream and kernel/common.
      Kernel Control Flow Integrity (Kernel-CFI), which is achieved by linking the kernel with LLD and Link Time Optimization (LTO), more precisely ThinLTO, are quite unique security features.
      The only kernels made by OEMs offering this security feature by default are the ones for the Pixel 3, 4 and 5 devices.
      The recently released Kirisakura-Kernel for the OnePlus 8 Pro was featured on the XDA-Portal due to the inclusion of CFI. The featured article explains CFI in great details, is easy to understand and definitely worth to read.
      If possible the latest Kirisakura-Kernel releases for various devices aim to include CFI in enforcing mode so users can benefit from this security features.

      Another security feature is Shadow Call Stack (SCS). Similar to CFI, only the Pixel 3, 4 and 5 kernels use this security feature.
      SCS is another security patchset that is aimed at preventing attacks via return oriented programming (ROP).
      ROP is a technique where the attacker gains control of the kernel stack to overwrite function return addresses and redirect execution to carefully selected parts of existing kernel code.
      If you´re interested here are a few good links:
      Google Security Blog explaining SCS.
      LLVM doc about SCS
      Android DOCs documenting SCS

      If reading about upstream in the paragraph above got you curious,have a read about Linux-Stable and why it is important here. The stable-process is not the same for every subsystem, but the general idea, rule of thumb and benefits are applicable for other subsystems as well.

      Quick explanation of CAF-Upstream. CAF is short for Codeaurora-Forums. This is the place where development from Qualcomm for their SoCs happens. This includes the Snapdragon 855/+ that´s built into the different SKUs of the OP7/T/Pro.
      The kernel-bases available on the Codeaurora-Forums, are basically the foundations OEMs use, to build their own kernel additions on top for devices featuring Qualcomm SoCs.
      The Qualcomm developers push regular updates to the bases of the different SoCs, a bit similar to how Linux-Upstream works. Most OEMs usually stop updating the initial base after the phone is released, and only cherry-pick certain commits to be in line with the android security bulletin.
      This kernel focuses amongst the other features to merge CAF-Updates in a regular manner, to provide updates, improvements and enhancements for SoC specific drivers and subsystems! This might take a while, because a lot of device specific testing is done on my end to ensure stability.

      The EAS implementation from 4.19 CAF (sd865/+) was ported to this kernel. There are several interesting mechanisms qcom worked on. The basic layout of the soc architecture ( 4xLittle- , 3xBig- and 1x Prime-Core(s)) has not changed from SD855 to SD865. That means instead of revolution there was a very nice evolution the scheduler underwent.

      The kernel includes a lot of improvements and contributions from other developers as well. Without this kernel would not exist.
      Many of the improvements originate from @arter97´s, @kdrag0n´s, @RenderBroken´s and @Sultanxda´s work. Many others contributed in some way or another to this kernel.
      A big thanks to all of them at this place!

      Now lets continue with a list of features in the next paragraph!


      Main Features:
      - Based on latest kernel sources from OnePlus for Android 11
      - Upstreamed against latest CAF
      - Linux-Stable-Upstream included to latest 4.14.231
      - compiled with Clang 12.0.4 prebuilt from Google
      - built with -O3 speed optimizations
      - Link-Time-Optimization (ThinLTO)
      - Kernel Control-Flow-Integration (CFI)
      - Shadow Call Stack (SCS) Security-Feature
      - Use ThinLTO which was first used in the Pixel 4 XL Android R-Preview Kernel instead of full LTO for full program visibility (needed by CFI)
      - fix CFI-Violations found in various subsystems like OnePlus/device specific drivers and qualcomm drivers
      - Link the kernel with LLD and use RELR-Relocation
      - include important fixes/improvements from kernel/common
      - Flashing the kernel will keep root!
      - Anykernel zip is based on the Anykernel3 repo from @osm0sis
      - include vDSO 32 patches to improve 32-bit performance
      - disable various debugging configs, that are not needed in a perf build kernel according to google.
      - Removed RTB(interrupt) logging entirely
      - disable selinux auditing (we don´t have to adress selinux denials running a stock rom)
      - fix several coding issues detected by newer Clang-Toolchains

      EAS related features:
      - EAS scheduler backported from 4.19 CAF (SD865/+ generation)
      - disable autogroups and use cgroups for more efficient task placement!
      - updates from kernel/common
      - scheduler updates from Googles Pixel kernel

      CPU related features:
      - dynamic WALT-Windows based on FPS (more information here and here )
      - Power saving workingqueues enabled by default (toggleable in EXKM)
      have a read here: https://lwn.net/Articles/731052/
      this complements EAS in general
      - Change various drivers ( MM, audio) to user power efficient workingqueues. This should work well in conjunction with EAS
      - include cpuidle patches from CAF
      - improvements to cpufreq/times/stats
      - improve memory allocations in binder driver
      - vdso32 patches as found on Google Pixel devices (brief documentation here)
      - arm64: lse: Prefetch operands to speed up atomic operations
      - improve bluetooth performance
      - improve /proc performance
      - remove VLA-usage (info)
      - option to disable touchboost in msm_performance

      File System related features:
      - improve memory allocations in sdcardfs
      - improve memory allocations in kernfs
      - writeback: hardcode dirty_expire_centisecs=3000 based on this commit
      - ufs improvements from pixel 4/ pixel 5 kernel
      - default IO scheduler to CFQ and readahead to 128

      Usability related features:
      - High Brightness Mode for increasing backlight level related to brightness accessible via EXKM app
      - Vibration Intensity adjustable via EXKM app
      - DC Dimming setting now fully functional
      - add support for steam controller
      - add support for nintendo switch controller

      Display related features:
      - KCAL to control the display
      - KLAPSE integrated
      - KCAL/KLAPSE: changes safety measures -> allow completely disabling two RGB values (this was requested to, for example, only have red values on night dimming)
      - display tweaks to save power on statically rendered images (taken from samsung galaxy source, which uses a very similar panel)
      - improve memory allocation

      GPU related features:
      - Ability to use the new 675mhz GPU step officially introduced by CAF (OP7/Pro is set to only use 585mhz as max)
      more information and benches in the 1.2.0 release post
      - add low_prio_worker thread for gpu driver (Improves performance when tearing down processes (eg, via LMK) and not blocking currently running UI from submitting work to the GPU
      - remove debugging tracing from GPU driver
      - improve memory allocation


      Network related features:
      - Wireguard Support (Details)
      - advanced TCP algorithms enabled
      - includes new bbr and bbrv2 (default to bbr as advised by @kdrag0n )

      Memory related features:
      - Memory Management patches from mainline kernel
      - Speculative Page Faults (1. 2) (CAF-default)
      - Fix various memory leaks in different subsystems
      - allow ZRAM to use higher swappiness values than 100
      - default ZRAM algorithm set to lz4 (fastest compression/decompression speeds)
      - possibility to use lzo-rle as default ZRAM compression algorithm (more information here and there )
      - possibility to use zstd as default ZRAM compression algorithm ( higher compression ratio, slightly lower compression decompression speed, more information and benchmarks here)
      - free up memory by removing unused memory regions from dts

      Security related features:
      - Control-Flow-Integration (CFI) and Link-Time-Optimization (LTO) ported from 4.19 kernel/common and Pixel 4/XL Kernel
      - Use ThinLTO which was first used in the Pixel 4 XL Android R-Kernel instead of full LTO
      - Shadow Call Stack (SCS) Security-Feature
      - fix various CFI-Violations found in various subsystems like Asus/device specific drivers and qualcomm drivers
      - enable init_on_alloc for even more security, more information can be found in the commit message

      WLAN Driver:
      - use CAF wlan driver and compile it inline, the only way to ensure working wlan with this kernel
      - the kernel cannot even force load prebuild WLAN module as the kernel base is way to far from stock!
      - do no longer rely on the pre compiled wlan driver module
      - completely removed qcom_rx wakelock in the wlan driver
      - removed debugging from wlan driver
      - removed logging from wlan driver

      Scheduler Setup and Kernel Settings:
      - kernel setting get automatically applied at boot
      - no magisk module is necessary on OOS 11



      Misc Features:
      Wakelock Blocker:
      - advanced wakelock blocker with the ability to block any wakelocks (dangerous, use with caution)
      - please read [URL="https://arstechnica.com/gadgets/2018/08/p-is-for-power-how-google-tests-tracks-and-improves-android-battery-life/"]this for further info
      - blocking a kernel wakelock should only be done in case of firmware incompatabilities (WiFi network at work (can´t be changed) causes deep sleep to not work on the phone.) That´s the only use case I see for this feature. The kernel does not features this to improve battery life!




      Requirements

      - unlocked Bootloader
      - USB-Debugging in developer options enabled
      - latest adb and fastboot binaries
      - working adb and fastboot environment
      - magisk root


      How to flash the Kernel:

      1. Download the latest kernel.zip

      1a. Optional: While it may not be necessary all times, you may want to restore stock boot.img, re-root with magisk and optionally install twrp.zip if coming from another kernel. Before reporting issues make sure you do that! Thank you!
      1b. Optional: The stock kernel can be restored by either dirty flashing the firmware.zip or by restoring the stock dtbo.img as well as boot.img. Those can be extracted via payload extractor from the firmware.zip.

      2. Make sure to use latest Magisk stable.

      3. Flash the kernel.zip via latest EXKM or FKM app. Alternatively via TWRP if TWRP is working.

      4. Reboot and profit.


      DOWNLOAD:
      Download is located always in this folder:

      Android 11:

      Android 10:


      Android Pie:


      Important: Read after Download
      Please take a look at the second post after flashing the kernel!

      Changelog:

      Android 9/Pie


      Android 10/Q:


      Android 11/R
      1.1.0_R https://forum.xda-developers.com/t/...r-op7-pro-aka-guacamole.3933916/post-84786595
      1.1.1_R https://forum.xda-developers.com/t/...r-op7-pro-aka-guacamole.3933916/post-84793145
      1.1.3_R https://forum.xda-developers.com/t/...r-op7-pro-aka-guacamole.3933916/post-84812661
      1.1.4_R https://forum.xda-developers.com/t/...r-op7-pro-aka-guacamole.3933916/post-84853537
      1.1.6_R https://forum.xda-developers.com/t/...r-op7-pro-aka-guacamole.3933916/post-84900619


      Donations:
      Donations are not mandatory but very welcome! :)
      If you want to support development or just buy me a coffee/tea to get development going: http://paypal.me/freak07

      Credits:
      Asus for the Zenfone 6!
      @osm0sis for all his work, including the ak2 installer!
      @tbalden for being the best HTC wingman!
      @LeeDroid for his awesome roms!
      @Captain_Throwback for all the mentoring and guidance!
      @Eliminater74 for bringing me into the game and the Inspiration
      @nathanchance for his upstream guidance and assistance
      @RenderBroken for helping me out
      @flar2 for all his work
      @joshuous for all the help he provided to me in the past!
      @arter97 for giving me advice
      @kdrag0n for giving me advice
      @topjohnwu for magisk!
      @osm0sis for anykernel!


      Contributors
      Freak07
      Source Code: https://github.com/freak07/Kirisakura_OP7Pro_A11

      Kernel Special Features:

      Version Information
      Status:
      Stable

      Created 2019-05-26
      Last Updated 2020-09-26
      47
      Update to 1.6.0

      Hey guys and girls,

      Just like I started the release of 1.4.0. I know this update took quite a while again.
      Good things take time and patience gets rewarded in this case :D
      When I wanted to release 1.5.0 a few weeks ago, the issue with brainservice and missing sources started creeping up, earlier I was very busy.
      The missing sources from OnePlus were a bit demotivating. There was no real reason to update the kernel, as it worked just fine as it was since the end of november.
      Lets hope the new update works equally well.

      Now we straight skip to 1.6.0. Merged latest CAF again like the last updates, merged latest linux-stable up to 4.14.162, patches from kernel common, brought in most recent f2fs-stable patches from a few weeks ago.
      Latest updates from OnePlus, which dropped yesterday are also included. These should fix the prime core maxing out, because the brainservice is getting stuck.
      So far all testers confirmed the phone behaving nicely. So I guess it´s good to go.

      I removed the rmnet extensions, as they seem to cause issues with wireguard. Please test wireguard again and report back. Maybe that was indeed the culprit.

      My magisk module is updated to work with magisk equal or higher to 20.2. (that means 20200 or higher!). The module won´t work on previous version of magisk most likely.
      Functionality of the module stays the same.
      Make sure to update to magisk 20.2 or the latest canary before flashing the module!


      Detailed changelog below.

      Enjoy!


      Changelog:

      Kernel Base
      - Latest One Plus source updates merged (no more issues with brainservice causing the device to become hot and maxing out prime core)
      - Upstream included from 4.14.156 to 4.14.162
      - Upstream updates from kernel/common
      - Latest CAF tag LA.UM.8.1.r1-13000-sm8150.0 for the SD855 merged
      - remove rmnet extension from the kernel (this might fix wireguard as somebody hinted at in the thread earlier)
      - update f2fs to latest state of f2fs-stable


      Features:
      - no new features

      Other changes:
      - update WiFi driver to LA.UM.8.1.r1-13000-sm8150.0
      - update audio driver to LA.UM.8.1.r1-13000-sm8150.0

      Magisk Module:
      - V3 adjusts the magisk module to the layout required by magisk 20200 or higher (magisk 20.2)

      Have fun flashing and enjoy your device with latest linux-stable :)

      Why is linux-stable important?

      I wish you all a nice day/evening!


      Download is below :)

      Download:


      Kernel: https://www.androidfilehost.com/?fid=4349826312261694297

      Magisk Module: https://www.androidfilehost.com/?fid=4349826312261694298



      Instructions can be found in the OP!
      But look at this post too :)

      Have fun, enjoy the kernel and your phone.

      If you like my work please consider a donation.
      Donations are not mandatory but very welcome.
      If you like my work and want to buy me a coffee/green tea: http://paypal.me/freak07
      42
      Hey guys and girls,

      I know this took a while, but it´s a very busy time for me currently. I hope you all understand, but here´s finally a new build, that went through some good testing and should have no isses :)
      The OnePlus 7Ts fingerprint scanner should work fine on OOS now.
      All recent changes published by OnePlus are included as well.

      Detailed changelog below.

      Enjoy!


      Changelog:

      Kernel Base
      - Latest One Plus source updates merged
      - Upstream included from 4.14.152 to 4.14.155
      - Upstream updates from kernel/common
      - add support for OnePlus 7T devices.


      Features:
      - no new features


      Other changes:
      - look at github :)

      Magisk Module:
      - no new changes, still v2

      Have fun flashing and enjoy your device with latest linux-stable :)

      Why is linux-stable important?

      I wish you all a nice day/evening!


      Download is below :)

      Download:


      Kernel: https://www.androidfilehost.com/?fid=4349826312261647724

      Magisk Module: https://www.androidfilehost.com/?fid=1899786940962614206



      Instructions can be found in the OP!
      But look at this post too :)

      Have fun, enjoy the kernel and your phone.

      If you like my work please consider a donation.
      Donations are not mandatory but very welcome.
      If you like my work and want to buy me a coffee/green tea: http://paypal.me/freak07
      41
      Update to 1.9.7

      Hey guys and girls,

      So here´s finally the next update. Linux-stable upstream, CAF upstream.
      For the detailed changelog take a look below.


      Downloads below.

      Enjoy!


      Changelog:

      Kernel Base
      - Upstream included from 4.14.174 to 4.14.182
      - Upstream updates from kernel/common
      - Latest CAF tag LA.UM.8.1.r1-14700-sm8150.0 for the SD855 merged
      - built with clang 11.0.1 from Google prebuilts
      - updates from kernel/common
      - fix two memory leaks - thanks to @anupritaisno1 for the heads up

      Features:
      - Wireguard updated

      Other changes:
      - update WiFi driver to LA.UM.8.1.r1-14700-sm8150.0
      - update audio driver to LA.UM.8.1.r1-14700-sm8150.0

      Magisk Module:
      - no update - use v4

      Have fun flashing and enjoy your device with latest linux-stable :)

      Why is linux-stable important?

      I wish you all a nice day/evening!


      Download is below :)

      Download:

      OOS:
      Kernel: https://www.androidfilehost.com/?fid=4349826312261825431

      Magisk Module: https://www.androidfilehost.com/?fid=4349826312261756065


      Custom ROMs:
      Kernel: https://www.androidfilehost.com/?fid=4349826312261825432

      Magisk Module: https://www.androidfilehost.com/?fid=4349826312261756073




      Instructions can be found in the OP!
      But look at this post too :)

      Have fun, enjoy the kernel and your phone.

      If you like my work please consider a donation.
      Donations are not mandatory but very welcome.
      If you like my work and want to buy me a coffee/green tea: http://paypal.me/freak07
      40
      Kirisakura 1.0.0 for Android 10

      Hey guys and girls,

      So it was a long time, but I finally found time to release the kernel for Android 10 now.
      Versioning will start at 1.0.0 again on the new Android version now :)

      The kernel was actually ready for bascically 2 weeks, since the stable source was released.
      I fell for it and actually started to work on a kernel with the beta sources from OnePlus for Android 10. Then stable was released and I saw no clean way to merge the stable OOS source into my tree, so I had to start from scratch.
      While merging CAF in both, the beta and the stable source I noticed some very weird merge conflicts. @arter97 dropped me the crucial hint. (thanks to him!)
      The source from OOS appears to be based on a quite recent CAF base, with CAF commits present in history up to September 2nd.
      In fact the source is based on a CAF base that dates to the end of July! When merging CAF, now all the commits between this time frame were left out, because they appeared as commits in the history, but the actual code wasn´t.
      You might call this fraud from OP :D I don´t know what´s the reason for this, but I don´t like it.
      So for this release now, the OP source was reset back to the actual state it was on, all OnePlus driver changes were re-applied and most recent CAF was merged properly!

      Most notable changes for Android 10:
      - OOS specific stuff can´t be removed completely from the kernel without breaking the rom or making things worse in general. Rom side is dependant on these kernel modifications, even if I don´t like them
      - it´s still recommded to flash the companion module, it improves jitter and smoothness
      - nearly all previous features are still intact, check the OP I will update it in time
      - the general ZRAM setup I left untouched this time. OOS on Android 10 is very RAM hungry. So I feel 6GB devices need the 2GB of ZRAM. (turn ram boost in settings on) I enabled LZ4 as compression algorithm compared to lzo from stock for better ZRAM performance.
      - all optimizations plus more are still intact from previous Pie releases.
      - system and vendor don´t get modified. To uninstall simply flash back stock kernel and disable/remove the magisk module

      For detailed changes, have a look further down at the changelog! :)

      Enjoy!


      Changelog:

      Kernel Base
      - Based on latest sources from OnePlus for Android 10
      - Latest CAF merged properly
      - Upstream to 4.14.149
      - latest changes from kernel/common merged
      - build with CLANG 10

      Features:
      - all features from previous releases are still intact
      - GPU Max freq at 585mhz now. I won´t do any hackery to get a higher freq for now. 675mhz isn´t stable for everyone and 585mhz is plenty for every game available.


      Other changes:
      - please check github

      Magisk Module:
      - Update for Android 10 (GCAM is not supported yet this time around)

      Have fun flashing and enjoy your device with latest linux-stable :)

      Why is linux-stable important?

      I wish you all a nice day/evening!


      Download is below :)

      Download:


      Kernel: https://www.androidfilehost.com/?fid=1899786940962607237

      Magisk Module: https://www.androidfilehost.com/?fid=1899786940962607236



      Instructions can be found in the OP!
      But look at this post too :)

      thanks for @arter97 and @kdrag0n for helping me out!

      Have fun, enjoy the kernel and your phone.

      If you like my work please consider a donation.
      Donations are not mandatory but very welcome.
      If you like my work and want to buy me a coffee/green tea: http://paypal.me/freak07
    Our Apps
    Get our official app!
    The best way to access XDA on your phone
    Nav Gestures
    Add swipe gestures to any Android
    One Handed Mode
    Eases uses one hand with your phone