Development [KERNEL][AOSP/MIUI] N0Kernel 2.3

Search This thread

Rstment ^m^

Senior Member
Aug 19, 2018
281
63
Xiaomi Poco F3
I'm curios , why optimus drunk as a base?

The quantic based one even... That's like the worst version of drunk you could pick lol...

Quantic is a really good kernel , when I tried it few months back it hands down performed much better than optimus... Better than Utsav's kernel too.

The issue with drunk is that it has even dumber freq policy than miui... Doesn't respect load % at all so it Introduces a lot of stuttering in games and practically never jumps on higher clocks when it should.

Now optimus is based on Utsav's kernel which has much better device tree. Barely even matters that developer is incompetent - if you overclock it past 750-900mhz on gpu it hands down will beat any other kernel lol With great stability too ( 99℅ ) due to it being so afraid to call on higher clocks hence phone not warming all that much...

Given all this , why use quantic version of it?

If you like quantic kernel go for the source and build of the original quantic, why use a butchered version of it ?

If you like optimus developer ( lol ) why not use his latest kernel? The one that's not based on quantic...
 

EmanuelCN

Senior Member
Mar 29, 2017
368
171
LG G7 ThinQ
Xiaomi Poco F3
I'm curios , why optimus drunk as a base?

The quantic based one even... That's like the worst version of drunk you could pick lol...

Quantic is a really good kernel , when I tried it few months back it hands down performed much better than optimus... Better than Utsav's kernel too.

The issue with drunk is that it has even dumber freq policy than miui... Doesn't respect load % at all so it Introduces a lot of stuttering in games and practically never jumps on higher clocks when it should.

Now optimus is based on Utsav's kernel which has much better device tree. Barely even matters that developer is incompetent - if you overclock it past 750-900mhz on gpu it hands down will beat any other kernel lol With great stability too ( 99℅ ) due to it being so afraid to call on higher clocks hence phone not warming all that much...

Given all this , why use quantic version of it?

If you like quantic kernel go for the source and build of the original quantic, why use a butchered version of it ?

If you like optimus developer ( lol ) why not use his latest kernel? The one that's not based on quantic...
With Ustav's base had issuses with camera in revolut/ scanning qr in wapp, i initially used ustav's as base. And there was nothing "butchered" i reverted all garbage and added my stuff over it, there weren't many differences apart it being upstreamed and merged newer caf tags, i just chase it because it was easier for me to merge last caf and upstream it since it was closer to latest than quantic itself.
 
Last edited:

Lutheriusfer

Member
Dec 24, 2021
10
0
I'm curios , why optimus drunk as a base?

The quantic based one even... That's like the worst version of drunk you could pick lol...

Quantic is a really good kernel , when I tried it few months back it hands down performed much better than optimus... Better than Utsav's kernel too.

The issue with drunk is that it has even dumber freq policy than miui... Doesn't respect load % at all so it Introduces a lot of stuttering in games and practically never jumps on higher clocks when it should.

Now optimus is based on Utsav's kernel which has much better device tree. Barely even matters that developer is incompetent - if you overclock it past 750-900mhz on gpu it hands down will beat any other kernel lol With great stability too ( 99℅ ) due to it being so afraid to call on higher clocks hence phone not warming all that much...

Given all this , why use quantic version of it?

If you like quantic kernel go for the source and build of the original quantic, why use a butchered version of it ?

If you like optimus developer ( lol ) why not use his latest kernel? The one that's not based on quantic...
Is it really possible for most Poco F3s to OC to 750-900MHZ? because so far the maximum frequency that I see most available above is just the 683 clock, and whoever says they OC it, never bothers to explain the build rom or kernel they used for that, not even import the file to be tested
 

Rstment ^m^

Senior Member
Aug 19, 2018
281
63
Xiaomi Poco F3
Is it really possible for most Poco F3s to OC to 750-900MHZ? because so far the maximum frequency that I see most available above is just the 683 clock, and whoever says they OC it, never bothers to explain the build rom or kernel they used for that, not even import the file to be tested
No idea , most likely no. Only first batch of the phones...

It's also possible that exporting kona backup might bring it to other phones , I'll actually try to get one and see

As for what combinations? Hentai OS is xonfirmed working for first batch of phones , installing latest drunk kernel should allow it as well I think
 

Lutheriusfer

Member
Dec 24, 2021
10
0
Ustav's base had issuses with camera in revolut/ scanning qr in wapp, i initially used ustav's as base. And there was nothing "butchered" i reverted all garbage and added my stuff over it, there weren't many differences apart it being upstreamed and merged newer caf tags, i just chase it because it was easier for me to merge last caf and upstream it since it was closer to latest than quantic itself.
I'm testing several ROMS and some of them come with the most recent update of Optimus Drunk, and really in a matter of working with overclock it's one of the best works with these frequencies it seems that it totally changes the performance even with a simple overclock to 683 and undervolt for lower frequencies
 

EmanuelCN

Senior Member
Mar 29, 2017
368
171
LG G7 ThinQ
Xiaomi Poco F3
May I ask if optical image stabilization for videos and Dolby atmos working for you on AOSP? If yes, please tell me which ROM to use.
Video stablisiation works, as well as dolby but that depends on the rom, some have motorola dolby included, either those that do not have it there are plenty of magisk modules for dolby/dolby atmost/ dts which are even better than motorola's dolby. Im personally using xdroid caf.
 

xijaw

Senior Member
Aug 9, 2018
114
9
Xiaomi Poco F3
Video stablisiation works, as well as dolby but that depends on the rom, some have motorola dolby included, either those that do not have it there are plenty of magisk modules for dolby/dolby atmost/ dts which are even better than motorola's dolby. Im personally using xdroid caf.
So which ROM do you recommend for daily use ? I tried arrow but the overnight idle bateery drain was more than 8% for me.
 

Sauceunny

Member
Dec 31, 2021
16
8
Thanks for both the fix and returning to IMMENSITY! IMMENSITY has been my primary kernel for a while so hopefully I can offer some informed comparisons while trialling N0Kernel again.

Like the other times, flashed successfully on ArrowOS 11.0 using TWRP 3.5.2. Was greeted by this pop-up, however; may require your v1.3 fix again. Everything seems to be working properly otherwise; opened all apps with no issues (e.g. no 'zoom' bug that is present with other kernels) and charged from 97% to 100% with normal temperatures afterwards (currently at 20°C and 99% after 27 minutes standby).

Will edit this post with updates as I trial N0Kernel as a daily driver. Especially interested to see how the battery life compares with IMMENSITY!

20/1 update (v1.5):
  • Maintained 99% battery overnight on aeroplane mode which is promising. IMMENSITY has had one instance of maintaining 79% but 3% drain is normally expected.
  • Battery is currently at 76% with 2h58m SOT (20h total); includes 25m of gaming and light usage otherwise. Adaptive 60/90 Hz refresh rate was trialled for the majority of screen time (see last point for details).
  • Battery temperatures while active seem to be very similar to IMMENSITY, with N0Kernel possibly having a slightly better SOT drain
  • 90 Hz refresh rate, while a welcome addition, seems to have similar issues as noted in v11.4 and v11.5 of Optimus Drunk kernel. Specifically, colour saturation becomes 'washed out' when 90 Hz is active, e.g. dark greys becoming lighter. Forcing either 60 or 120 Hz only avoids this from occurring; an adaptive 60/120 Hz rate still has instances of 90 Hz. @EmanuelCN, would there be any kernel-side adjustments possible or might 90 Hz simply be incompatible with the display hardware?
21/1 update (v1.5/1.6):
  • Drained from 58% to 54% overnight on aeroplane mode which is more or less identical to IMMENSITY; however, it feels like standby drain with data and Wi-Fi on is slightly better
  • Before flashing v1.6, battery was at 23% with 7h40m SOT (46h total); included 2h50m of gaming and light usage otherwise. Full 120 Hz refresh rate was used after yesterday's update with only a minor impact on SOT drain.
  • Curious to note that according to the usage stats, 'Android System' was pinned as having used 44% battery (would normally average 6% on IMMENSITY for the same time); however, I did not observe any unusual drains or temperatures throughout the cycle
  • Confirmed that the message pop-up is fixed in v1.6. Battery temperature is also normal 19 minutes after full charge (currently at 22°C).
22/1 update (v1.6/1.7):
  • Maintained 95% battery overnight on aeroplane mode which is another favourable result
  • Confirmed removal of 90 Hz refresh rate in v1.7 and that 60/120 Hz functions as normal
  • A (very) minor thing to note is that when booting into TWRP, there is a slight delay before inputs are able to be registered. Of all the kernels that I have tried, only IMMENSITY does not have this delay.
  • Based on the fixes/updates and my experience so far, I believe that this kernel is an overall improvement over IMMENSITY. Will be using N0Kernel as my primary kernel for the foreseeable future!
25/1 update (v1.8):
  • Continues to have better battery life and temperatures than stock ArrowOS; used latest stock kernel for about a day after clean install
  • Unfortunately, the ArrowOS update EDIT: Was actually N0Kernel 1.8 (1.7 works normally) has reintroduced the zoom bug to N0Kernel. IMMENSITY remains fully compatible in this regard.
27/1 update (v1.7):
  • Drained from 63% to 58% overnight on aeroplane mode which is higher than IMMENSITY; dropped to 57% fairly quickly after reactivating data, etc. EDIT: Could be a result of WhatsApp's daily backup which I started recently; a local backup was created at 02:00 and uploaded at 07:00.
  • Re. the ArrowOS/N0Kernel 1.8 bug, may it possibly be related to the defconfig change? I am not a developer by any means; just noticed that defconfig was a common factor between 1.8 and the commit identified in this post.
29/1 update (v1.7):
  • Drained from 41% to 39% overnight on aeroplane mode with automatic WhatsApp backup disabled; a good result in the lower battery range
  • On IMMENSITY, thermal profiles other than default generally lead to slightly-higher drains with no noticeable increases in performance (e.g. 'Browser' for Firefox). This remains largely the same on N0Kernel.
  • Android System continues to have a large presence in the battery stats with no observable effects; currently at 38% over 41h runtime
7/2 update (v1.9):
  • Zoom bug still present with ArrowOS
  • Apps seem to load faster and with less time between transitions
 
Last edited:

EmanuelCN

Senior Member
Mar 29, 2017
368
171
LG G7 ThinQ
Xiaomi Poco F3
Thanks for both the fix and returning to IMMENSITY! IMMENSITY has been my primary kernel for a while so hopefully I can offer some informed comparisons while trialling N0Kernel again.

Like the other times, flashed successfully on ArrowOS 11.0 using TWRP 3.5.2. Was greeted by this pop-up, however; may require your v1.3 fix again. Everything seems to be working properly otherwise; opened all apps with no issues (e.g. no 'zoom' bug that is present with other kernels) and charged from 97% to 100% with normal temperatures afterwards (currently at 20°C and 99% after 27 minutes standby).

Will edit this post with updates as I trial N0Kernel as a daily driver. Especially interested to see how the battery life compares with IMMENSITY!
Fixed the message pop-up in 1.6.
 
  • Like
Reactions: Sauceunny

extremely0p

Member
Dec 7, 2021
21
6
Xiaomi Poco F3
DISCLAIMER: I AM NOT RESPONSIBLE IF YOUR PHONE BRICKS! YOU ARE FLASHING THIS KERNEL AND ITS YOUR CHOICE TO DO IT OR NOT TO DO IT AND YOU'RE THE ONE DOING IT. I JUST WANT TO HELP OTHERS OUT.
REQUIREMENTS: UNLOCKED BOOTLOADER AND AOSP BASED ROM, IT MAY WORK PERFECTLY FINE ON MIUI AS WELL BUT I DO NOT GIVE SUPPORT FOR IT, SORRY.


Features:

- Based on IMMENSITY KERNEL;
- Compiled with Aosp Clang 12.0.7;
- Only 0.03-0.07 jitter in uibench.
- Sultan's Devfreq Boost;
- Sultan's IRQ Affine API;
- Modified CpuSets;
- Latest caf tag and linux upstream merged;
- RCU backports;
- KGSL improvements;
- Cache improvements;
- PmQoS improvements;
- Disabled walt;
- Scheduler Improvements;
- CONFIG_HZ = 250 (because it offers best jitter);
- Fixed direct HZ references;
- Updated Energy Model from freqbench result;
- Sultan's pidmap optimisation & pidmap header shrink optimization SWITCH which massively improve performance in games made in Unity Engine (such as GENSHIN IMPACT), thanks to @lybxlpsv. How this works? You have to use lyb kernel manager from playstore, open it, allow it root, go to profiles and create a profile, select the profile and enable sultan's optimisations (PID HEADER SHRINK OPTIMISATION & PID MAP OPTIMISATION AND SET ON BOOT), and press on the square to get the app list you can apply the profile. Please do not select other games than UNITY ENGINE based games, because you will get banned in games with anti-cheat such as pubg & codm, if you don't enable it on those or globally you won't get banned and everything will be fine, its especially made for unity games.
- Many other improvements, you can check my github.

Download:
Google Drive.
Source: Github.

Special thanks to:

- UtsavTheGreat;

- Ayrton990;

- Sultanxda;

- GtrCraft;

- Sahil Sonar;

- Many other great devs that i have picked commits from.
There is no SET ON BOOT check mark after we make profile...
 

Attachments

  • Screenshot_20220119-190153_lybKernelManager.png
    Screenshot_20220119-190153_lybKernelManager.png
    111.7 KB · Views: 62

EmanuelCN

Senior Member
Mar 29, 2017
368
171
LG G7 ThinQ
Xiaomi Poco F3
Thanks for both the fix and returning to IMMENSITY! IMMENSITY has been my primary kernel for a while so hopefully I can offer some informed comparisons while trialling N0Kernel again.

Like the other times, flashed successfully on ArrowOS 11.0 using TWRP 3.5.2. Was greeted by this pop-up, however; may require your v1.3 fix again. Everything seems to be working properly otherwise; opened all apps with no issues (e.g. no 'zoom' bug that is present with other kernels) and charged from 97% to 100% with normal temperatures afterwards (currently at 20°C and 99% after 27 minutes standby).

Will edit this post with updates as I trial N0Kernel as a daily driver. Especially interested to see how the battery life compares with IMMENSITY!

20/1 update (v1.5):
  • Maintained 99% battery overnight on aeroplane mode which is promising. IMMENSITY has had one instance of maintaining 79% but 3% drain is normally expected.
  • Battery is currently at 76% with 2h58m SOT (20h total); includes 25m of gaming and light usage otherwise. Adaptive 60/90 Hz refresh rate was trialled for the majority of screen time (see last point for details).
  • Battery temperatures while active seem to be very similar to IMMENSITY, with N0Kernel possibly having a slightly better SOT drain
  • 90 Hz refresh rate, while a welcome addition, seems to have similar issues as noted in v11.4 and v11.5 of Optimus Drunk kernel. Specifically, colour saturation becomes 'washed out' when 90 Hz is active, e.g. dark greys becoming lighter. Forcing either 60 or 120 Hz only avoids this from occurring; an adaptive 60/120 Hz rate still has instances of 90 Hz. @EmanuelCN, would there be any kernel-side adjustments possible or might 90 Hz simply be incompatible with the display hardware?
The problem with 90hz is that we are not display experts, only samsung themselfes could tune it for that, the display its not made to work at that refresh rate, the fact that we made it able to do that doesn't mean much, also i find it completly useless, the battery difference between 60 and 120hz its arround 40m of sot on all of the phones and thats just because of the phone using the cpu/gpu more not because the screen draws more power, because thats such minimal difference. 90 or 120 would lead to almost the same battery life, if not probably 10m more of sot but not even and you lose the smoothness of 120hz.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    Which ROM are the developers using?

    Anyone tried on Arrow and CRDroid?
    I tried battery-optimized version on crdroid 8.3, works just fine
    1
    Did you optimized yourself or is it a special crdroid version?
    Im pretty sure he meant n0kernel battery, also i use syberia due smoothness.
    1
    Thank you friends! it is also amazing to see you both active here!
    I'm checking regulately the thread, sometimes it may take some time since i forget checking it, but im all the time active in my telegram group https://t.me/emhubf3
    1
    Did you optimized yourself or is it a special crdroid version?
    it's the normal N0kernell battery, I don't even use a kernel app
  • 26
    DISCLAIMER: I AM NOT RESPONSIBLE IF YOUR PHONE BRICKS! YOU ARE FLASHING THIS KERNEL AND ITS YOUR CHOICE TO DO IT OR NOT TO DO IT AND YOU'RE THE ONE DOING IT. I JUST WANT TO HELP OTHERS OUT.
    REQUIREMENTS: UNLOCKED BOOTLOADER AND AOSP BASED ROM, IT MAY WORK PERFECTLY FINE ON MIUI AS WELL BUT I DO NOT GIVE SUPPORT FOR IT, SORRY.


    Features:

    - Based on IMMENSITY KERNEL;
    - Compiled with Proton Clang 13.0.0;
    - Only 0.02-0.07 jitter in uibench.
    - Sultan's Devfreq Boost;
    - Sultan's IRQ Affine API;
    - Sultan's Simple LMK;
    - Modified CpuSets;
    - Latest caf tag and linux upstream merged;
    - RCU backported from 5.4 caf kernel;
    - Kernel/power backported from 5.4 caf kernel;
    - Sleep states from soc/qcom backported from 5.4 caf kernel;
    - Binder backported from 5.4 caf kernel;
    - KGSL improvements;
    - Cache improvements;
    - PmQoS improvements;
    - Disabled walt;
    - Scheduler Improvements;
    - Updated Energy Model from freqbench result;
    - Latest Srandom by josenk;
    - Sultan's pidmap optimisation & pidmap header shrink optimization SWITCH which massively improve performance in games made in Unity Engine (such as GENSHIN IMPACT), thanks to @lybxlpsv. How this works? You have to use lyb kernel manager from playstore, open it, allow it root, go to profiles and create a profile, select the profile and enable sultan's optimisations (PID HEADER SHRINK OPTIMISATION & PID MAP OPTIMISATION AND THEN APPLY SETTINGS FOR THIS PROFILE), and press on the square to get the app list you can apply the profile. Please do not select other games than UNITY ENGINE based games, because you will get banned in games with anti-cheat such as pubg & codm, if you don't enable it on those or globally you won't get banned and everything will be fine, its especially made for unity games.
    - Many other improvements, you can check my github.

    Download:
    Google Drive.
    Source: Github.
    Support Group: Telegram.

    Special thanks to:

    - UtsavTheGreat;

    - Ayrton990;

    - Sultanxda;

    - GtrCraft;

    - Sahil Sonar;

    - Many other great devs that i have picked commits from.
    14
    Changelog:

    N0Kernel 2.3:
    - Upstreamed to v4.19.235;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in kernel tree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in qcacld-3.0 subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in qca-wifi-host-cmn subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in fw-api subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/display subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/audio subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/video subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/camera subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/data subtree;
    - Backported sleepstates in soc/qcom entirely from 5.4 caf kernel;
    - Backported kernel/power entirely from 5.4 caf kernel apart pm_qos;
    - Backported binder from 5.4 caf kernel;
    - Backported latest changes in RCU from 5.4 caf kernel;
    - Updated some arm routines;
    - Improved bitmap;
    - Minimised wakeup time of android's alarm timer which is used very often;
    - Tuned scheduler capacity margin;
    - Made battery percentage more linear, what this means? Now it wont drain so slow between 100-90% and very fast between 30-0%, it should be more linear/monotonic than before;
    - With all the changes done, idle drain should be drastically improved now, battery life and performance as well;
    - More improvements and changes under the hood, just check my github.

    N0Kernel 2.2:
    - Upstreamed to v4.19.234;
    - Merged LA.UM.9.12.r1-13800.02-SMxx50.QSSI12.0 caf tag in kernel tree;
    - Merged LA.UM.9.12.r1-13800.02-SMxx50.QSSI12.0 caf tag in qcacld-3.0 subtree;
    - Merged LA.UM.9.12.r1-13800.02-SMxx50.QSSI12.0 caf tag in qca-wifi-host-cmn subtree;
    - Merged LA.UM.9.12.r1-13800.02-SMxx50.QSSI12.0 caf tag in fw-api subtree;
    - Merged LA.UM.9.12.r1-13800.02-SMxx50.QSSI12.0 caf tag in techpack/display subtree;
    - Merged LA.UM.9.12.r1-13800.02-SMxx50.QSSI12.0 caf tag in techpack/audio subtree;
    - Merged LA.UM.9.12.r1-13800.02-SMxx50.QSSI12.0 caf tag in techpack/video subtree;
    - Merged LA.UM.9.12.r1-13800.02-SMxx50.QSSI12.0 caf tag in techpack/camera subtree;
    - Merged LA.UM.9.12.r1-13800.02-SMxx50.QSSI12.0 caf tag in techpack/data subtree.
    - Dropped LNRG for srandom;
    - Introduced latest srandom 1.40 by josenk;
    - Updated arm routines to their latest version from arm (memcmp, strcmp, strlen, memcpy, memmove, memchr);
    - Backported rpmsg from 5.4 caf kernel;
    - Backported soc/qcom from 5.4 caf kernel, this drastically improves idle drain;
    - Added new cpu idle governor, CPU_IDLE_GOV_TEO which improves idle drain;
    - Backported PM_SLEEP_MONITOR and softirq changes which improve idle drainl
    - Backported FUSE passthrough from 5.4;
    - Backported haptics driver from MI12 series thanks to Utsav;
    - Debloated and optimised focaltech_spi driver (touchscreen driver);
    - Optimised charging current. How this works? Temperature limit now its 43C from 48C which xiaomi uses as default, with that your PMIC can burn and your phone will get bricked, in order not to reduce charging speeds so dramatically because of the temperature limit i optimised how current works, reduced the peak current to a lower value (5300mah repsectively) and increased mid and low values in order to keep a stable temperature so it can charge almost as fast as before while keeping your device cooler and safe.
    - Back to CONFIG_HZ_250, better, more efficient, better jitter;
    - Added scheduler fixes and improvements from pixel;
    - Optimised console framebuffer;
    - Optimised spinning loop for arm64;
    - Backported CFQ changes from samsung's kernel, thanks to Utsav;
    - Introduced ZSWAP + VBSWAP which will replace ZRAM because its a more efficient way which uses both ram and storage which will reduce i/o and cpu overhead therefore having better results, value has been set to 4gb. This will improve ram management.
    - Improved UFS speeds;
    - Zsmalloc optimisations;
    - Lowered Display's Jitter to match with the jitter results with N0kernel, this drastically improves response time and percived smoothness.
    - Fixed Reddit/other apps small images;
    - IF YOU HAVE TELEGRAM/WAPP SWIPING ISSUSES ON AOSP, FLASH MIUI VERSION, IT WILL BOOT AND WORK ACCORDINGLY, SOME ROMS REQUIRE THE FIX MIUI ALSO NEEDS.
    - More changes under the hood which i forgot.


    N0kernel 2.1:
    - Downstreamed to 4.19.227. Why? Because miui sucks and some users bootloop because of that;
    - Fixed bootloop on MIUI, reason above;
    - Fixed freezes/random reboot when watching netflix or other instances;
    - Moved all KGSL and Display workers to SCHED_RR to keep up with the low jitter in order to reduce janks;
    - Swiched to 300HZ scheuler tickrate from 250HZ to achive a smoother experience, our jitter is low enough to not need 250hz now;
    - Updated cpuset configuration;
    - Affined cpu input boost worker to prime core to reduce delays;

    N0kernel 2.0:
    - Introducing Battery version of N0kernel which improves battery life without sacrificing much from performance.
    - Upstreamed to v4.19.229;
    - UNICODE VERSION IS MEANT FOR AOSPA, DO NOT USE THAT VERSION ON MIUI.
    - Added cpu input boost from Sultan;
    - Added Simple LMK from Sultan which will improve gaming stability;
    - Boosting cpu to render upcomming frames to reduce jank;
    - Building with Ofast optimisations;
    - Marked KGSL workqueues to CPU INTENSIVE;
    - Added low_prio_worker thread to KGSL to free gpu memory, affining more important threads on perf cluster with higher priority;
    - Upstreamed dtc to v1.6.1-19;
    - Removed a lot of logging and debugging to reduce overhead in order to improve performance;
    - Increased data processing limit in KGSL;
    - Backports from linux mainline kernel in lib/list_sort, lib/string_helpers and atomic;
    - Added back full frequency table to support better xiaomi's thermals as well as thermal modules;

    N0kernel 1.9:
    - Upstreamed to 4.19.227;
    - Introduced LRNG - Linux Random Number Generator which is much faster than traditional one;
    - Using dedicated kmem_cache pool to avoid costly dynamic memory allocations;
    - Scheduler improvements;
    - Removed xiaomi's UFS/f2fs "optimisations", they were doing worse than better.
    - Using the better samsung ufs tw/hpb drivers;
    - Inline the spinlock function family regardless of preemption;
    - Reverted back to default gpu frequency calculation. This will make your gpu to not ramp up frequencies in normal usage, reducing the power consumption.
    - Lowered ddr boost frequency which improves battery life;
    - Crypto improvements
    - Nuked hysteresis feature;
    - Properly set gpu timeout;
    - Reverted qcom's KGSL timelines which add a considerable ammount of overhead, and they are not used by anything.
    - Added miui's millet optimisations;
    - Don't allow s2idle to be used, will use only deepsleep;
    - Changed default SCHED_RR timeslice from 100 ms to 1 jiffy;
    - Implemented f2fs rapid GC from arter97;
    - Scrapped entirely qualcomm's pmqos usage for UFS;
    - Implemented simple IRQ-affined PM_QoS operations for UFS;
    - Using HIGH priority workqueue for ufs gating work;
    - Using SCHED_FIFO for KGSL workqueue;
    - Added KGSL POPP back.

    N0kernel 1.8:
    - Fixed gestures in MIUI;
    - Using PELT_UTIL_HALFLIFE_16 instead of PELT_UTIL_HALFLIFE_32 for better smoothness;
    - Reverted some commits that were decreasing performance;
    - Aligned defconfig with CAF.

    N0kernel 1.7:
    - Removed 90hz support (because its bad and causes issuses with adaptive refresh rate for 60/120hz);
    - Compiled with Proton Clang 13.0.0;
    - Merged LA.UM.9.12.r1-13700-SMxx50.QSSI12.0 CAF tag in kernel tree;
    - Merged LA.UM.9.12.r1-13700-SMxx50.QSSI12.0 CAF tag in qcacld-3.0 subtree;
    - Merged LA.UM.9.12.r1-13700-SMxx50.QSSI12.0 CAF tag in qca-wifi-host-cmn subtree;
    - Merged LA.UM.9.12.r1-13700-SMxx50.QSSI12.0 CAF tag in fw-api subtree;
    - Merged LA.UM.9.12.r1-13700-SMxx50.QSSI12.0 CAF tag in techpack/display subtree;
    - Merged LA.UM.9.12.r1-13700-SMxx50.QSSI12.0 CAF tag in techpack/audio subtree;
    - Merged LA.UM.9.12.r1-13700-SMxx50.QSSI12.0 CAF tag in techpack/video subtree;
    - Merged LA.UM.9.12.r1-13700-SMxx50.QSSI12.0 CAF tag in techpack/camera subtree;
    - Merged LA.UM.9.12.r1-13700-SMxx50.QSSI12.0 CAF tag in techpack/data subtree;


    N0Kernel 1.6:
    - Fixed the message pop-up on boot "There's an internal problem with your device".

    N0Kernel 1.5:
    - Rebased again on IMMENSITY KERNEL;
    - Upstreamed to v4.19.225;
    - Fixed an issuse where after fully charging the phone it would have a massive battery drain;
    - Drastically reduced idle drain;
    - Significantly improved battery life;
    - Improved performance;
    - Improved the performance stability;
    - Improved ram management;
    - The phone heats less than previous versions;
    - Introduced Sultan's pidmap optimisation & pidmap header shrink optimization SWITCH which massively improve performance in games made in Unity Engine (such as GENSHIN IMPACT), thanks to @lybxlpsv. How this works? You have to use lyb kernel manager from playstore, open it, allow it root, go to profiles and create a profile, select the profile and enable sultan's optimisations (PID HEADER SHRINK OPTIMISATION & PID MAP OPTIMISATION AND THEN APPLY SETTINGS FOR THIS PROFILE), and press on the square to get the app list you can apply the profile. Please do not select other games than UNITY ENGINE based games, because you will get banned in games with anti-cheat such as pubg & codm, if you don't enable it on those or globally you won't get banned and everything will be fine, its especially made for unity games.
    - More stuff has been changed but the changelog would be too big, check my github for more.


    N0Kernel 1.4:
    - Compiling now with AOSP Clang 12.0.7;
    - Enforced deep sleep whenever the phone is on idle for lower idle drain;
    - Merged LA.UM.9.12.r1-13400-SMxx50.0 caf tag;
    - Upstreamed to v4.19.216;
    - Improvements for sched pelt;
    - Binder backports;


    N0Kernel 1.3:
    - Rebased on Optimus Drunk Kernel v11.17 (the one based on quantic kernel);
    - Merged LA.UM.9.12.r1-13300-SMxx50.QSSI12.0 caf tag;
    - Upstreamed to v4.19.213;
    - Introducing Simple LMK by SultanXDA;
    - Fixed Internal Error message at boot;
    - Many other misc improvements, check my github for more details.


    N0Kernel 1.2:
    - Rebased on latest IMMENSITY Kernel;
    - Merged latest caf tag LA.UM.9.12.r1-12900-SMxx50.QSSI12.0 in kernel tree, qcacld-3.0, qca-wifi-host-cmn & fw-api;
    - Added support for "Increased Touch Responsiveness" that most of the roms have as a feature;
    - Using sched capacity margins values from latest pixel devices;

    - Other misc improvements.

    N0Kernel 1.1:
    - Optimised pidmaps from Sultanxda should improve gaming experience, especially unity based games.
    - Reduced walt window size.
    - Forced colocate for foreground and top-app.

    N0Kernel 1.0:
    - Initial release.
    5
    Changelog:

    N0Kernel 2.3:
    - Upstreamed to v4.19.235;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in kernel tree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in qcacld-3.0 subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in qca-wifi-host-cmn subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in fw-api subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/display subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/audio subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/video subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/camera subtree;
    - Merged LA.UM.9.12.r1-14000-SMxx50.QSSI13.0 caf tag in techpack/data subtree;
    - Backported sleepstates in soc/qcom entirely from 5.4 caf kernel;
    - Backported kernel/power entirely from 5.4 caf kernel apart pm_qos;
    - Backported binder from 5.4 caf kernel;
    - Backported latest changes in RCU from 5.4 caf kernel;
    - Updated some arm routines;
    - Improved bitmap;
    - Minimised wakeup time of android's alarm timer which is used very often;
    - Tuned scheduler capacity margin;
    - Made battery percentage more linear, what this means? Now it wont drain so slow between 100-90% and very fast between 30-0%, it should be more linear/monotonic than before;
    - With all the changes done, idle drain should be drastically improved now, battery life and performance as well;
    - More improvements and changes under the hood, just check my github.
    N0kernel 2.3 released :D
    4
    Changelog:

    N0kernel 2.0:
    - Introducing Battery version of N0kernel which improves battery life without sacrificing much from performance.
    - Upstreamed to v4.19.229;
    - Enabled Unicode to support AOSPA;
    - Added cpu input boost from Sultan;
    - Added Simple LMK from Sultan which will improve gaming stability;
    - Boosting cpu to render upcomming frames to reduce jank;
    - Building with Ofast optimisations;
    - Marked KGSL workqueues to CPU INTENSIVE;
    - Added low_prio_worker thread to KGSL to free gpu memory, affining more important threads on perf cluster with higher priority;
    - Upstreamed dtc to v1.6.1-19;
    - Removed a lot of logging and debugging to reduce overhead in order to improve performance;
    - Increased data processing limit in KGSL;
    - Backports from linux mainline kernel in lib/list_sort, lib/string_helpers and atomic;
    - Added back full frequency table to support better xiaomi's thermals as well as thermal modules;
    Released 2.0. :D
    3
    View attachment 5411403
    Great kernel! Smooth af, but there is error after reboot on POSP, ArrowOS on alioth.
    Don't mind it, its because android is set to give that on boot if you disable some configs in kernel. Nothing to worry about, eventually ill fix that popup by faking using stock defconfig for the sake of people not getting worried.