[EOL] [OP5] [OOS/CUSTOM 8.1.0] [4.4.140] [CLANG 7.0] Flash Kernel v4.29

Status
Not open for further replies.
Search This thread

nathanchance

Senior Recognized Developer / Contributor
Jul 22, 2015
13,760
50,106
29
Mesa, AZ
nathanchance.dev
Update!

GIven that OnePlus hasn't updated the kernel source yet, I'm going to say this is compatible with 5.1.3 and Open Beta 12. Of course, if they do drop the source, you know I'll be one of the first to update :p

Remember any and all bug reports need to include logs and clear steps to reproduce (see the info in the OP). You should also know what version it started with. If you want to be a tester and get builds before they are released here or just hangout, feel free to stop by Telegram!


Short changelog

  • Linux 4.4.138
  • Merge Qualcomm updates (LA.UM.6.2.r1-08900-sdm660.0)


Downloads

Primary: https://nathanchance.me/downloads/kernels/op5/8.x/stable/

Mirror: https://github.com/nathanchance/fk-zips


Commits

Kernel: https://github.com/nathanchance/op5/commits/8.1.0-unified

AnyKernel: https://github.com/nathanchance/AnyKernel2/commits/op5-flash-8.x
 

nathanchance

Senior Recognized Developer / Contributor
Jul 22, 2015
13,760
50,106
29
Mesa, AZ
nathanchance.dev
In case you guys don't follow me on Twitter or Google+, I announced yesterday that Franco Kernel Manager will now seed out Flash Kernel updates, just like FrancoKernel; just go to Options and choose the "Flash Kernel" channel. You can download the latest zip from my server and flash it all without ever having to reboot into recovery, it's really great. If you don't think it's a good investment, I will still be seeding out builds as I normally have. I have updated the OP with instructions if you get stuck. Let me know if you have any questions or issues, enjoy!
 

camseye

Senior Member
Mar 17, 2016
174
42
OnePlus 9
In case you guys don't follow me on Twitter or Google+, I announced yesterday that Franco Kernel Manager will now seed out Flash Kernel updates, just like FrancoKernel; just go to Options and choose the "Flash Kernel" channel. You can download the latest zip from my server and flash it all without ever having to reboot into recovery, it's really great. If you don't think it's a good investment, I will still be seeding out builds as I normally have. I have updated the OP with instructions if you get stuck. Let me know if you have any questions or issues, enjoy!
Its a great but some users don't have franco updater app, so it would be nice if we get the updates outside also. Thanks.

Sent from my OnePlus 5 using XDA Labs
 

nathanchance

Senior Recognized Developer / Contributor
Jul 22, 2015
13,760
50,106
29
Mesa, AZ
nathanchance.dev
Its a great but some users don't have franco updater app, so it would be nice if we get the updates outside also. Thanks.

Sent from my OnePlus 5 using XDA Labs

"If you don't think it's a good investment, I will still be seeding out builds as I normally have."

Nothing changes, this is a supplement to what I have been doing, not a replacement.
 

Cichy26

Senior Member
Jan 13, 2011
160
42
OK thanks for your answer.
Im on OOS 5.1.3
Maybe the issue is here!

I'm on OOS and wifi work good. Do you have Xposed?

PS. This morning and all day wifi works great but now I'm in home and wifi doesn't for me too and crash when I go to settings wifi...
 

Attachments

  • Screenshot_20180622-204438.jpg
    Screenshot_20180622-204438.jpg
    213.7 KB · Views: 1,586
Last edited:

L22EEW

Senior Member
Mar 13, 2008
1,149
251
Wales
www.facebook.com
4.23 Update causes issues with my WiFi. Sometimes WiFi connects, then other times I can't even connect.

Very strange.

Reverting back to 4.22 for the time being.

Sent from my OnePlus 5 using XDA Labs
 
  • Like
Reactions: Cichy26

infatality

Senior Member
May 7, 2011
1,321
694
Singapore
OnePlus 5
Google Pixel 2 XL
In case you guys don't follow me on Twitter or Google+, I announced yesterday that Franco Kernel Manager will now seed out Flash Kernel updates, just like FrancoKernel; just go to Options and choose the "Flash Kernel" channel. You can download the latest zip from my server and flash it all without ever having to reboot into recovery, it's really great. If you don't think it's a good investment, I will still be seeding out builds as I normally have. I have updated the OP with instructions if you get stuck. Let me know if you have any questions or issues, enjoy!

Interesting solution.. But could we control the kernel using franco app? As the recommended is exkm or kernel auditor. Would be nice if franco app can control the kernel too.. Have 2 kernel manager will cause issues for some people if they unknowing have different options enabled on both kernel manager.

PS: I had bought franco app ages ago.. If franco app could also control the kernel I will be swapping over. As I'm using exkm to control the kernel.

Sent from my OnePlus 5 using XDA Labs
 

mp3deviant721

Senior Member
Jan 4, 2013
1,205
547
Interesting solution.. But could we control the kernel using franco app? As the recommended is exkm or kernel auditor. Would be nice if franco app can control the kernel too.. Have 2 kernel manager will cause issues for some people if they unknowing have different options enabled on both kernel manager.

PS: I had bought franco app ages ago.. If franco app could also control the kernel I will be swapping over. As I'm using exkm to control the kernel.

Of course it does. Installed Franco Kernel manager yesterday and it can tune it just like EXKM. I'll be sticking with EXKM myself. I just like that app better.
 

Sheikh Isa

Senior Member
Jan 2, 2015
62
18
Doha Qatar
Network and WiFi Problem

UsFSxNO.png

Introduction

Hello everyone, this is my personal kernel for the OnePlus 5. While I am not a super star kernel developer, I do know my way around it. My philosophy on kernels is pretty simple:
  • Follow stable Linux always. Updates will be delivered within 24 hours of their release to kernel.org.
  • Stable kernel rules work best (only add small things when possible).
  • Security and stability are paramount. Vulnerabilities are patched as soon as they are disclosed.
  • Features will be added only as needed (I have a list of things in the FAQ I will NOT add, even if requested).
Hopefully you enjoy :)


Important thread information!

  1. I refuse to acknowledge/respond to bug reports that do not include clear steps to reproduce, a logcat, and a console ramoops (if random rebooting) or a dmesg (any other issues). Follow this guide to do this.
  2. Keep things civil, I do NOT tolerate flaming of any kind.
  3. OT is allowed.

Features

NOTE: This list fluctuates with versions, it will not always been 100% up to date

Here are the major features of the kernel (feel free to explore Github)
  • Up to date with OOS (5.1.3 and Open Beta 12)
  • Custom branch compatible with most 8.1.0 ROMs (see below)
  • Up to date with the latest stable Linux version (4.4.138)
  • Up to date with the latest CAF tag for Oreo (LA.UM.6.2.r1-08900-sdm660.0)
  • Mainline patches from Linux, focusing on bug fixes/security
  • Mainline CFQ scheduler improvements
  • Kernel hardening from CopperheadOS
  • Several subsystems converted to use power efficient workqueues
  • The following user facing features:
    • Accidental touch protection on hardware keys
    • Backlight dimmer
    • KCAL color control
    • Maple I/O scheduler
    • Sweep2sleep
    • Sound control
    • Wakelock control
  • Latest WireGuard snapshot (0.0.20180613)
  • Westwood as the default TCP algorithm
  • Built with a self compiled Clang 7.0 toolchain with a local initialization sanitizer (build script here, previously built with the latest Google Clang 6.0 toolchain here)
  • Hides bootloader unlock from SafetyNet (can still fail through other means)
  • Disables dm-verity
  • Does NOT modify decryption status
  • Flashed with AnyKernel2 (thanks to @osm0sis)

Downloads

Primary: https://nathanchance.me/downloads/kernels/op5
Mirror: https://github.com/nathanchance/fk-zips

NOTE: The newer builds of 3.x and 4.x are unified! The zip will dynamically detect if you are on OxygenOS or a custom ROM and flash the correct kernel image.

NOTE #2: 3.x is for OOS 5.x 8.0, 4.x is for OOS 5.x 8.1

Folder descriptions:
  1. alpha: Very likely broken or contains highly experimental patches; should only be run if you want to be a part of cutting edge development
  2. beta: Normal testing build; bootable and has no immediate issue.
  3. rc: Same as a beta but has had no issues for at least three days. I recommend running these when they are out as they will be pushed to the stable folder after a few days.
  4. stable: Same as rc but has had no issues for at least three days. If you are unsure which one to run, just use this one.
  5. archive: Old stable kernels

All issues with any build other than a stable build MUST be reported via Telegram. I keep my development out in the open but I don't let it cross over onto XDA. I do recommend participating as I am quicker to fix issues if I have multiple people testing. I request that you do not mirror my kernels. If the primary site is down, please use the mirror. Navigate to the file you want and click the download button. If you are mobile, tell GitHub to use the desktop version. I don't need posts telling me the primary site is down, it's my build server so I'll know if it is down. Thanks!

Installation

Through TWRP:

If you are on stock:

  • If you are on the stock kernel: flash the kernel zip and reboot
  • If you are on a custom kernel: flash the stock boot image matching your build number, flash the kernel zip, and reboot. I would also recommend dirty flashing the latest OOS zip as well.
If you are on a custom ROM:

  • If you are on the kernel that came with your ROM: flash the kernel zip and reboot
  • If you are on a custom kernel: dirty flash your ROM zip, flash the kernel zip, and reboot
Upgrading from one Flash version to the other:

Just flash the kernel zip and reboot

Through Franco Kernel Manager (requires root):

If you are not on the Flash Kernel channel, go to Options, select "Channel for Kernel updates", choose "Flash Kernel", then go back to "Kernel flasher".

Getting back to stock if necessary (only needed if coming from another kernel):

  1. Grab the latest stock boot image from the OTA zip.
  2. Click on "Manual flasher", select the boot image, and select "Just Flash".
  3. Reinstall Magisk through Magisk Manager (Install -> Direct Install).

Stable build (when on stock or upgrading from another Flash release):

  1. Tap on "Get Flash Kernel"
  2. Tap on "Auto-flash"
  3. Your phone should reboot automatically!

Test build (alpha/beta/rc) [when on stock or upgrading from another Flash release]:

  1. Download the zip (and optionally, the md5) from my server
  2. Tap on "Manual flasher"
  3. Navigate to Download
  4. Tap on the zip, select Auto-flash, and choose one of the options.
  5. Reboot and enjoy!

Changelog

Latest release post!

GitHub serves as the ultimate changelog, links are at the bottom of this post


Frequently asked questions
1.1 Q: I am having an issue, can you help me?
1.1 A: I am not an amazing kernel developer but I will certainly try my best. First, start by reading the release posts, as I may make note of a particular issue. Also search the thread to see if I have discussed it before. If you see nothing, please provide me with a dmesg/last_kmsg and logcat, your ROM/kernel version, and a detailed description of the issue, following this guide. If I can't reproduce reliably, I'm not going to fix the issue.

1.2 Q: What ROMs are compatible with the custom builds?
1.2 A: As of March 14th, 2018, I have confirmed the following ROMs are 100% compatible with Flash:
  • LineageOS
  • Dirty Unicorns
  • Codename: Phoenix
  • GZOSP/Validus
  • OmniROM
  • AICP

If you are using a ROM with no issues, let me know and I'll add it here! If you are having issues, following the above steps and I'll attempt to fix whatever incompatibility there is. If I can't do it without breaking LineageOS/Dirty Unicorns, you're out of luck.

1.3 Q: Can you add xyz feature?
1.3 A: If you link me the commits or tell me what kernel you had the feature in, I can take a look at them. I will not go digging super hard for commits and I will ignore requests that don't include this information. I won't promise that I will merge every request but I will always take it into consideration. I will NOT add the following:
  • Overclocking or underclocking of CPU or GPU
  • Undervolting
  • Any governors other than interactive
  • Any schedulers other than cfq and maple
  • Anything that compromises performance

1.4 Q: How do I control the kernel?
1.4 A: I'd recommend using either @flar2's EX Kernel Manager or @Yoinx's Kernel Adiutor-Mod; both are extremely solid and have given me no issues.

1.5 Q: OMFG MY BATTERY SUXXXX PLS FIX!!!
1.5 A: The kernel doesn't drain any battery, use an app like BetterBatteryStats to figure out what app is screwing with your phone.

1.6 Q: I am not getting notifications on OOS, what is the cause?
1.6 A: This could be for a couple of reasons. If you haven't already, disable advanced optimizations in Settings > Battery > Battery optimization > Three menu dots. Another reason may be that I ship a compiled Wi-Fi module. I do this for two reasons: I want to have the latest fixes and I enable CONFIG_MODULE_SIG, which checks the signature of a module before loading it for security reasons. This could introduce some incompatibility with OOS, which is something I have no control over.


Thanks to:
The various other developers for their patches (specifically @zx2c4 for WireGuard and @joshuous for fixing the notification delay on Wi-Fi)
@osm0sis for AnyKernel2
@adinkwok for being a bro
@phantom146 for the thread banner
All of you guys for viewing the thread


A note about donations

Quite a few people have asked to donate to me in the past and I have turned them down. I am not in this for the money, this is my hobby, something I truly enjoy. If you truly want to donate to something (it is not expected in the slightest), I recommend an entity like the Open Source Initiative, the Free Software Foundation, XDA, or any one of the people I have thanked in the OP. Additionally, you are free to copy any and all of my work; the only thing I request is that you not ask for donations as well (though I can't really enforce this lol). Thank you.


Kernel source links

7.1.x (OxygenOS - 1.x): https://github.com/nathanchance/op5/commits/7.1.x-oos
7.1.x (custom ROMs - 1.x): https://github.com/nathanchance/op5/commits/7.1.x-custom
8.0.0 (OxygenOS - 2.x): https://github.com/nathanchance/op5/commits/8.0.0-oos
8.0.0 (custom ROMs - 2.x): https://github.com/nathanchance/op5/commits/8.0.0-custom
8.0.0 (OxygenOS - 3.x) and 8.1.0 (custom ROMs - 3.x): https://github.com/nathanchance/op5/commits/8.x-unified
8.1.0 (OxygenOS - 4.x) and 8.1.0 (custom ROMs - 4.x): https://github.com/nathanchance/op5/commits/8.1.0-unified

AnyKernel (7.1.x): https://github.com/nathanchance/AnyKernel2/commits/op5-flash-7.1.x
AnyKernel (8.x): https://github.com/nathanchance/AnyKernel2/commits/op5-flash-8.x

DISCLAIMER: I openly welcome off topic in my threads. Mods, please do not clean off topic discussion and users, do not complain about off topic discussion here. I may direct you to another thread if it is so suited but I won't have the discussion cleaned. Thank you.

Hii i tried Installing This kernal as per ur guide i was on open beta 12 rooted with magisk and twrp of bluespark bt when i install it it started giving me problem in network and wifi and even settings also getting stopped WiFi not turning on if i switch off thnx if any one can help me in it
 

nathanchance

Senior Recognized Developer / Contributor
Jul 22, 2015
13,760
50,106
29
Mesa, AZ
nathanchance.dev
Update!

Don't forget the announcement I made a few days ago regarding Kernel Manager for Franco Kernel :)

Remember any and all bug reports need to include logs and clear steps to reproduce (see the info in the OP). You should also know what version it started with. If you want to be a tester and get builds before they are released here or just hangout, feel free to stop by Telegram!


Short changelog

  • Hopefully fix all Wi-Fi issues on OxygenOS
  • WireGuard snapshot 0.0.20180620
  • Small sdcardfs from kernel/common
  • Optimize installer for custom ROMs


Downloads

Primary: https://nathanchance.me/downloads/kernels/op5/8.x/stable/

Mirror: https://github.com/nathanchance/fk-zips


Commits

Kernel: https://github.com/nathanchance/op5/commits/8.1.0-unified

AnyKernel2: https://github.com/nathanchance/AnyKernel2/commits/op5-flash-8.x
 

nathanchance

Senior Recognized Developer / Contributor
Jul 22, 2015
13,760
50,106
29
Mesa, AZ
nathanchance.dev
Update!

Sorry for the update so soon after 4.24 but I take WireGuard updates almost as serious as I take linux-stable because it's a great but fast moving protocol so it's important to have all of the current improvements/fixes. If you don't use WireGuard, feel no pressure to upgrade!

Remember any and all bug reports need to include logs and clear steps to reproduce (see the info in the OP). You should also know what version it started with. If you want to be a tester and get builds before they are released here or just hangout, feel free to stop by Telegram!


Short changelog

  • WireGuard snapshot 0.0.20180625


Downloads

Primary: https://nathanchance.me/downloads/kernels/op5/8.x/stable/

Mirror: https://github.com/nathanchance/fk-zips

Remember it can be auto-flashed with Kernel Manager for Franco Kernel!


Commits

Kernel: https://github.com/nathanchance/op5/commits/8.1.0-unified

AnyKernel2: https://github.com/nathanchance/AnyKernel2/commits/op5-flash-8.x
 
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 115
    UsFSxNO.png

    Introduction

    As of July 11th, 2018, this kernel has been discontinued as I have sold the device. Since I don't recommend using a kernel that is not constantly updating, I suggest looking at RenderZenith if you are on OxygenOS or Singularity if you are on a custom ROM.

    Hello everyone, this is my personal kernel for the OnePlus 5. While I am not a super star kernel developer, I do know my way around it. My philosophy on kernels is pretty simple:
    • Follow stable Linux always. Updates will be delivered within 24 hours of their release to kernel.org.
    • Stable kernel rules work best (only add small things when possible).
    • Security and stability are paramount. Vulnerabilities are patched as soon as they are disclosed.
    • Features will be added only as needed (I have a list of things in the FAQ I will NOT add, even if requested).
    Hopefully you enjoy :)


    Important thread information!

    1. I refuse to acknowledge/respond to bug reports that do not include clear steps to reproduce, a logcat, and a console ramoops (if random rebooting) or a dmesg (any other issues). Follow this guide to do this.
    2. Keep things civil, I do NOT tolerate flaming of any kind.
    3. OT is allowed.

    Features

    NOTE: This list fluctuates with versions, it will not always been 100% up to date

    Here are the major features of the kernel (feel free to explore Github)
    • Up to date with OOS (5.1.3 and Open Beta 12)
    • Custom branch compatible with most 8.1.0 ROMs (see below)
    • Up to date with the latest stable Linux version (4.4.140)
    • Up to date with the latest CAF tag for Oreo (LA.UM.6.2.r1-09300-sdm660.0)
    • Mainline patches from Linux, focusing on bug fixes/security
    • Mainline CFQ scheduler improvements
    • Kernel hardening from CopperheadOS
    • Several subsystems converted to use power efficient workqueues
    • The following user facing features:
      • Accidental touch protection on hardware keys
      • Backlight dimmer
      • KCAL color control
      • Maple I/O scheduler
      • Sweep2sleep
      • Sound control
      • Wakelock control
    • Latest WireGuard snapshot (0.0.20180708)
    • Westwood as the default TCP algorithm
    • Built with a self compiled Clang 7.0 toolchain with a local initialization sanitizer (build script here, previously built with the latest Google Clang 6.0 toolchain here)
    • Hides bootloader unlock from SafetyNet (can still fail through other means)
    • Disables dm-verity
    • Does NOT modify decryption status
    • Flashed with AnyKernel2 (thanks to @osm0sis)

    Downloads

    Primary: https://github.com/nathanchance/op5/releases

    NOTE: The newer builds of 3.x and 4.x are unified! The zip will dynamically detect if you are on OxygenOS or a custom ROM and flash the correct kernel image.

    NOTE #2: 3.x is for OOS 5.x 8.0, 4.x is for OOS 5.x 8.1


    Installation

    Through TWRP:

    If you are on stock:

    • If you are on the stock kernel: flash the kernel zip and reboot
    • If you are on a custom kernel: flash the stock boot image matching your build number, flash the kernel zip, and reboot. I would also recommend dirty flashing the latest OOS zip as well.
    If you are on a custom ROM:

    • If you are on the kernel that came with your ROM: flash the kernel zip and reboot
    • If you are on a custom kernel: dirty flash your ROM zip, flash the kernel zip, and reboot
    Upgrading from one Flash version to the other:

    Just flash the kernel zip and reboot

    Through Franco Kernel Manager (requires root):

    Getting back to stock if necessary (only needed if coming from another kernel):

    1. Grab the latest stock boot image from the OTA zip.
    2. Click on "Manual flasher", select the boot image, and select "Just Flash".
    3. Reinstall Magisk through Magisk Manager (Install -> Direct Install).

    If on stock or upgrading from another Flash release:

    1. Download the zip (and optionally, the md5) from the link above
    2. Tap on "Manual flasher"
    3. Navigate to Download
    4. Tap on the zip, select Auto-flash, and choose one of the options.
    5. Reboot and enjoy!

    Changelog

    Latest release post!

    GitHub serves as the ultimate changelog, links are at the bottom of this post


    Frequently asked questions
    1.1 Q: I am having an issue, can you help me?
    1.1 A: I am not an amazing kernel developer but I will certainly try my best. First, start by reading the release posts, as I may make note of a particular issue. Also search the thread to see if I have discussed it before. If you see nothing, please provide me with a dmesg/last_kmsg and logcat, your ROM/kernel version, and a detailed description of the issue, following this guide. If I can't reproduce reliably, I'm not going to fix the issue.

    1.2 Q: What ROMs are compatible with the custom builds?
    1.2 A: As of March 14th, 2018, I have confirmed the following ROMs are 100% compatible with Flash:
    • LineageOS
    • Dirty Unicorns
    • Codename: Phoenix
    • GZOSP/Validus
    • OmniROM
    • AICP

    If you are using a ROM with no issues, let me know and I'll add it here! If you are having issues, following the above steps and I'll attempt to fix whatever incompatibility there is. If I can't do it without breaking LineageOS/Dirty Unicorns, you're out of luck.

    1.3 Q: Can you add xyz feature?
    1.3 A: If you link me the commits or tell me what kernel you had the feature in, I can take a look at them. I will not go digging super hard for commits and I will ignore requests that don't include this information. I won't promise that I will merge every request but I will always take it into consideration. I will NOT add the following:
    • Overclocking or underclocking of CPU or GPU
    • Undervolting
    • Any governors other than interactive
    • Any schedulers other than cfq and maple
    • Anything that compromises performance

    1.4 Q: How do I control the kernel?
    1.4 A: I want to be very clear: the kernel does NOT need to be tuned to be useful. Most of the improvements are under the hood and don't require any user intervention to take advantage of them. In fact, if you don't know what you are doing, you could degrade the experience.

    To control the user visible features of the kernel listed above, I recommend using either @franciscofranco's Kernel Manager for Franco Kernel (which has Flash Kernel support for downloading and automatically flashing the latest kernel zip along with some nice, user friendly ways for tuning the kernel) or @flar2's EX Kernel Manager.

    1.5 Q: OMFG MY BATTERY SUXXXX PLS FIX!!!
    1.5 A: The kernel doesn't drain any battery, use an app like BetterBatteryStats to figure out what app is screwing with your phone.

    1.6 Q: I am not getting notifications on OOS, what is the cause?
    1.6 A: This could be for a couple of reasons. If you haven't already, disable advanced optimizations in Settings > Battery > Battery optimization > Three menu dots. Another reason may be that I ship a compiled Wi-Fi module. I do this for two reasons: I want to have the latest fixes and I enable CONFIG_MODULE_SIG, which checks the signature of a module before loading it for security reasons. This could introduce some incompatibility with OOS, which is something I have no control over.


    Thanks to:
    The various other developers for their patches (specifically @zx2c4 for WireGuard and @joshuous for fixing the notification delay on Wi-Fi)
    @osm0sis for AnyKernel2
    @franciscofranco for adding Flash Kernel support to Kernel Manager for Franco Kernel
    @adinkwok for being a bro
    @phantom146 for the thread banner
    All of you guys for viewing the thread


    A note about donations

    Quite a few people have asked to donate to me in the past and I have turned them down. I am not in this for the money, this is my hobby, something I truly enjoy. If you truly want to donate to something (it is not expected in the slightest), I recommend an entity like the Open Source Initiative, the Free Software Foundation, XDA, or any one of the people I have thanked in the OP. Additionally, you are free to copy any and all of my work; the only thing I request is that you not ask for donations as well (though I can't really enforce this lol). Thank you.


    Kernel source links

    7.1.x (OxygenOS - 1.x): https://github.com/nathanchance/op5/commits/7.1.x-oos
    7.1.x (custom ROMs - 1.x): https://github.com/nathanchance/op5/commits/7.1.x-custom
    8.0.0 (OxygenOS - 2.x): https://github.com/nathanchance/op5/commits/8.0.0-oos
    8.0.0 (custom ROMs - 2.x): https://github.com/nathanchance/op5/commits/8.0.0-custom
    8.0.0 (OxygenOS - 3.x) and 8.1.0 (custom ROMs - 3.x): https://github.com/nathanchance/op5/commits/8.x-unified
    8.1.0 (OxygenOS - 4.x) and 8.1.0 (custom ROMs - 4.x): https://github.com/nathanchance/op5/commits/8.1.0-unified

    AnyKernel (7.1.x): https://github.com/nathanchance/AnyKernel2-archive/commits/op5-flash-7.1.x
    AnyKernel (8.x): https://github.com/nathanchance/AnyKernel2-archive/commits/op5-flash-8.x

    DISCLAIMER: I openly welcome off topic in my threads. Mods, please do not clean off topic discussion and users, do not complain about off topic discussion here. I may direct you to another thread if it is so suited but I won't have the discussion cleaned. Thank you.
    72
    Update!

    ALRIGHT, after head bashing and teeth gnashing, I finally have a unified kernel branch for OxygenOS and custom ROMs! This is unique in the OnePlus scene (at least from what I have seen) because kernel developers traditionally have two branches: one for OOS and one for custom ROMs. I can't take full credit for the initial idea, @neobuddy89 made the comment on Nougat he would like to do this. I decided to act on it though now that Lineage has started seeding out 8.1.0 builds. What this ultimately means for you guys is the kernel should perform almost identically between both OOS and custom ROMs. Previously, there may be patches missing between the two. This took a LOT of effort for a few reasons:

    1. I needed to improve AnyKernel2 to support two different module paths since I've seen both with ROMs now: /system/lib/modules (as it has traditionally ben) and /system/vendor/lib/modules (which is what Google recommends). @osm0sis was incredibly supportive of getting the changes into AK2 upstream, I cannot sing enough praises of working with him (give his thread a like if you haven't already, custom kernels wouldn't be as compatible as they are without his tool).

    2. I had to distill Lineage's changes from OnePlus's. On Nougat, merging in the latest CAF tag into OnePlus's source was pretty much impossible, they destroyed the power stack with Dash Charging. Merging the latest CAF tag is a good idea for several reasons (like security and bug fixes) so to get around this, Lineage took the latest CAF tag for our chipset and added the OnePlus specific drivers that were needed to separate folders/files. On Oreo, merging the latest CAF into OnePlus's source has been relatively painless (a few conflicts here and there but nothing as bad as before). However, rather than rebase their changes (or even assess if the way they did the source on Nougat was necessary anymore) on OnePlus's Oreo source, they just took the latest Oreo tag, added the Nougat versions of the drivers, then updated those drivers to the Oreo versions. It's created some interesting incompatibilities, specifically with NFC.

    3. Finally, I had to make sure everything was good with a few other big ROMs. I am a part of Dirty Unicorns so I obviously had to make that compatible. Codename: Phoenix has become very popular in the past couple of weeks so I wanted to make sure everything was working with that. @siankatabg has been a pleasure to work with, he's even building Flash inline, which is great! Validus and GZOSP are also known to be compatible and @martinusbe is another great developer who doesn't get enough credit.

    All in all, I have a great, solid kernel at the end and it will make keeping it up to date much easier :)

    A couple of side notes:

    - I just started my university semester on Monday. I have not been performing my best during the past few semesters so I will really need to focus. I will still be releasing semi-regular updates but they will most likely not contain much more than CAF and linux-stable updates, unless something really piques my interest).

    - I am going to try and keep the supported custom ROMs section up to date this cycle. Please tell me if you notice any issues so I can either fix them or declare a ROM incompatible. Generally, ROMs that follow Lineage in terms of device support will be supported. Any major deviation that would require a third build just for them means incompatible.

    - If anyone has any questions on how I did the branch unification, let me know, I'm happy to answer questions.

    Typical disclaimer: Remember any and all bug reports need to include logs and clear steps to reproduce (see the info in the OP). You should also know what version it started with. If you want to be a tester and get builds before they are released here or just hangout, feel free to stop by Telegram!

    Downloads

    OOS: http://nchancellor.net/downloads/kernels/op5/8.0.0/oos/stable/
    Custom: http://nchancellor.net/downloads/kernels/op5/8.1.0/custom/stable/
    Mirror: https://github.com/nathanchance/fk-zips

    Commits

    Kernel: https://github.com/nathanchance/op5/commits/8.x-unified
    AnyKernel: https://github.com/nathanchance/AnyKernel2/commits/op5-flash-8.0.0
    68
    It is with a heavy heart that I announce that I have sold my OnePlus 5; as a result, I will be dropping support for it. The thread will be closed but the Telegram group will remain open if you just want to hang out. For replacement kernels, I recommend RenderZenith for OxygenOS and Singularity for custom ROMs. Those guys do a good job and you'll be in good hands. I grew a lot as a developer on this device and I am going to miss it a lot but unfortunately, life comes first. I will always be around to ask questions and my source will be on GitHub if anyone wants to fork and continue it (I do ask you don't keep the Flash name, just mention me in the thread for credit).
    64
    Update!

    Thanks to the brilliant debugging of @joshuous, he narrowed down the config option that induces the notification delay. Please go thank one of his posts in the RenderZenith thread, I probably never would have figured this out myself.

    It appears that OnePlus has modified the qcacld-3.0 source and made a corresponding change to the WCNSS_qcom_cfg.ini file that configures the Wi-Fi driver. By us not having access to their Wi-Fi source yet including that option, we get notification delays.

    Commit for reference: https://github.com/EAS-Project/AnyKernel2/commit/ce662605bef9432f0d9dc9efc28556b23f6e221a

    You may notice some custom ROMs now having this issue since I pushed some options to Dirty Unicorns that included this change (commit). I have pushed the commit that fixes the issue to our Gerrit (source) so it is up to the ROMs that picked the change to also pick the fix. While ROMs pick it up, I am going to temporarily work around it within the source itself as a hack then revert it later.

    Remember any and all bug reports need to include logs and clear steps to reproduce (see the info in the OP). You should also know what version it started with. If you want to be a tester and get builds before they are released here or just hangout, feel free to stop by Telegram!

    Short changelog

    • Fix notification delays on OxygenOS thanks to @joshuous

    Downloads

    Primary: http://nchancellor.net/downloads/kernels/op5/8.x/stable/
    Mirror: https://github.com/nathanchance/fk-zips

    Commits

    Kernel: https://github.com/nathanchance/op5/commits/8.x-unified
    AnyKernel: https://github.com/nathanchance/AnyKernel2/commits/op5-flash-8.x
    60
    Update!

    Each update point deserves their own description so wall of text inc. :p

    I am really proud of this update as I should have squared away all outstanding custom ROM bugs.

    • Linux 4.4.112: As I know I have gained several users over the past couple of weeks, if you are not familiar with it, I take linux-stable from kernel.org. It's pretty much what determines my release cycle. Latest stable will always be delivered within 24 hours of its release upstream though I usually do like I am not and make it as close as possible.
    • Disable NFC wakelock on custom ROMs: For those of you who don't know, on almost every ROM sans OmniROM, the pn544 NFC driver in combination with the AOSP NFC HAL caused the phone to stay awake permanently. This is 99.99% a userspace issue but not having deep sleep is unacceptable imo. A few users of NFC didn't squawk when I made this change in beta so the extra deep sleep will be most welcome!
    • Fix DCI-P3 not persisting across screen on/off on custom ROMs: Custom ROMs use Lineage's LiveDisplay driver, which I had modified to allow for OnePlus's night mode to still worked. Turns out I goofed this a little bit so DCI-P3 was turning off and not getting turned back on when you turned the display off then on...
    • Sync with Open Beta 4: Nothing much to say here, should work perfectly fine on stable 5.0.1

    Remember any and all bug reports need to include logs and clear steps to reproduce (see the info in the OP). You should also know what version it started with. If you want to be a tester and get builds before they are released here or just hangout, feel free to stop by Telegram!

    Downloads

    OOS (8.0.0): http://nchancellor.net/downloads/kernels/op5/8.0.0/oos/stable/
    Custom (8.1.0): http://nchancellor.net/downloads/kernels/op5/8.1.0/custom/stable/
    Mirror: https://github.com/nathanchance/fk-zips

    Commits

    Kernel: https://github.com/nathanchance/op5/commits/8.x-unified
    AnyKernel: https://github.com/nathanchance/AnyKernel2/commits/op5-flash-8.1.0