• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

Development [KERNEL] [blu_spark r45] [A12]

Search This thread

bobbarker2

Senior Member
Aug 30, 2013
1,556
547
@eng.stk what's your take on the sched-pixel and mq-deadline? The tunables don't look very different from their predecessors.

Also gotta love that fixed hardware compressor Emerald Hill for zram 😋
 
  • Like
Reactions: eng.stk

eng.stk

Senior Member
Mar 29, 2011
6,996
59,893
OnePlus 5T
OnePlus 6
@eng.stk what's your take on the sched-pixel and mq-deadline? The tunables don't look very different from their predecessors.

Also gotta love that fixed hardware compressor Emerald Hill for zram 😋
sched-pixel is similar to schedutil, but is simplified and striped down from what usually CAF uses.
They also added a couple logic stuff form their own.

mq-deadline is what is available in mainline already: deadline with multiqueues, is nice for SSD and similar devices.

The offload/acelrator for zram is a nice idea, but honestly idk if google is just testing because it was alrady available in the exynos. And with lz4/zstd and even lzo-rle available, lz77 is an odd choice.
Didn't benchmark this, don't know if there is some performance gains. Maybe it's more of a battery thing idk.

@eng.stk Thank you for the kernel! From what you have saw, how difficult will it be for kcal (or any color calibration) to be incorporated? I'm just wondering if it seems possible with all of Google's new changes.
While it may be possible to port it from qualcomm based graphic stack, kcal doesn't play well with FoD devices, specially goodix stuff.
Optical sensors are quite sensible to light/colors change. Had that in other FoD devies and I don't add it in anymore.
 

foobar66

Senior Member
Jan 8, 2011
2,052
2,098
Brussels
Google Pixel 6 Pro
Just flashed though EX kernel ... will check it out over the next couple of days.
Have used this kernel previously on OnePlus devices.
thanks for your continuous work & great to see you here !

And I'm on Raven bye the way ...
 
Last edited:

Flawn

Senior Member
Apr 8, 2016
165
37
Ffm 069
Switching back to stock/other kernels seems to require dirty flash which isn't optimal... Flashin stock DLKM doesn't help
 

eng.stk

Senior Member
Mar 29, 2011
6,996
59,893
OnePlus 5T
OnePlus 6
Switching back to stock/other kernels seems to require dirty flash which isn't optimal... Flashin stock DLKM doesn't help
No it doesn't require dirty flash, you need to flash stock boot, vendor_boot and vendor_dlkm.
And I don't even use dtbo.
How you do it, it's up to you.You can easily do an AK3 zip with stock stuff even.

If it was up to me people would only flash boot.img
But since it's up to google, there you go.
 

eng.stk

Senior Member
Mar 29, 2011
6,996
59,893
OnePlus 5T
OnePlus 6
blu_spark_r35 (A12)

New build is up!

Added USB fast charge (forces CDP mode for wonky usb controllers that don't advertise modes properly or at all).
I normally find it useful for mainboards that have ports capable of 900/1200mA/1500mA and fail to advertise CDP compliance (1500mA per spec).
Keep in mind that, despite some protections that should be in place, like everything else that uses electricity, damage can happen.
It's disabled by default, use with caution. If your cat get's on fire, you're on your own.

Build is unified for raviole, should work both on Pixel 6 and Pro variant.
You can use FKM download kernel feature, just import the link bellow in the app flash section.
FKM download config: HERE


Changelog:
  • makefile: disable some clang12 spam
  • drivers: misc: power: implement usb fast charge mode
  • disable module force (we build full images)
  • adjust cmdline for faster boot
  • enable rd_lzma (for twrp eventually if needed)
  • defconfig: regenerate and sync, remove some cruft
  • AnyKernel3 updates (v20211207)
  • Couple init runtime adjusts to better UX
  • For root, canary Magisk 23015 or newer is mandatory


Keep in mind: I will give no active support for custom ROMs (including stock based ones).
I am mostly interested on debugging stuff in stock ROM (with logs and reproducible steps to replicate the issue).


No mirrors please
Don't forget to hit thanks, it's free :)
 

bobbarker2

Senior Member
Aug 30, 2013
1,556
547
The offload/acelrator for zram is a nice idea, but honestly idk if google is just testing because it was alrady available in the exynos. And with lz4/zstd and even lzo-rle available, lz77 is an odd choice.
Didn't benchmark this, don't know if there is some performance gains. Maybe it's more of a battery thing idk.

I thought lz77 was an odd choice too.. unless they modified it some to take advantage of emerald Hill but even then it's not like they rewrote the algorithm.. I don't see a benefit in using loseless compression for memory pages or swap. Unless it somehow ties into AV1 decoding...

Exynos hadn't been readily available in the U.S. and I'm sure that was Google's key demographic geo-wise so I think you may be right that it's testing. We'll find out.

🤷 who knows why Google does the things they do.. sometimes it seems like they don't even know!

By the way you said this kernel is vibration strength tunable and haptic feedback but in elementalx kernel manager or Franco's I don't see the options exposed. Maybe those apps need to be updated for the devices. What path would we need to tune vibration strength/haptic feedback now with a script?

Thank you for all your contributions and hard work!
 

eng.stk

Senior Member
Mar 29, 2011
6,996
59,893
OnePlus 5T
OnePlus 6
I thought lz77 was an odd choice too.. unless they modified it some to take advantage of emerald Hill but even then it's not like they rewrote the algorithm.. I don't see a benefit in using loseless compression for memory pages or swap. Unless it somehow ties into AV1 decoding...

Exynos hadn't been readily available in the U.S. and I'm sure that was Google's key demographic geo-wise so I think you may be right that it's testing. We'll find out.

🤷 who knows why Google does the things they do.. sometimes it seems like they don't even know!

By the way you said this kernel is vibration strength tunable and haptic feedback but in elementalx kernel manager or Franco's I don't see the options exposed. Maybe those apps need to be updated for the devices. What path would we need to tune vibration strength/haptic feedback now with a script?

Thank you for all your contributions and hard work!
Features are WIP, I didn't release vibration stuff yet.

@eng.stk thank you for this. Working great on my 6pro 👍
Awesome, good to know :cool:
 

eng.stk

Senior Member
Mar 29, 2011
6,996
59,893
OnePlus 5T
OnePlus 6
blu_spark_r38 (A12)

New build is up!

Build is unified for raviole, should work both on Pixel 6 (tested) and Pro variant.
You can use FKM download kernel feature, just import the link bellow in the app flash section.
FKM download config: HERE


Changelog:
  • Merge branch android-gs-raviole-5.10-android12-qpr1-d (android-12.0.0_r0.26) (Dec 2021.1)
  • Rebase and cleanup
  • defconfig: regenerate and sync
  • Ship dtb also
  • AnyKernel3 updates (v20211215)
  • For root, Magisk 23016 or newer is mandatory


Keep in mind: I will give no active support for custom ROMs (including stock based ones).
I am mostly interested on debugging stuff in stock ROM (with logs and reproducible steps to replicate the issue).


No mirrors please
Don't forget to hit thanks, it's free :)
 

paratox

Senior Member
Feb 18, 2010
1,117
380
Is this latest build fully compatible with the december update?
Does it compromise the FPR changes in december update or will the better FPR recognition work like with the stock kernel?
Sorry for this questions. I do not know how much this FPR things are in kernel or rom.
 

eng.stk

Senior Member
Mar 29, 2011
6,996
59,893
OnePlus 5T
OnePlus 6
Is this latest build fully compatible with the december update?
Does it compromise the FPR changes in december update or will the better FPR recognition work like with the stock kernel?
Sorry for this questions. I do not know how much this FPR things are in kernel or rom.
Yes code is based from December sourcedrop as stated in changelog.
FPR kernel driver code is the same as stock.
 
  • Like
Reactions: paratox

bobbarker2

Senior Member
Aug 30, 2013
1,556
547
Yes code is based from December sourcedrop as stated in changelog.
FPR kernel driver code is the same as stock.
I know you aren't messing around with any of the antenna drivers/code but seeing as the latest December update ruined wireless signal for many Pixel 6/Pro owner - https://issuetracker.google.com/u/1/issues/210484323 - would you recommend waiting until Google has a fix for this before flashing your kernel?

At least Google has classified it as a bug with a P1 Priority..
 

eng.stk

Senior Member
Mar 29, 2011
6,996
59,893
OnePlus 5T
OnePlus 6
I know you aren't messing around with any of the antenna drivers/code but seeing as the latest December update ruined wireless signal for many Pixel 6/Pro owner - https://issuetracker.google.com/u/1/issues/210484323 - would you recommend waiting until Google has a fix for this before flashing your kernel?

At least Google has classified it as a bug with a P1 Priority..
Nope, just flash Nov radio.img if you're affected.
Mine went from no signal to half bars.
Not kernel related, it's bin/fw stuff
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 14
    blu_spark_r45 (A12)

    New build is up!

    Build is unified for raviole, should work both on Pixel 6 (tested) and Pro variant.
    You can use FKM download kernel feature, just import the link bellow in the app flash section.
    FKM download config: HERE


    Changelog:
    • Merge branch android-gs-raviole-5.10-android12-qpr1-d (android-12.0.0_r0.36) (Jan 2022.1)
    • Rebase and cleanup
    • Wireguard updates (linux-5.10.y)
    • For root, Magisk 23016 or newer is mandatory


    Keep in mind: I will give no active support for custom ROMs (including stock based ones).
    I am mostly interested on debugging stuff in stock ROM (with logs and reproducible steps to replicate the issue).


    No mirrors please
    Don't forget to hit thanks, it's free :)
    5
    I jumped on this bandwagon with blu_spark on ProtonAOSP, I couldn't be happier. Kudos! 😎
    @kdrag0n does an excelent job indeed 👍
    5
    Haptic Feedback control/strength? :D I was using my Pixel 4a for a bit and was really surprised by how much weaker the Haptic Feedback is on the 6 by default.

    Btw I think its funny how everyone still says " hit Thanks on my post" but its "Like" now, since XDA changed their forums a while ago.
    Eventually, I'm actually quite satisfied with the 3 levels provided by userspace, so it's not urgent for me.
    I like the 4a a lot, hated the haptics. It's like an earthquake no matter what is signaling, absolute garbage.

    Well most of us maybe don't care about the social networking crap every service try to inject on people.
    Maybe that's why people leech on the goods but forget to hit the button nowadays...
    3
    Another ProtonAOSP and BluSpark user. It's the perfect combo. I've never experienced a phone this quick 🤠
    Just wanted to inform everyone, this kernel is working great on ProtonAOSP
    I jumped on this bandwagon with blu_spark on ProtonAOSP, I couldn't be happier. Kudos! 😎
    3
    Just wanted to inform everyone, this kernel is working great on ProtonAOSP
  • 42
    DWHxIK

    Kernel features: (WIP)
    • Build with Google Clang version 12.0.5 + LLD linker
    • Full -O2 build with device and target flags enhanced, build improvements and compiler fixes, etc
    • Less is more: stockish builds based on Google latest sourcedrop for max stability (android-gs-raviole-5.10-android12-qpr1-d)
    • Full kernel tree with OEM integrated drivers, for minimal build overhead and fast deploy
    • Systemless installer (doesn't touch system/vendor partition, OTA friendly), AnyKernel3 backend (compatible with autoflash apps)
    • Removed some debug and logging options
    • Misc ARM performance and battery patches
    • CVE security patches, general upstream and fixes for important subsystems when applicable
    • No OC, use 250HZ base timer frequency
    • Enhanced TCP methods (westwood is default, BBR and others available)
    • Some I/O control tweaks, advanced filesystems enabled (F2FS, ExFAT, NTFS, CIFS & NFS)
    • ZRAM set at 4G (default lz77eh with lzo-rle, zstd, etc available)
    • Vibrator Strength tunable and Gesture Haptic Feedback control (touchpanel and FPR)
    • Gamepad support enabled (xbox, ps4, switch)
    • USB2 Fast Charge (force USB CDP mode up to 1500mA with MTP on)
    • Wakelock blockers available
    • TWRP Support(LZMA/LZ4 Ramdisk)
    • Wireguard updates
    • Compatible with EXKM, FKM , Kernel Adiutor and others


    DOWNLOAD KERNEL ZIP
    FKM download configs: HERE
    (No mirrors please)​


    Setup and troubleshoot: To install just flash the zip on a stock setup with either TWRP or autoflash kernel app.
    If you come from other kernel or have any issues, you should restore your stock setup or dirty flash your ROM before flashing blu_spark zip to avoid problems. Also uninstall or clean data of any kernel control app you're using.
    If you are upgrading between blu_spark versions, just flash the kernel zip.

    About bugs and reports: don't bother to post if a log isn't ready or without steps so the behavior can be replicated. I only active support stock ROM with NO mods whatsoever (apart from root). That includes NO support if using xposed, Magisk with added modules, etc.
    If you're using custom ROMs (including stock based ones) you're much on your own. I'm mostly interested on debugging stuff in stock and stable ROM.
    Also try not to spam the thread with OT. There's threads for all kind of stuff, use them.

    Going back to stock: This kernel installer doesn't change your filesystem. You can backup your boot.img/vendor_boot.img/vendor_dlkm.img with TWRP or kernel app before flashing blu_spark if you want to go back to full stock. You can also flash boot.img/vendor_boot.img in fastboot and vendor_dlkm.img in fastbootd from you stock ROM. Or just dirty flash your full OTA ROM zip.


    Source Code: https://github.com/engstk/pxl6
    Don't forget to hit thanks, it's free ;)
    26
    blu_spark_r29 (A12)

    So here's blu_spark for the oriole (and probably raven ;p)

    Been cracking around on this since I got the device a couple weeks ago.
    The new GKI kernel stuff(which imo will kill custom kerneling in the future) and the "let's use 10GB of garbage device tree to build a kernel" is not really for me.
    So I decided to put on an full tree with all the vendor stuff on it, with less that 5% of what Google proposes we can play with the device just fine.

    My primary objective was also to make a full builtin kernel, but seems like init expects modules and other stuff to be in place so it's a no go, at least for now (maybe with some further init stages crack it's possible, idk)
    So kernel output is splitted across boot.img, vendor_boot.img and vendor_dlkm.img.

    I also take the time to make AK3 basic hdr v4 compliant (big shouts to @osm0sis for being the best wingman, as always). Because fastboot is tedious and since it's 2021 there's no room for that in my builds.
    You can flash the AK3 kernel zip in your favorite kernel app with autoflash functions or with TWRP when/if available. If you want/need to go stock again, instructions are on OP.
    Besides Pixel 6, this should work on Pro also, but I can only test on Oriole, let me know how it goes on Raven if you're brave enough.

    You can use FKM download kernel feature, just import the link bellow in the app flash section.
    FKM download config: HERE


    Changelog:
    • Build with Google Clang 12.0.5 + LLD linker
    • Full kernel based from kernel/gs+google-modules @ android-gs-raviole-5.10-android12-d1 (android-12.0.0_r0.17) (Nov 2021.1)
    • Several build fixes and improvements (check git for details)
    • drivers: google-modules: make it build and additional fixes, remove cruft
    • Disable some debug and logging
    • FS and F2FS improvements
    • Enable advanced TCP congestion control (westwood default)
    • Add wakelock blocker framework
    • Tuned a couple IO and ZRAM runtime stuff
    • AK3 updates (v20211118) plus my own additional fixes for hdrv4 flashing (big shouts @osm0sis for the help)
    • For root, canary Magisk 23015 or newer is mandatory


    Keep in mind: I will give no active support for custom ROMs (including stock based ones).
    I am mostly interested on debugging stuff in stock ROM (with logs and reproducible steps to replicate the issue).


    No mirrors please
    Don't forget to hit thanks, it's free :)
    14
    blu_spark_r45 (A12)

    New build is up!

    Build is unified for raviole, should work both on Pixel 6 (tested) and Pro variant.
    You can use FKM download kernel feature, just import the link bellow in the app flash section.
    FKM download config: HERE


    Changelog:
    • Merge branch android-gs-raviole-5.10-android12-qpr1-d (android-12.0.0_r0.36) (Jan 2022.1)
    • Rebase and cleanup
    • Wireguard updates (linux-5.10.y)
    • For root, Magisk 23016 or newer is mandatory


    Keep in mind: I will give no active support for custom ROMs (including stock based ones).
    I am mostly interested on debugging stuff in stock ROM (with logs and reproducible steps to replicate the issue).


    No mirrors please
    Don't forget to hit thanks, it's free :)
    12
    blu_spark_r35 (A12)

    New build is up!

    Added USB fast charge (forces CDP mode for wonky usb controllers that don't advertise modes properly or at all).
    I normally find it useful for mainboards that have ports capable of 900/1200mA/1500mA and fail to advertise CDP compliance (1500mA per spec).
    Keep in mind that, despite some protections that should be in place, like everything else that uses electricity, damage can happen.
    It's disabled by default, use with caution. If your cat get's on fire, you're on your own.

    Build is unified for raviole, should work both on Pixel 6 and Pro variant.
    You can use FKM download kernel feature, just import the link bellow in the app flash section.
    FKM download config: HERE


    Changelog:
    • makefile: disable some clang12 spam
    • drivers: misc: power: implement usb fast charge mode
    • disable module force (we build full images)
    • adjust cmdline for faster boot
    • enable rd_lzma (for twrp eventually if needed)
    • defconfig: regenerate and sync, remove some cruft
    • AnyKernel3 updates (v20211207)
    • Couple init runtime adjusts to better UX
    • For root, canary Magisk 23015 or newer is mandatory


    Keep in mind: I will give no active support for custom ROMs (including stock based ones).
    I am mostly interested on debugging stuff in stock ROM (with logs and reproducible steps to replicate the issue).


    No mirrors please
    Don't forget to hit thanks, it's free :)
    12
    blu_spark_r42 (A12)

    New build is up! Merry 🎄🎅🎁

    Build is unified for raviole, should work both on Pixel 6 (tested) and Pro variant.
    You can use FKM download kernel feature, just import the link bellow in the app flash section.
    FKM download config: HERE


    Changelog:
    • Tentative fix to external DAC use (let me know)
    • fsync toggle
    • wakelock blocker updates
    • AnyKernel3 sync (v20211215)
    • Couple init runtime adjusts to better UX
    • For root, Magisk 23016 or newer is mandatory


    Keep in mind: I will give no active support for custom ROMs (including stock based ones).
    I am mostly interested on debugging stuff in stock ROM (with logs and reproducible steps to replicate the issue).


    No mirrors please
    Don't forget to hit thanks, it's free :)