[KERNEL][CUSTOM] Eureka kernel for all variants of Galaxy A40 for android 10(Q) & 11(R) & 12(S) ROMs

How is your experience with Eureka kernel?

  • Improves performance and gaming experience

    Votes: 14 77.8%
  • Improves gaming experience only

    Votes: 0 0.0%
  • Improves performance only

    Votes: 4 22.2%

  • Total voters
Search This thread
New Update of our Eureka Kernel and there OFFICIAL FEATURES for version R10

Downloads at our Telegram Channel (find on the first Post!)

  • Modifications to sLMK driver and its configs, to avoid LMK killing every app, but kill based on Linux kernel's task priority. Idle RAM usage decreased, multitasking improved.
  • Fix an old bug of Eureka Kernel, kernel panic if USB debugging is on, and the phone is connected to PC, and the user tries MTP mode. The fix was inspired by exynos9820 (Linux 4.14) usb driver.
  • Update Simple LMK driver to latest commit. Includes various memory and driver itself optimizations.
  • Upstream cfq I/O scheduler, F2FS driver in kernel
  • Enable misc configs for NetHunter support. (E.g. mac80211, Sysvpic, USBconfigfs drivers...)
  • Merge upstream patches for USB configfs HID driver. Used for NetHunter.
  • Misc improvments, hacks applied kernel tree wide
  • Rewrote mbcache driver - May be misc improvements in I/O operations on ext4 fs
  • Revert LZ4 driver changes
  • Adjust TCP Westwood parameters for better internet speed
  • /proc/kmsg is now toggleable. Use this command to control kmsg buffer:
    # echo 1 or 0 > /sys/module/printk/parameters/enabled

by Eureka Team


Jun 30, 2014
I'm using SQ3A.220705.004
PixelExperience_a40-12.1-20220819-1754-UNOFFICIAL as my preferred ROM for A40, flashed via TWRP but without any further things, like no MAGISK etc. to have stock Pixel experience.

Now I read about this updated kernel. Is this already included in my ROM or do I need to install it separately via TWRP? And does it keep my personal user data then? Do I need to install additional things like MAGISK or just installing the updated EUREKA kernel is enough to profit from better responsiveness?

Top Liked Posts

  • There are no posts matching your filters.
  • 9
    EK A40 XDA.jpg

    Hi all,
    this is the thread for a custom kernel i made for Samsung Galaxy A40.
    The custom kernel has been named Eureka which is a greek work which means "I have found the solution". This multi-purpose kernel is the solution for battery, gaming, performance for A40. On creating this kernel, I believed that 1 kernel can be all of the above if properly tweaked!

    As from Eureka R9.0, four kernel variants are available inside 1 same zip. This has been made possible using AROMA Installer.

    This kernel is compatible with AOSP GSIs/ROMs, OneUI2 and OneUI3. As from R9.0, there is only 2 variants of zip to download. One is called EMS and the other one is called HMP. Continue reading to learn more about them.

    * Disabled Samsung security features
    * Enabled all governors + added other governors
    * Overclocked CPU as follows:
    BIG Cores: from 1768 MHz to 2288 MHz.​
    LIL Cores: from 1586 MHz to 1794 MHz.​
    * Underclocked CPU as follows:
    BIG Cores: from 936 MHz to 208 MHz.​
    LIL Cores: from 839 MHz to 208 MHz.​
    * Added GPU thermal and voltage control
    * Added latest boeffla wl blocker V 1.1.0 and disabled some wakelocks
    * Network speed improvement
    * Enable zram support and set default compressor as zstd.
    * Switch to a lower charging voltage more quickly.
    * GPU max frequency overclocked from 845 MHz to 1300 MHz
    * Implemented Dynamic FSync 2.0
    * Implemented a custom hotplug driver to enhance battery management
    * Implemented Power Suspend driver
    * High torch brightness on custom roms/gsis
    * Has Spectrum support
    * Automatic detection of magisk - If u are rooted, u don't need to flash magisk after kernel.
    * Upstreamed kernel version from 4.4.177 to 4.4.302
    * Built with Vortex Clang 14 toolchain with LTO. Reason: Better performance
    * Support for EMS (Exynos Mobile Scheduler) added

    Please read the changelog on github for full list of changes.

    * Maybe ADB cannot be used at the same time as MTP

    * Set GPU power policy to "always on"
    * Set min and max GPU frequency to 1200/1300 MHz
    * Disable GPU thermal manager to prevent GPU frequency from dropping
    * Games don't require high CPU frequency because they depend more on GPU. You can therefore decrease CPU max frequencies to reduce heating of the device.

    We have developed our own kernel manager called EKManager which is a fork of HkTweaks. It is compatible only with Eureka Kernels. You can download it from here:
    LINK: Download EKManager app

    Contact info:
    Developers of Eureka Team:
    * Telegram: @Chatur27, @Gabriel260BR and @roynatech

    Channel for Eureka future updates:
    * Telegram: https://t.me/eureka_kernel

    Official discussion group for A40:
    * Telegram: https://t.me/sga40

    I'm grateful to KineSight for designing the logo.
    * Telegram: @Kinesight

    Reference about EMS kernel:
    Energy Aware Scheduling (EAS) gives the scheduler the ability to predict the impact of its decisions on the energy consumed by CPUs. EAS relies on an Energy Model (EM) of the CPUs to select an energy efficient CPU for each task. Allowing to save up battery even further. EMS aka Exynos Mobile Scheduler, is a fork of EAS for Exynos. We ported to our 4.4.y kernel. As written above, EMS kernel is good for battery saving. Some words from kernel official docs: - EAS operates only on heterogeneous CPU topologies (such as Arm big.LITTLE) because this is where the potential for saving energy through scheduling is the highest.
    EMS kernel + pwrutilx governor is very good at battery saving according to our test.

    Reference about HMP kernel:
    It's just the stock scheduler that comes with stock kernel. Basically it's the normal kernel.

    What kernel variant to flash once inside AROMA installer?
    1) AOSP Legacy Q/R/S - If you are using an old Eureka ROM which was released before February 2022, choose this.
    2) AOSP Q/R/S (New) - If you are using an Eureka ROM built as from February 2022, choose this.
    3) OneUI 2 - For any OneUI 2 roms (stock/ports).
    4) OneUI 3 - For any OneUI 3 roms (stock/ports).

    Download link for A40 (Read above to know which version to download for your OS):
    All releases of Eureka for Q/R/S ROMs/GSIs (including OneUI)

    Source code for my kernel:
    Kernel source on GitHub


    If you love our work, thank us by donating. Your donation can help us rent a cloud sever to build kernels and roms faster :)
    Link to PayPal: https://www.paypal.com/paypalme/chaturbaij

    Here I am again, and I am happy to say, that it is working good so far!
    I was surprised, that the flashing went so simple, as I had expected to need all these Samsung specific shenanigans and workarounds again.. but it wasn't necessary at all (at least from an already installed TWRP and another booting (bad barely functional) GSI ROM on my A40 before.

    So here's what I did:
    1. I flashed OrangeFox recovery for the A40, as I have seen some A40 devs recommend this. Also the TWRP wasn't working too nice for me, with frequent USB/MTP hickups and it often hung on reboot. Then reboot. OrangeFox fo the A40 is available: here.

    2. In OrangeFox I wiped all partitions shown in the dialog besides vendor and my external SD card. So these partitions where:
    "Dalvik / ART Cache, Cache, System, Data; Internal Storage"

    3. Copied all the needed files to the phone using USB/MTP.
    For me these Files where:
    a) Resurrection Remix 8.6.7 GSI Build from Robot Hanzo as told by Marcia (the arm64 "ab" -build)
    b) Eureka kernel as uploaded by Chatur in post #57.
    c) hkTweaks2.1.0
    d) Magisk-v21.4.zip

    4. Flashed the Resurrection Remix GSI to the system partition using OrangeFox

    5. fixed the system partition's size using OrangeFox: Menu->More->ManagePartitions->System->ResizeFS (no reboot needed)

    6. Flashed the remaining files (b c and d in said order) using OrangeFox

    7. wiped Cache and dalvik cache, then rebooted

    8. Booted the system and setup the basic configuration dialogs ( i did not use hKTweaks, yet, will do this later when I verified all relevant stuff as working).

    System is working fine so far.
    I will be testing through the next days. I hope this might finally become a configuration making that phone useable for me.
    (Double Tap 2 Wake, DoubleTapeStatusBar to Sleep, CursorKeys in Navbar, Correct seting for the rounded corners - everything is in there and working, yes, the touchscreen is working, too!)
    thanks. you are very good. I want to donate but do not paypall in Turkey :(
    its fine.
    Just hit the thanks button on my thread;)
    wow .... great job .... congratulations ... I have installed now .... fast and fluid device only that the maximum frequency of the big ones does not select 2880mhz .... only 2184 .... definitely not a kernel problem but some setting

    Yeah, max frequency is not selected automatically because newer Exynos's kernels are very complicated. Their is no fix to this issue in any kernel at this time. But max frequency can be used by setting min and max frequency to that value.
    Thx for your feedback
    Eureka R8.0 update


    → Upstream Linux Kernel Version from 4.4.277 to 4.4.288
    → Added ondemandplus CPU governor.
    → Added BFQ and ZEN v2 I/O schedulers.
    → Added a new backlight brightness controller. [Feature can be used when new EKM app is released] [Experimental]
    → "Samsung A10 1.2A input charging current" feature has been hardcoded in kernel.
    → Nuked CPU quiet and reverted back to Exynos Hotplug. It should fix issue of cores randomly turning off.
    → Fixed GPU frequency being limited to 1100 MHz after being throttled (v2.0).
    → Some optimizations for better FS performance for EXT4 file-system.
    → Fixed non-detection of some gamepad controllers (such as chinese ones).
    → Patched kernel for android 12 (S).
    → Some other minor optimizations.