KERNEL ❯ PIXEL 5 ❯ Proton Kernel v1.2

Search This thread

kdrag0n

Senior Member
Feb 19, 2016
622
1,680
kdrag0n.dev
Proton Kernel • Pixel 5
Performance-oriented kernel​

Proton Kernel is a minimal kernel focused on improving overall UX with performance and battery tuning.

Usage with my ProtonAOSP ROM is recommended to get the most out of your phone. The ROM does not include Proton Kernel, so you will need to flash it yourself. The kernel alone will work just as well on stock, but you will not get the benefits of the ROM. More tightly coupled features may be added in the future.

Installation
This kernel is provided as a bootable flasher image. It is not a boot image for flashing into the boot partition. Boot the image with "fastboot boot ProtonKernel-pixel5-VERSION.img" to flash it. The image is specially packed with a custom flasher that is fast and easy to use, so flashing it into the boot partition directly will not work.

All versions of all ROMs are supported, as well as Magisk if you wish to use it. Magisk will be preserved after flashing if you already have it installed. If not, you can install Magisk by patching your boot image before flashing the kernel.

DO NOT FLASH THE IMAGE DIRECTLY TO THE BOOT PARTITION! It will not work, no matter what you flash it with — fastboot, kernel managers, etc.

Features
• Advanced CPU tuning specifically for the Snapdragon 765G to improve performance and reduce jitter
• Scheduler ramp/decay tuning for faster response to quick actions
• Display power-saving tweaks (mostly Pixel 5 only)
• Near-instant display wakeup (Pixel 5 only)
• Reduced touch latency and motion jitter (at the cost of losing Deep Press)
• ThinLTO optimizations for performance
• TCP ECN, BBR congestion control, and fq_codel network scheduler for faster and more reliable networking
• 80 MiB of extra RAM unlocked for apps to use
• More linear and consistent battery percentage curve
• Custom fast & easy kernel flasher with support for Magisk and all ROMs
• Minimal debugging for better security, performance, and reduced size
• Sultan's Simple Low Memory Killer to improve memory utilization
• Tuning for F2FS garbage collection, low-level atomic operations, and more
• System call filters compiled to machine code for 66% faster filtering
• Reduced CPU usage when using cellular data (for testing with 5G mmWave networks)
• Compiled with the latest Proton Clang 13 toolchain
• zRAM disabled to reduce CPU waste
• WireGuard VPN acceleration
• Support for power user tasks: USB modem-like devices (e.g. RFID tools), custom virtual USB Ethernet networking, isolated Linux containers
• SafetyNet basic attestation passing without Magisk

Downloads
Downloads and changelogs can be found on GitHub. The topmost release is the latest.

Make sure you download a flasher image, not source code! Source code cannot be flashed.

Join the Telegram group for support and extras

Donate to support development: recurring donation to keep the project alive in the long term or buy me a coffee

Source code
 
Last edited:

kdrag0n

Senior Member
Feb 19, 2016
622
1,680
kdrag0n.dev
Where's the performance? This is a lagfest. I'm sorry I hurt your feelings. But usually the truth hurts.https://www.linuxjournal.com/content/android-low-memory-killer-or-out
That sounds like something is wrong with your setup (not necessarily your fault) because my own device is performing great on this kernel. Please send kernel and Android logs using the SysLog app. It would also be helpful to get more details: slow or janky, where, what, when, etc.


I'm not sure what you're trying to say with the Simple LMK article, but I've had a great experience with SLMK on all of my devices. It's very unlikely that it's causing issues for you. The stance of mainline Linux developers do not always align with providing the best possible experience on mobile and Android as they are interested in satisfying a much wider array of needs and unifying them as much as possible.
 

Jackie Coyote

Member
Nov 19, 2020
33
1
That sounds like something is wrong with your setup (not necessarily your fault) because my own device is performing great on this kernel. Please send kernel and Android logs using the SysLog app. It would also be helpful to get more details: slow or janky, where, what, when, etc.


I'm not sure what you're trying to say with the Simple LMK article, but I've had a great experience with SLMK on all of my devices. It's very unlikely that it's causing issues for you. The stance of mainline Linux developers do not always align with providing the best possible experience on mobile and Android as they are interested in satisfying a much wider array of needs and unifying them as much as possible.
Good luck with your kernel. I have the deepest RESPECT for you and Sultan. You guys make the Android community far better than it could ever be. There is not many of you guys that are so committed i will always appreciate your work.
That being said, I am so sensitive and picky it's not even funny. Lol
Here's my problem. I'm so busy and overwhelmed that trying to help you is futile.
I really think I could and would. If I could retire. This is always my work device. They pay me for this. That being said. I have no logs and wish you the best.
 

tschannik26

Member
Mar 31, 2014
25
14
Thank you very much for your work! Everything is working really well for me, battery life is amazing!
I am using your rom and kernel and flashing your kernel just improved perfomance im my favourite game (which I've been playing for years) a LOT!
In certain parts it was really laggy before and now it's just smooth :cool:
So thanks again ;)
 
Last edited:

Vio281

Senior Member
May 14, 2020
93
13
No, the installed kernel is persistent.

Thanks appreciate it, been a while since I am in the flashing game, your kernel is really good, I can tell by how it scroll in youtube. Anyway if you could look into swap space, and disable it, I know I done this in my Linux computer at work and I use to do it on android phones, not sure if they evolve into z-swap but that always give me an improve performance.
 

kdrag0n

Senior Member
Feb 19, 2016
622
1,680
kdrag0n.dev
Thanks appreciate it, been a while since I am in the flashing game, your kernel is really good, I can tell by how it scroll in youtube. Anyway if you could look into swap space, and disable it, I know I done this in my Linux computer at work and I use to do it on android phones, not sure if they evolve into z-swap but that always give me an improve performance.
Modern Android phones use zRAM for swap, which this kernel has disabled.
 

neeksxda

Member
Sep 27, 2017
20
2
Was already impressed with the battery-life provided by ProtonAOSP's bundled kernel, but was shocked by the gains in battery-life after installing the ProtonKernel (no Gapps):

Screenshot_20201208-174222_Settings.png
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    I've updated to 1.2, but I'm still getting the "Optimizing for Battery Health" message that limits charging to 80%.
    Are you sure your device or battery aren't actually overheating? That's what the feature is designed to protect against, and I've never seen it trigger falsely on my device.
    If so, please get logs with the SysLog app shortly after connecting your charger and getting the message.
    Any response to this? @kdrag0n

    Would you accept a PR on GitHub for this if one was submitted or is this something that you'd prefer not to include in a kernel implementation?
    No, I'm not a fan of kcal's code quality and this is not a customization-oriented kernel.
    1
    View attachment 5283445
    Is this kernel version correct for Proton Kernel v1.2?
    No. You are on a Feb 8 build, and not even of Proton. It looks like it did not flash and you are still on stock Kernel.
    Here is what it should be, notice under Kernel Version.
    Screenshot_20210419-082350_Quickstep_2.png



    hi, can anyone explain (yes newbie here) the flashing process? thanks in advance

    Connect your phone to computer, enable USB debugging, download latest Android platform tools (google it), open Explorer to the directory containing adb.exe, copy the Proton*.img file into the same folder, open CMD prompt there (click in the path bar in Explorer and type cmd), type "adb reboot bootloader" without ", permit any popups on your phone, wait for it to reboot to bootloader, then type "fastboot boot ProtonKernel-pixel5-VERSION.img" without the " and replacing the VERSION with whichever one you downloaded, wait, good to go!
    1
    Is the most recent Proton kernel version compatible with the May update, or do we need to wait for a kernel update?
    Just flashed. 1.2 works fine for me on the May update.
    1
    i installed the proton rom via web installer then flashed this kernel before i installed magisk, how can i root now? do i have to install the whole rom again?
    Use the web installer again to re-flash the ROM, but don't use the full wipe option, will just overwrite the files without erasing anything. Then flash magisk, then install the kernel.
    1
    The only reason I was asking about it is because I think if I could lock bl again it would make gpay happy for nfc payment. I think I might experiment a with an OG pixel I don't care about and see what happens.

    That won't work unless you go back to complete stock without the custom kernel anyway.

    If you want a custom kernel like this one and gpay working, you can use kdragon's Universal Safetynet fix (https://forum.xda-developers.com/t/...etynet-fix-1-1-0.4217823/page-6#post-84297399). I'm using it with Proton kernel on ProtonROM and am succesfully using Google Pay without issue. It also works with Stock rom with Proton Kernel just the same.
  • 14
    Proton Kernel • Pixel 5
    Performance-oriented kernel​

    Proton Kernel is a minimal kernel focused on improving overall UX with performance and battery tuning.

    Usage with my ProtonAOSP ROM is recommended to get the most out of your phone. The ROM does not include Proton Kernel, so you will need to flash it yourself. The kernel alone will work just as well on stock, but you will not get the benefits of the ROM. More tightly coupled features may be added in the future.

    Installation
    This kernel is provided as a bootable flasher image. It is not a boot image for flashing into the boot partition. Boot the image with "fastboot boot ProtonKernel-pixel5-VERSION.img" to flash it. The image is specially packed with a custom flasher that is fast and easy to use, so flashing it into the boot partition directly will not work.

    All versions of all ROMs are supported, as well as Magisk if you wish to use it. Magisk will be preserved after flashing if you already have it installed. If not, you can install Magisk by patching your boot image before flashing the kernel.

    DO NOT FLASH THE IMAGE DIRECTLY TO THE BOOT PARTITION! It will not work, no matter what you flash it with — fastboot, kernel managers, etc.

    Features
    • Advanced CPU tuning specifically for the Snapdragon 765G to improve performance and reduce jitter
    • Scheduler ramp/decay tuning for faster response to quick actions
    • Display power-saving tweaks (mostly Pixel 5 only)
    • Near-instant display wakeup (Pixel 5 only)
    • Reduced touch latency and motion jitter (at the cost of losing Deep Press)
    • ThinLTO optimizations for performance
    • TCP ECN, BBR congestion control, and fq_codel network scheduler for faster and more reliable networking
    • 80 MiB of extra RAM unlocked for apps to use
    • More linear and consistent battery percentage curve
    • Custom fast & easy kernel flasher with support for Magisk and all ROMs
    • Minimal debugging for better security, performance, and reduced size
    • Sultan's Simple Low Memory Killer to improve memory utilization
    • Tuning for F2FS garbage collection, low-level atomic operations, and more
    • System call filters compiled to machine code for 66% faster filtering
    • Reduced CPU usage when using cellular data (for testing with 5G mmWave networks)
    • Compiled with the latest Proton Clang 13 toolchain
    • zRAM disabled to reduce CPU waste
    • WireGuard VPN acceleration
    • Support for power user tasks: USB modem-like devices (e.g. RFID tools), custom virtual USB Ethernet networking, isolated Linux containers
    • SafetyNet basic attestation passing without Magisk

    Downloads
    Downloads and changelogs can be found on GitHub. The topmost release is the latest.

    Make sure you download a flasher image, not source code! Source code cannot be flashed.

    Join the Telegram group for support and extras

    Donate to support development: recurring donation to keep the project alive in the long term or buy me a coffee

    Source code
    7
    Proton Kernel 1.1 is now available with security updates, improved performance tuning, extra RAM, and more.

    This update is required for the kernel to work properly on December ROMs, including the new version of ProtonAOSP. It will not boot on older ROMs.

    Changelog:
    • Updated to stock December kernel base (will not boot on older ROMs)
    • Improved CPU frequency and energy model tuning for performance
    • Further reduced display power usage for both Pixel 5 and 4a 5G
    • Enabled TCP ECN for better handling of poor networks (similar to iOS 11+)
    • Unlocked 5 MiB of extra RAM for apps
    • Added support for full-blown isolated Linux containers
    • Added support for USB modem-like devices (e.g. RFID tools)
    • Reduced debugging overhead
    • Fixed fastbootd flashing

    Download

    Donate to support development: recurring donation to keep the project alive in the long term or buy me a coffee
    7
    Proton Kernel 1.2 is now available with security updates, March feature drop compatibility, and many other improvements.

    This kernel was not updated in January or February because Google did not update the kernel. I didn't get a chance to work on the kernel in March, but it is now up-to-date for April.

    Usage with my ProtonAOSP ROM is recommended to get the most out of your phone. The ROM does not include Proton Kernel, so you will need to flash it yourself. The kernel alone will work just as well on stock, but you will not get the benefits of the ROM. More tightly coupled features may be added in the future.

    Changes:
    • March and April updates
    • Performance & battery improvements
    • Optimizations from Sultan
    • System call filters compiled to machine code for 66% faster filtering
    • Reduced CPU usage when using cellular data (for testing with 5G mmWave networks)
    • Fixed stuttering caused by scheduler task misplacement
    • Updated compiler to Clang 13

    This version is compatible with the March feature drop, so it will no longer falsely report that the battery is overheating.

    Download

    Donate to support development: recurring donation to keep the project alive in the long term or buy me a coffee
    4
    Looking at the three kernel options, glad to see some Pixel 5 love!
    Does Proton have display improvements like CleanSlate? These seem super useful and I do not see them mentioned in the feature list unless they are in display power saving tweaks. Just curious.

    - High Brightness Mode - slightly increase lumens in highest brightness level (panel's HBM)
    - Always On Display dimmer - Lower the brightness for AOD screen in doze mode, when normal screen brightness is also low
    - Backlight Dimmer - possibility to use lower panel brightness
    - Face down screen off - put phone face down to turn screen off
    Manually-controlled HBM may be added in the future. Google already has ways for the ROM to enable it when appropriate, but I'm not sure what the criteria for that are.

    I'm not convinced that backlight dimmer will do anything because the brightness sent to the display is already the minimum. That feature is for devices where this not the case.

    AOD dimmer and screen off gestures will never be added. Those features do not belong in the kernel, they should be (and are much better when) implemented at the ROM/app level. The separation of the kernel and userspace exists for a good reason.
    3
    Thanks appreciate it, been a while since I am in the flashing game, your kernel is really good, I can tell by how it scroll in youtube. Anyway if you could look into swap space, and disable it, I know I done this in my Linux computer at work and I use to do it on android phones, not sure if they evolve into z-swap but that always give me an improve performance.
    Modern Android phones use zRAM for swap, which this kernel has disabled.
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