{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
XXP/DORA/F8131 OmniROM UNOFFICIAL LINARO BUILDS
OREO 8.1.0_r42
Kernel: 4.4.144
infected_ current build: 20180810 - kernel compiled with gcc linaro 5.5
DOWNLOAD
dic1911 current build (Stock Toolchain + Framework Optimization): 20180829
DOWNLOAD
CURRENT ISSUES:
- You tell me.
KERNEL CODE COMPILED WITH LATEST LINARO AARCH64-LINUX-GNU 5.5 (201711)
KERNEL SOURCE: https://github.com/infectedmushi/android_kernel_sony_msm-omni/tree/android-8.0
BUGS REPORT
REPORT BUGS ONLY:
- AFTER A CLEAN INSTALL
- USING STOCK KERNEL
- NO MODS OF ANY SORT
OMNI GERRIT REVIEW
https://gerrit.omnirom.org/
BUILDBOT:
(amd ryzen 2700x @ stock, msi x470 gaming pro carbon, 16gb g.skill ripjaws v red 3000mhz cl16, msi gtx 1070, 1x samsung ssd 850 evo 500gb + 1x samsung ssd 850 evo 250gb + 1x samsung ssd 860 evo 500gb + 1x toshiba/ocz ssd tr-150 240gb, 3x western digital wd10ezex 1tb hdd, 1x seagate 2tb hdd, silverstone olympia 1000w psu, antec 1200 high-tower)
(wc setup: ekwb supremacy evo amd cpu-block, ek coolstream xtx 240 radiator, 2x scythe slipstream 120mm 1900rpm fans, swiftech mcp355 water-pump, danger den 5.25" reservoir bay)
DISCLAIMER:
These builds are freshly compiled/synced from OmniROM open-source code.
XDA:DevDB Information
XXP/DORA/F8131 OmniROM UNOFFICIAL LINARO BUILDS, ROM for the Sony Xperia X Performance
Contributors
infected_, dic1911
Source Code: https://github.com/omnirom
ROM OS Version: 8.x Oreo
ROM Kernel: Linux 4.x
ROM Firmware Required: TWRP Recovery
Based On: OMNI/AOSP
Version Information
Status: Nightly
Created 2017-10-15
Last Updated 2018-08-29
Reserved
Raw Instructions:
- download latest build, latest ODM, and both twrp files (img + zip)
- fastboot boot twrp-3.2.1-20171218-boot-dora.img
- enter recovery (with the phone off, press volume down + power button at same time for a brief second)
- wipe all things, flash build, flash gapps, and flash recovery zip = twrp-3.2.1-20171218-fota-dora.zip
- adb push v10_tone_oreo.img /sdcard
- adb shell into the device, and: cd sdcard; dd if=v10_tone_oreo.img of=/dev/block/bootdevice/by-name/oem;
- reboot and you should be all set! enjoy.
Reserved
F.A.Q (Frequently Asked Questions)
What is the difference between these builds and the official builds?
These are unofficial builds of OmniROM for the Xperia X Performance (F8131)
ROM is built using the same source code (github) like the official one but with these following additions:
Compiled using linaro aarch64-linux-gnu 5.4.1 (kernel code) & ubertc aarch64-linux-android 4.9.x (rom code) toolchain compilers
May contain some custom cherry-picks. Always see changelog for details.
Cross-compiled using those custom toolchains results in a more smoother, faster, and battery friendly ROM
What is Toolchain?
To compile any Android project like a kernel or ROM, developers need to use a toolchain. As per elinux.org, a toolchain is a set of distinct software development tools that are linked (or chained) together by specific stages such as GCC, binutils and glibc (a portion of the GNU Toolchain). Toolchains may contain a debugger or a compiler for a specific programming language as C++ or other. Quite often, the toolchain used for embedded development is a cross toolchain, or more commonly known as a cross compiler. All the programs (like GCC) run on a host system of a specific architecture (such as x86) but produce binary code (executables) to run on a different architecture (e.g. ARM).
The most commonly used toolchain is GCC, initially released almost 20 years ago. A lightly modified GCC is used by Google during the AOSP build process. While Google’s GCC is considered to be the most stable toolchain around, it has some pretty decent competitors like Linaro and SaberMod. These projects are known to boost the overall system performance significantly on many devices. Let’s take a quick look to see the background of these projects.
Click to expand...
Click to collapse
Source: http://elinux.org
What is UBERTC?
From where UBERTC is coming from, from lead developer words:
UBERTC Background/History
After years of using different custom toolchains like Linaro and SaberMod, I found there were things I liked about both of them but also things that didn't sit quite as well with me. SaberMod always seemed to have UI lag (especially in scrolling) but opened apps well and Linaro always seemed to be buttery smooth but had terrible app opening speed. Linaro battery was also worse for me than SaberMod. After going back and forth between toolchains I finally had this epiphany! Why not just take all of the best parts of all toolchains and merge them into one? So I began bringing up my own toolchain from gnu.org. At first I patched in all of the AOSP toolchain pactches (much like how SaberMod did it originally however it is important that you realize that No! I did not copy and paste SaberMod into my source I'm simply stating that I used their idea of merging aosp into gnu.org) to my source. Then I went through and added all of the linaro patches that I could to the source. I also made sure that I had the very latest of every toolchain component. I then made very minimal changes to the aosp toolchain build folder to allow for building with these newer toolchain components and UBERTC was born!!! (Note: both Linaro and SaberMod both made lots of modifications to the toolchain build folder, UBERTC is the closest to the aosp build process)
Click to expand...
Click to collapse
Source: https://plus.google.com/communities/112152563785863538123
What is Linaro?
Linaro is the place where engineers from the world's leading technology companies define the future of Linux on ARM. The company is a not-for-profit engineering organization with over 120 engineers working on consolidating and optimizing open source software for the ARM architecture, including the GCC toolchain, the Linux kernel, ARM power management, graphics and multimedia interfaces.
Click to expand...
Click to collapse
Source: http://www.linaro.org/linux-on-arm/
Optimization Flags in GCC
What are flags?
For compilers such as GCC, flags are essentially options. A flag can enable or disable an option or feature that is used when compiling (building) code.
What are optimizations?
Optimizations, in the context of compiler flags, are flags that improve some aspect of the code, whether it be size, speed, memory use, and debugging, among other possibilities.
General Optimizations
These optimizations are basic flags in GCC, typically implemented into projects to improve an aspect of the final compiled code.
-O1: Optimization level 1, very basic optimizations, rarely used.
-O2: Optimization level 2, basic optimizations, most commonly used.
-O3: Optimization level 3, basic + experimental optimizations. Large performance boost, but can produce bugs.
-Os: Optimize for size. Most of the optimizations from levels 1 and 2, with extras added to decrease the size of code.
-Ofast: All Optimizations from levels 1, 2, and 3, with extra fast math optimizations.
Typically produces the most bugs, with a large performance gain.
-Og: No performance boost, optimizes the debugging experience, making errors and
warnings more informative to help developers.
-g0: Disables all extra debugging, usually makes code faster.
-fomit-frame-pointer: Removes frame pointers when they aren’t needed, streamlining the code.
-fipa-sra: Removes unused parameters/variables and replaces parameters with the called value, streamlining the code.
-fkeep-inline-functions: Emits static inline functions, even after they’ve been called.
-fmodulo-sched: Reorders instructions in loops in the most optimal way.
-fmodulo-sched-allow-regmoves: a more aggressive -fmodulo-sched, optimizing loops further by allowing register moves
-fgcse-sm: Moves stores out of loops to decrease the workload of loops.
-fgcse-las: Removes redundant loads after a store to reduce the workload.
-fgcse-after-reload: Removes redundant loads after a reload.
-funsafe-loop-optimizations: Optimize more by making assumptions, can create bugs from loops overflowing.
-fira-hoist-pressure: Decreases size of the code by evaluating register pressure for hoist expressions.
-fira-loop-pressure: Makes code smaller and faster by evaluating the register pressure of loops.
-DNDEBUG: Passes the variable for no debugging.
-flto: Enables link time optimizations (LTO) for improved library and executable performance.
Graphite Optimizations
Graphite is a project within gcc that uses the integer set library (ISL) and the chunky loop generator (CLooG) to improve memory use and optimize loops.
-fgraphite: Performs basic graphite loop and memory optimizations.
-floop-interchange: Switches two nested loops.
-floop-strip-mine: Splits a complex loop into a set nested loops.
-floop-block: Splits a loop into nested loops so that the memory fits into caches.
-fgraphite-identity: Creates a visual polyhedral representation of certain graphite optimizations. with some optimizations from ISL such as dead code removal.
-floop-nest-optimize: Optimizes the order of nested loops for data-locality and parallelism. This flag is experimental
-floop-unroll-and-jam: Enable unroll and jam for the ISL loop optimizer.
-floop-parallelize-all: Use graphite data to find and parallelize loops that can be.
Multithreading optimizations
Make code run in multiple jobs (threads) to use a multicore cpu to its fullest potential.
-ftree-parallelize-loops=n: Run parallelized loops is n number of threads.
-pthread: Use the posix thread system for multi-threading.
-fopenmp: Use the OpenMP thread system for multithreading. Tends to use less ram than posix.
Sanitizer Flags
These flags use libsanitizer for memory optimizations.
-fsanitize=leak: Sanitize memory leaks to reduce memory use
-fsanitize=address: Sanitize memory addresses to reduce memory use
-fsanitize=thread: Sanitize excess threads to reduce memory/cpu use. Only for 64bit.
Hardware Optimizations
These optimizations optimize code for the targets cpu, gpu, or ram.
-marm: Uses the ARM instruction set for executable code, improving performance.
-mthumb: Uses the Thumb2 instruction set, improving compatibility.
-mthumb-interwork: Improves compatibility between Thumb and ARM code.
-march=X: Optimizes code for your CPU’s arch, such as armv6, armv7-a, etc
-mcpu=X: Optimizes code for your specific CPU such as cortex-a15, cortex-a53, etc.
-mtune=X: Refer to -mcpu
-mfpu=X: Optimizes code for your CPU’s FPU such as vfpv3. vfpv4, neon, etc.
-mabi=X: Optimizes code ABI for your CPU, such as 32 or 64
Click to expand...
Click to collapse
Stuck on boot logo.
Hallon said:
Stuck on boot logo.
Click to expand...
Click to collapse
you need to flash odm before, it's like a new vendero blobs partition os sony aosp program
Flash vendor image to your device
Download the vendor image corresponding your device from List of devices and resources.
Unpack the vendor zip file to obtain the vendor image.
unzip SW_binaries_for_Xperia_AOSP_O_MR0_4.4_<release version>_<platform>.zip
Note: Release version should be equivalent to the latest downloaded image version, and platform should match your device.
On your device: Connect the device to your computer in Fastboot mode, by pressing volume up while inserting the USB cable. When the device is in Fastboot mode, the LED on the device will be illuminated in blue.
On your computer: Flash the vendor image by entering the following commands in a terminal window:
fastboot flash oem SW_binaries_for_Xperia_AOSP_O_MR0_4.4_<release version>_<platform>.img
Note: Release version should be equivalent to the latest downloaded image version, and platform should match your device.
Click to expand...
Click to collapse
convert img with simg2img before
https://developer.sonymobile.com/op...-build-aosp-oreo-for-unlocked-xperia-devices/
check at the bottom.
Hallon said:
Stuck on boot logo.
Click to expand...
Click to collapse
As stated in post above, you need to 'flash' the propriatary blobs to oem partition.
Instructions for this, you can find in my thread: https://forum.xda-developers.com/showpost.php?p=74130466&postcount=2
new build is up.
regards.
writing ‘oem’…
FAILED (remote: Command not allowed)
finished. total time: 4.967s
F8131_41.2.A.7.76_1305-2784_R2D.ftf
hellyjia said:
writing ‘oem’…
FAILED (remote: Command not allowed)
finished. total time: 4.967s
F8131_41.2.A.7.76_1305-2784_R2D.ftf
Click to expand...
Click to collapse
Dont you read ?
https://forum.xda-developers.com/showpost.php?p=74130466&postcount=2
F8132 is OK?
Must flash it on Oreo ,or it's OK on Nougat,too?
F8132 is OK,but not dual-SIM.
Would it support dual-sim in the next version?
Could U support NFC-Sim ?
or flash something to enable it ?
finigerprint isn't work.
Help!
Cannot play songs(mp3) in music player. Whichever
- new build is up!
regards.
I can't get this to boot. What am I doing wrong?
Would I flash v20180204 from 20171112 with TWRP?
I can't OTA update.
fallingandroid said:
I can't get this to boot. What am I doing wrong?
Click to expand...
Click to collapse
Check OP. You are probably missing ODM
saiz0313 said:
Would I flash v20180204 from 20171112 with TWRP?
I can't OTA update.
Click to expand...
Click to collapse
I recommend a full system wipe, coming from 20171112.
Lot of things changed.
If I am coming from another Oreo build (AOSP) and already have the latest ODM, will I have to flash it again after installing (will do a full system+data wipe)?
Related
XPERIA Z1/HONAMI/C6903 PARANOID ANDROID 4.5 LINARO/SABERMOD WEEKLY BUILDS
4.5 BETA 2 is ONLINE
Build/Sync Date: Ago 13 xxh:xx GMT+1 Lisbon
DOWNLOAD
(infected server)
(md5sum included with all builds)
CHANGELOG
http://forum.xda-developers.com/showthread.php?p=54620455
HOMEPAGE
http://infectedbuilds.net
kernel code compiled with linaro arm-eabi-4.9.1 201407 toolchain
rom code compiled with with sabermod arm-linux-androideabi-4.8.4 201407 toolchain
FEATURES
-O3 optimizations (ROM and kernel code)
strict-aliasing rules
custom performance flags (ROM and kernel code)
+30 cherry-picks used
graphite
(buildbot: intel core i7 [email protected], asus p8z77-v, 8gb corsair vengeance pro 2133mhz cl9, sapphire hd7970 dual-x, 2x samsung 128gb ssd 840 pro raid 0 array,
4x western wigital wd3200aaks raid 10 array, samsung f1 1tb, silverstone olympia 1000w psu, antec 1200 high-tower)
(wc setup: swiftech apogee xt cpu-block, black-ice gtx-lite 240 radiator, 2x noiseblocker eloop b12-3 1900rpm fans, swiftech mcp355 water-pump, danger den 5.25" reservoir bay)
(Linux Mint 17 x64 "Qiana" 3.13.0-24)
DONATIONS NEEDED
Disclaimer:
These builds are freshly compiled/synced from AOSPA Legacy open-source code:
https://github.com/AOSPA-legacy
latest linaro arm-eabi-4.9.1 toolchain used to compile the kernel code & sabermod arm-linux-androideabi-4.8.4 toolchain to compile ROM code
Special Thanks
AOSPA Legacy Dev Team
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
XDA:DevDB Information
Z1/HONAMI/C6903 Linaro/Sabermod Paranoid Android Legacy (AOSPAL) 4.4x Builds, ROM for the Sony Xperia Z1
Contributors
infected_
ROM OS Version: 4.4.x KitKat
ROM Kernel: Linux 3.4.x
ROM Firmware Required: Latest CWM Recovery or TWRP recovery
Based On: AOSPAL
Version Information
Status: Stable
Current Stable Version: 4.44
Stable Release Date: 2014-07-24
Created 2014-07-24
Last Updated 2014-08-13
Install instructions:
first time
- power off the phone:
- hold vol+ and plug usb to boot into fastboot (blue led)
- fastboot flash boot boot.img (extract boot.img from an official AOSPAL honami build zip or these builds)
- fastboot reboot
- enter recovery, on boot led will be violet for 3'', during this period press vol+
- flash rom zip
- flash gapps zip
- wipe
- reboot
for update just flash rom zip from recovery
Google Apps = http://forum.xda-developers.com/showthread.php?t=2397942
F.A.Q (Frequently Asked Questions)
What is the difference between these builds and the official builds?
These are unofficial builds of AOSPA Legacy for the Xperia Z1/Honami/C6903
ROM is built using the same source code (github) like the official one but with these following additions:
Compiled using linaro arm-eabi 4.9.1 14.07 (kernel code) & sabermod arm-linux-androideabi 4.8.4 14.07 (rom code) toolchain compilers
May contain some custom cherry-picks. Always see changelog for details.
Cross-compiled using those custom toolchains results in a more smoother, faster, and battery friendly ROM
What is Toolchain?
In software, a toolchain is the set of programming tools that are used to create a product (typically another computer program or system of programs). The tools may be used in a chain, so that the output of each tool becomes the input for the next, but the term is used widely to refer to any set of linked development tools.
A simple software development toolchain consists of a compiler and linker to transform the source code into an executable program, libraries to provide interfaces to the operating system, and a debugger. A complex product such as a video game needs tools for preparing sound effects, music, textures, 3-dimensional models, and animations, and further tools for combining these resources into the finished product.
Click to expand...
Click to collapse
Source: http://en.wikipedia.org/wiki/Toolchain
What is SaberMod?
The term "SaberMod" is coming from:
SaberMod is a AOSP based ROM with some extra features added in and mostly from CyanogenMod. SaberMod started out pure AOSP when android 4.2.1 launched. Originally it was pure AOSP with a few extra features I ported over from CyanogeMod and linaro optimizations. Then I rebased everything off of rasbeanjelly because I liked many features found in rasbean. Since then I've modified a lot of the code so not much of it is rasbeanjelly based anymore. But you will still find some commonly used features found in rasbeanjelly. SaberMod is not a rasbeanjelly or CM clone, or KANG. Custom kernels are included for certain devices when available. These are personal builds we make for ourselves and originally became very popular in the nexus 7 forums. Features are very rarely added, and are built to SaberMod's team members liking. Currently there are two members of SaberMod working on this project. Myself and @jarjar124 . Please understand our time is limited and we are only two people who have lives, and do not have 25-50 members like CyanogenMod to add things. And our goal is not to add a bunch of features that bloat the system of the ROM.
Click to expand...
Click to collapse
Source: http://forum.xda-developers.com/show....php?t=2158698
What is Linaro?
Linaro is the place where engineers from the world's leading technology companies define the future of Linux on ARM. The company is a not-for-profit engineering organization with over 120 engineers working on consolidating and optimizing open source software for the ARM architecture, including the GCC toolchain, the Linux kernel, ARM power management, graphics and multimedia interfaces.
Click to expand...
Click to collapse
Source: http://www.linaro.org/linux-on-arm/
About GCC main compiler cflags
-O1
Optimize. Optimizing compilation takes somewhat more time, and a lot more memory for a large function. With -O, the compiler tries to reduce code size and execution time, without performing any optimizations that take a great deal of compilation time.
-O2
Optimize even more. GCC performs nearly all supported optimizations that do not involve a space-speed tradeoff. As compared to -O, this option increases both compilation time and the performance of the generated code. -O2 turns on all optimization flags specified by -O.
-O3
Optimize yet more. -O3 turns on all optimizations specified by -O2 and also turns on the -finline-functions, -funswitch-loops, -fpredictive-commoning, -fgcse-after-reload, -ftree-loop-vectorize, -ftree-slp-vectorize, -fvect-cost-model, -ftree-partial-pre and -fipa-cp-clone options.
-Os
Optimize for size. -Os enables all -O2 optimizations that do not typically increase code size. It also performs further optimizations designed to reduce code size.
Click to expand...
Click to collapse
first
wow new rom i must try it
---------- Post added at 03:45 PM ---------- Previous post was at 03:15 PM ----------
install finito
start with Rom now i write feedback later
Thx , but is there anything different from the old AOSPAL we have here ?
iiD4x said:
Thx , but is there anything different from the old AOSPAL we have here ?
Click to expand...
Click to collapse
yes. these builds are cross-compiled with custom toolchains, instead of google gcc 4.6 & 4.7 "stock" ones... the gcc toolchains that can be used are linaro, sabermod, and boosted... compiling using latest gcc versions 4.8/4.9, using -O3 optimizations, strict-aliasing, and other performance/optimization flags, results in the advantages described on the third OP.. smoother, faster, and more battery friendly builds...
try it, and them give feedback...
any doubt, feel free to ask.
regards.
infected_ said:
yes. these builds are cross-compiled with custom toolchains, instead of google gcc 4.6 & 4.7 "stock" ones... the gcc toolchains that can be used are linaro, sabermod, and boosted... compiling using latest gcc versions 4.8/4.9, using -O3 optimizations, strict-aliasing, and other performance/optimization flags, results in the advantages described on the third OP.. smoother, faster, and more battery friendly builds...
try it, and them give feedback...
any doubt, feel free to ask.
regards.
Click to expand...
Click to collapse
Lol, Official AOSPAL we have here using latest SaberMod toolchain also..
OPTIMIZATION:
Offical SaberMod toolchain (GCC 4.8 for ROM , 4.9 for Kernel)
Strict-aliasing enabled
Memory optimization flags
Graphite
Click to expand...
Click to collapse
i dont mean anything, but we already have it OFFICIAL for honami.
iiD4x said:
Lol, Official AOSPAL we have here using latest SaberMod toolchain also..
i dont mean anything, but we already have it OFFICIAL for honami.
Click to expand...
Click to collapse
you must be mixing things up... Paranoid Android (AOSPA) uses google toolchains.. just check manifests.
Paranoid Android Legacy (AOSPAL) also uses google toolchains... check manifests.
Paranoid Saberdroid (AOSPAL also), i dont give a dime what they use...
i told to try ROM first...
regards.
Been waiting for this Thread.. Superlike
Sent from my Xperia Z1 using Tapatalk
Is there any disadvantage of this over the official one?
Blegh said:
Is there any disadvantage of this over the official one?
Click to expand...
Click to collapse
This will be faster
Blegh said:
Is there any disadvantage of this over the official one?
Click to expand...
Click to collapse
quite the opposite.. run for half a day with stock PA, then run the other half of the day with a PA linaro/sabermod build.
you can flash each on top of another and vice-versa.
You'll see the differences..
When I've flashed the boot.img from CM11 and try to access my sdcard from recovery I get the following error:
E: Can't mount /storage/sdcard1
Any idea on how to solve this?
Thanks
siwan05 said:
when i've flashed the boot.img from cm11 and try to access my sdcard from recovery i get the following error:
E: Can't mount /storage/sdcard1
any idea on how to solve this?
Thanks
Click to expand...
Click to collapse
Try flashing the boot.img from this rom zip
abbychauhan said:
Try flashing the boot.img from this rom zip
Click to expand...
Click to collapse
yeah.. i need to change 2nd post instructions according to AOSPAL..
You might want to change the tag to AOSPA as AOSPAL is the name for Paranoid SaberDroid. It is kinda misleading IMO.
There's new build 26 July
Sent from my Xperia Z1 using Tapatalk
if @infected_ would be kind enough to give changelogs then it would be batter
Though new build working Superb
7sen said:
There's new build 26 July
Sent from my Xperia Z1 using Tapatalk
Click to expand...
Click to collapse
abbychauhan said:
if @infected_ would be kind enough to give changelogs then it would be batter
Though new build working Superb
Click to expand...
Click to collapse
there isn’t any.. its same 4.44 build, but i only added extra cpu governors and i/o schedulers... sure there were things merged, you can check gerrit ..
its an untested build. don’t have time to do it atm...
infected_ said:
there isn’t any.. its same 4.44 build, but i only added extra cpu governors and i/o schedulers... sure there were things merged, you can check gerrit ..
its an untested build. don’t have time to do it atm...
Click to expand...
Click to collapse
it's perfect build i installed with fresh install :good: and now it's good with all cpu governors :angel:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
eva kernel is a custom kernel based on OnePlus 9/9 Pro and Oplus android-13 sources with some under the hood optimisations and improvements. This kernel aims to provide a flash-and-use experience and is not intended to be tuned or modified by the user. There are a few key features to this kernel that improves the overall experience which includes several compiler optimisations, minimal debug code and production level stability.
This custom kernel only supports Android 13 based custom roms that use the OxygenOS 13 firmware. OxygenOS/ColorOS/RealmeUI android versions 11/12/13 are unsupported as of now (maybe supported in future if I find testers).
Features of the kernel includes:
Bleeding Edge Toolchains: The Eva Kernel is built using two custom toolchains: eva GCC and Neutron Clang. Both the toolchains are bleeding edge with new compiler optimisations and features being merged into them.
MGLRU Backport: MGLRU is a memory management algorithm that's used to improve the performance of systems with limited memory. The Eva Kernel has MGLRU backported, allowing it to take advantage of this feature and improve performance on devices with less RAM. MGLRU allows the kernel to use memory more efficiently and avoid swapping to disk, resulting in better performance and faster response times.
Full GCC LTO and clang thin LTO: GCC LTO (Link-Time Optimization) and clang thin LTO are compiler optimizations that can improve code generation and reduce the size of the resulting binary. By building the kernel with both of these optimizations, the Eva Kernel achieves better performance and a smaller size. LTO works by analyzing the code at compile time and performing optimization at the link stage. This results in more efficient code generation and better performance.
Graphite Optimizations (GCC variant only): Graphite Optimizations is a set of optimizations that improve the performance of code by allowing the compiler to better understand the relationships between different parts of the code. The Eva Kernel includes this feature for those who are fans of it (GCC variant only). Graphite Optimizations work by analyzing the code and identifying patterns and relationships between different parts of the code. The compiler can then use this information to generate more efficient code.
Fully Upstreamed to Latest Linux Upstream Source: The kernel is fully upstreamed to the latest linux upstream source. This means that it's up to date with the latest security patches and features, and should be compatible with the latest version of Android. Upstreaming means that the kernel is based on the latest stable release of the Linux kernel and includes all the latest security patches and bug fixes.
Fully Up to Date with Android Security Bulletin: The kernel is fully up to date with the latest Android Security Bulletin, ensuring that your device is as secure as possible. The Android Security Bulletin is a monthly release that includes security updates for the Android operating system. The Eva Kernel is updated to include all the latest security patches and fixes.
Battery Optimisations: The kernel employs power efficient workqueues that enable the kernel to run specific workqueues in a power efficient manner in order to reduce power consumption and increase battery life. Power hungry drivers are those that consume a lot of power, such as the WiFi driver, and audio driver.
Tracing free: The Eva Kernel has removed the CONFIG_TRACING kernel configuration option, resulting in a slight performance improvement. CONFIG_TRACING is a kernel configuration option that enables kernel tracing, which can be useful for debugging purposes. However, it can also have a slight impact on performance.
Built on CI: The kernel is built on a Continuous Integration (CI) system, which ensures that it's built consistently and reliably. CI is a process that automatically builds, tests, and deploys code changes. By building the kernel on a CI system, the Eva Kernel is built in a controlled and automated environment, which reduces the risk of human error and ensures that each build is consistent and reliable. This also makes it easier to maintain and update the kernel over time.
GCC PGO (GCC Variant only): The Eva Kernel is built with GCC PGO (Profile Guided Optimization), which is a compiler optimization technique that uses profiling information to improve code generation. GCC PGO works by collecting profiling information about the kernel during a test run and then using that information to optimize the code during the next build. This can result in better performance and a smaller binary size.
No Modules: The support for modules has been dropped from the kernel to improve security. This can potentially avoid malicious modules being loaded into the kernel.
And many more to come with subsequent updates!
eva kernel has 2 variants available for user choice:
Clang Version: This variant is built using the bleeding LLVM toolchain (Neutron clang).
GCC Version: This variant is built using the baremetal GNU C Compiler (GCC) (or eva GCC).
What is the difference between these?
It is just a compiler difference. It boils down to the optimisations applied via the compiler to the C that would yield a real-life difference. I provide both the clang and gcc version to give users a choice. At the end of the day, it depends on your own usage, and the kernel shall provide you the best user experience out of the box with both clang and GCC.
How do I install this kernel?
Firstly, backup your boot, vendor_boot and dtbo partitions. The kernel only modifies these partitions and in case if the kernel fails to boot (which it won't), you can just restore the 3 partitions or flash full ota of your custom rom to get back to previous working state.
To flash the kernel:
You can use TWRP or any other custom recovery and flash it just as any other flashable zip.
This kernel also supports flashing using custom kernel managers like FKM etc.
Downloads
Grab the Kernel from my GitHub Releases!
Note: Only download the zip according to your device codename:
OnePlus 9/9 Pro: eva-lemonade-xxx
OnePlus 9RT: eva-martini-xxx
Realme GT Master: eva-lunaa-xxx
Beta Testing
If you are interested in testing my kernel, join my Telegram Channel (and discussion through the channel) which posts automated builds.
Source Code: GitHub
Like my work?
Buy me a beer!
Sponsor me on my GitHub!
Special Thanks to @Sherif Rahim @SugaCRX @rk134 for testing out the kernel!
Changelogs
21 April 2023
Latest upstream (5.4.241)
Latest Android Security bulletin merged (ASB-2023-04-05_11-5.4)
Samsung RMNET extension for better network throughput
Fixed double tap to wake on OnePlus 9
Fixed userspace irq balance crashes
Buffer allocation optimisations
Clang builds are now built with Polly Optimisations
18 May 2023
Latest upstream (5.4.243)
Latest Android Security bulletin merged (ASB-2023-05-05_11-5.4)
Latest QSSI14 CLO upstream (LA.UM.9.14.r1-21600-LAHAINA.QSSI14.0)
Latest exFAT driver updates
Improved fingerprint sensor drivers
Support for ROMs using OSS HWC
Upgraded GCC to 14.x
Kernel is now optimized for performance using -O3
Improve drains caused due to IPA (Mobile Network)
22 May 2023
Fixed usb issues
Fixed battery drain due to USB wakelock stuck
Bess Karamel Vaai
wao best kranul
Awesome karamel
flashed on latest nameless, haptics are ded will attach logs after testing it more
. thx for this great kernel. and you have my deepest support
KingMonkeyDLuffy said:
flashed on latest nameless, haptics are ded will attach logs after testing it more
. thx for this great kernel. and you have my deepest support
Click to expand...
Click to collapse
That's strange. It must be some nameless side change.
m_vaisakh said:
That's strange. It must be some nameless side change.
Click to expand...
Click to collapse
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
Mar-cel said:
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
View attachment 5881169
Click to expand...
Click to collapse
I've discussed it with Chandu and he said he'll update the ROM to support the haptics.
Pero kernel dev.
m_vaisakh said:
he'll update
Click to expand...
Click to collapse
any fixes before update? miss vibration so much
rawello said:
any fixes before update? miss vibration so much
Click to expand...
Click to collapse
Well, the problem is, if I fix it for nameless, it'll break for every other rom. So you'll have to wait until chandu pushes a new update for nameless.
Or if you can force the device to be permissive selinux it may work (I do not recommend doing that).
m_vaisakh said:
устройство будет разрешенным selinux, это может сработать (я не думаю, что это нужно делать).
Click to expand...
Click to collapse
let's try)
m_vaisakh said:
permissive selinux
Click to expand...
Click to collapse
so, its work, thanks! wait Chandu nameless update
Mar-cel said:
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
View attachment 5881169
Click to expand...
Click to collapse
Only haptics are broken? I test for Nameless, I'll flash the kernel if haptics are the only issue.
I'm unable to join the telegram group for some reason
Has anyone else tried this kernel on the latest Nameless? I've seen here that haptics are broken but that doesn't bother me. Is anything else broken? Should I use GCC or Clang version?
itsnebulalol said:
doesn't bother
Click to expand...
Click to collapse
bear in mind, any vibration(notification vibration, haptic, alarm vibration) does not work
Ryano89 said:
Only haptics are broken? I test for Nameless, I'll flash the kernel if haptics are the only issue.
Click to expand...
Click to collapse
I couldn't find anything else
Mar-cel said:
I couldn't find anything else
Click to expand...
Click to collapse
Thanks. I flashed the gcc version on lemonade through EXKM and was stuck in fastboot on Nameless. Easily got booted with my backup. I'll try Clang version later
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
eva kernel is a custom kernel based on OnePlus 9/9 Pro and Oplus android-13 sources with some under the hood optimisations and improvements. This kernel aims to provide a flash-and-use experience and is not intended to be tuned or modified by the user. There are a few key features to this kernel that improves the overall experience which includes several compiler optimisations, minimal debug code and production level stability.
This custom kernel only supports Android 13 based custom roms that use the OxygenOS 13 firmware. OxygenOS/ColorOS/RealmeUI android versions 11/12/13 are unsupported as of now (maybe supported in future if I find testers).
Features of the kernel includes:
Bleeding Edge Toolchains: The Eva Kernel is built using two custom toolchains: eva GCC and Neutron Clang. Both the toolchains are bleeding edge with new compiler optimisations and features being merged into them.
MGLRU Backport: MGLRU is a memory management algorithm that's used to improve the performance of systems with limited memory. The Eva Kernel has MGLRU backported, allowing it to take advantage of this feature and improve performance on devices with less RAM. MGLRU allows the kernel to use memory more efficiently and avoid swapping to disk, resulting in better performance and faster response times.
Full GCC LTO and clang thin LTO: GCC LTO (Link-Time Optimization) and clang thin LTO are compiler optimizations that can improve code generation and reduce the size of the resulting binary. By building the kernel with both of these optimizations, the Eva Kernel achieves better performance and a smaller size. LTO works by analyzing the code at compile time and performing optimization at the link stage. This results in more efficient code generation and better performance.
Graphite Optimizations (GCC variant only): Graphite Optimizations is a set of optimizations that improve the performance of code by allowing the compiler to better understand the relationships between different parts of the code. The Eva Kernel includes this feature for those who are fans of it (GCC variant only). Graphite Optimizations work by analyzing the code and identifying patterns and relationships between different parts of the code. The compiler can then use this information to generate more efficient code.
Fully Upstreamed to Latest Linux Upstream Source: The kernel is fully upstreamed to the latest linux upstream source. This means that it's up to date with the latest security patches and features, and should be compatible with the latest version of Android. Upstreaming means that the kernel is based on the latest stable release of the Linux kernel and includes all the latest security patches and bug fixes.
Fully Up to Date with Android Security Bulletin: The kernel is fully up to date with the latest Android Security Bulletin, ensuring that your device is as secure as possible. The Android Security Bulletin is a monthly release that includes security updates for the Android operating system. The Eva Kernel is updated to include all the latest security patches and fixes.
Battery Optimisations: The kernel employs power efficient workqueues that enable the kernel to run specific workqueues in a power efficient manner in order to reduce power consumption and increase battery life. Power hungry drivers are those that consume a lot of power, such as the WiFi driver, and audio driver.
Tracing free: The Eva Kernel has removed the CONFIG_TRACING kernel configuration option, resulting in a slight performance improvement. CONFIG_TRACING is a kernel configuration option that enables kernel tracing, which can be useful for debugging purposes. However, it can also have a slight impact on performance.
Built on CI: The kernel is built on a Continuous Integration (CI) system, which ensures that it's built consistently and reliably. CI is a process that automatically builds, tests, and deploys code changes. By building the kernel on a CI system, the Eva Kernel is built in a controlled and automated environment, which reduces the risk of human error and ensures that each build is consistent and reliable. This also makes it easier to maintain and update the kernel over time.
GCC PGO (GCC Variant only): The Eva Kernel is built with GCC PGO (Profile Guided Optimization), which is a compiler optimization technique that uses profiling information to improve code generation. GCC PGO works by collecting profiling information about the kernel during a test run and then using that information to optimize the code during the next build. This can result in better performance and a smaller binary size.
No Modules: The support for modules has been dropped from the kernel to improve security. This can potentially avoid malicious modules being loaded into the kernel.
And many more to come with subsequent updates!
eva kernel has 2 variants available for user choice:
Clang Version: This variant is built using the bleeding LLVM toolchain (Neutron clang).
GCC Version: This variant is built using the baremetal GNU C Compiler (GCC) (or eva GCC).
What is the difference between these?
It is just a compiler difference. It boils down to the optimisations applied via the compiler to the C that would yield a real-life difference. I provide both the clang and gcc version to give users a choice. At the end of the day, it depends on your own usage, and the kernel shall provide you the best user experience out of the box with both clang and GCC.
How do I install this kernel?
Firstly, backup your boot, vendor_boot and dtbo partitions. The kernel only modifies these partitions and in case if the kernel fails to boot (which it won't), you can just restore the 3 partitions or flash full ota of your custom rom to get back to previous working state.
To flash the kernel:
You can use TWRP or any other custom recovery and flash it just as any other flashable zip.
This kernel also supports flashing using custom kernel managers like FKM etc.
Downloads
Grab the Kernel from my GitHub Releases!
Note: Only download the zip according to your device codename:
OnePlus 9/9 Pro: eva-lemonade-xxx
OnePlus 9RT: eva-martini-xxx
Realme GT Master: eva-lunaa-xxx
Beta Testing
If you are interested in testing my kernel, join my Telegram Channel (and discussion through the channel) which posts automated builds.
Source Code: GitHub
Like my work?
Buy me a beer!
Sponsor me on my GitHub!
Special Thanks to @Sherif Rahim @SugaCRX @rk134 for testing out the kernel!
Changelogs
21 April 2023
Latest upstream (5.4.241)
Latest Android Security bulletin merged (ASB-2023-04-05_11-5.4)
Samsung RMNET extension for better network throughput
Fixed double tap to wake on OnePlus 9
Fixed userspace irq balance crashes
Buffer allocation optimisations
Clang builds are now built with Polly Optimisations
18 May 2023
Latest upstream (5.4.243)
Latest Android Security bulletin merged (ASB-2023-05-05_11-5.4)
Latest QSSI14 CLO upstream (LA.UM.9.14.r1-21600-LAHAINA.QSSI14.0)
Latest exFAT driver updates
Improved fingerprint sensor drivers
Support for ROMs using OSS HWC
Upgraded GCC to 14.x
Kernel is now optimized for performance using -O3
Improve drains caused due to IPA (Mobile Network)
22 May 2023
Fixed usb issues
Fixed battery drain due to USB wakelock stuck
Bess Karamel Vaai
wao best kranul
Awesome karamel
flashed on latest nameless, haptics are ded will attach logs after testing it more
. thx for this great kernel. and you have my deepest support
KingMonkeyDLuffy said:
flashed on latest nameless, haptics are ded will attach logs after testing it more
. thx for this great kernel. and you have my deepest support
Click to expand...
Click to collapse
That's strange. It must be some nameless side change.
m_vaisakh said:
That's strange. It must be some nameless side change.
Click to expand...
Click to collapse
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
Mar-cel said:
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
View attachment 5881169
Click to expand...
Click to collapse
I've discussed it with Chandu and he said he'll update the ROM to support the haptics.
Pero kernel dev.
m_vaisakh said:
he'll update
Click to expand...
Click to collapse
any fixes before update? miss vibration so much
rawello said:
any fixes before update? miss vibration so much
Click to expand...
Click to collapse
Well, the problem is, if I fix it for nameless, it'll break for every other rom. So you'll have to wait until chandu pushes a new update for nameless.
Or if you can force the device to be permissive selinux it may work (I do not recommend doing that).
m_vaisakh said:
устройство будет разрешенным selinux, это может сработать (я не думаю, что это нужно делать).
Click to expand...
Click to collapse
let's try)
m_vaisakh said:
permissive selinux
Click to expand...
Click to collapse
so, its work, thanks! wait Chandu nameless update
Mar-cel said:
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
View attachment 5881169
Click to expand...
Click to collapse
Only haptics are broken? I test for Nameless, I'll flash the kernel if haptics are the only issue.
I'm unable to join the telegram group for some reason
Has anyone else tried this kernel on the latest Nameless? I've seen here that haptics are broken but that doesn't bother me. Is anything else broken? Should I use GCC or Clang version?
itsnebulalol said:
doesn't bother
Click to expand...
Click to collapse
bear in mind, any vibration(notification vibration, haptic, alarm vibration) does not work
Ryano89 said:
Only haptics are broken? I test for Nameless, I'll flash the kernel if haptics are the only issue.
Click to expand...
Click to collapse
I couldn't find anything else
Mar-cel said:
I couldn't find anything else
Click to expand...
Click to collapse
Thanks. I flashed the gcc version on lemonade through EXKM and was stuck in fastboot on Nameless. Easily got booted with my backup. I'll try Clang version later
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
eva kernel is a custom kernel based on OnePlus 9/9 Pro and Oplus android-13 sources with some under the hood optimisations and improvements. This kernel aims to provide a flash-and-use experience and is not intended to be tuned or modified by the user. There are a few key features to this kernel that improves the overall experience which includes several compiler optimisations, minimal debug code and production level stability.
This custom kernel only supports Android 13 based custom roms that use the OxygenOS 13 firmware. OxygenOS/ColorOS/RealmeUI android versions 11/12/13 are unsupported as of now (maybe supported in future if I find testers).
Features of the kernel includes:
Bleeding Edge Toolchains: The Eva Kernel is built using two custom toolchains: eva GCC and Neutron Clang. Both the toolchains are bleeding edge with new compiler optimisations and features being merged into them.
MGLRU Backport: MGLRU is a memory management algorithm that's used to improve the performance of systems with limited memory. The Eva Kernel has MGLRU backported, allowing it to take advantage of this feature and improve performance on devices with less RAM. MGLRU allows the kernel to use memory more efficiently and avoid swapping to disk, resulting in better performance and faster response times.
Full GCC LTO and clang thin LTO: GCC LTO (Link-Time Optimization) and clang thin LTO are compiler optimizations that can improve code generation and reduce the size of the resulting binary. By building the kernel with both of these optimizations, the Eva Kernel achieves better performance and a smaller size. LTO works by analyzing the code at compile time and performing optimization at the link stage. This results in more efficient code generation and better performance.
Graphite Optimizations (GCC variant only): Graphite Optimizations is a set of optimizations that improve the performance of code by allowing the compiler to better understand the relationships between different parts of the code. The Eva Kernel includes this feature for those who are fans of it (GCC variant only). Graphite Optimizations work by analyzing the code and identifying patterns and relationships between different parts of the code. The compiler can then use this information to generate more efficient code.
Fully Upstreamed to Latest Linux Upstream Source: The kernel is fully upstreamed to the latest linux upstream source. This means that it's up to date with the latest security patches and features, and should be compatible with the latest version of Android. Upstreaming means that the kernel is based on the latest stable release of the Linux kernel and includes all the latest security patches and bug fixes.
Fully Up to Date with Android Security Bulletin: The kernel is fully up to date with the latest Android Security Bulletin, ensuring that your device is as secure as possible. The Android Security Bulletin is a monthly release that includes security updates for the Android operating system. The Eva Kernel is updated to include all the latest security patches and fixes.
Battery Optimisations: The kernel employs power efficient workqueues that enable the kernel to run specific workqueues in a power efficient manner in order to reduce power consumption and increase battery life. Power hungry drivers are those that consume a lot of power, such as the WiFi driver, and audio driver.
Tracing free: The Eva Kernel has removed the CONFIG_TRACING kernel configuration option, resulting in a slight performance improvement. CONFIG_TRACING is a kernel configuration option that enables kernel tracing, which can be useful for debugging purposes. However, it can also have a slight impact on performance.
Built on CI: The kernel is built on a Continuous Integration (CI) system, which ensures that it's built consistently and reliably. CI is a process that automatically builds, tests, and deploys code changes. By building the kernel on a CI system, the Eva Kernel is built in a controlled and automated environment, which reduces the risk of human error and ensures that each build is consistent and reliable. This also makes it easier to maintain and update the kernel over time.
GCC PGO (GCC Variant only): The Eva Kernel is built with GCC PGO (Profile Guided Optimization), which is a compiler optimization technique that uses profiling information to improve code generation. GCC PGO works by collecting profiling information about the kernel during a test run and then using that information to optimize the code during the next build. This can result in better performance and a smaller binary size.
No Modules: The support for modules has been dropped from the kernel to improve security. This can potentially avoid malicious modules being loaded into the kernel.
And many more to come with subsequent updates!
eva kernel has 2 variants available for user choice:
Clang Version: This variant is built using the bleeding LLVM toolchain (Neutron clang).
GCC Version: This variant is built using the baremetal GNU C Compiler (GCC) (or eva GCC).
What is the difference between these?
It is just a compiler difference. It boils down to the optimisations applied via the compiler to the C that would yield a real-life difference. I provide both the clang and gcc version to give users a choice. At the end of the day, it depends on your own usage, and the kernel shall provide you the best user experience out of the box with both clang and GCC.
How do I install this kernel?
Firstly, backup your boot, vendor_boot and dtbo partitions. The kernel only modifies these partitions and in case if the kernel fails to boot (which it won't), you can just restore the 3 partitions or flash full ota of your custom rom to get back to previous working state.
To flash the kernel:
You can use TWRP or any other custom recovery and flash it just as any other flashable zip.
This kernel also supports flashing using custom kernel managers like FKM etc.
Downloads
Grab the Kernel from my GitHub Releases!
Note: Only download the zip according to your device codename:
OnePlus 9/9 Pro: eva-lemonade-xxx
OnePlus 9RT: eva-martini-xxx
Realme GT Master: eva-lunaa-xxx
Beta Testing
If you are interested in testing my kernel, join my Telegram Channel (and discussion through the channel) which posts automated builds.
Source Code: GitHub
Like my work?
Buy me a beer!
Sponsor me on my GitHub!
Special Thanks to @Sherif Rahim @SugaCRX @rk134 for testing out the kernel!
Changelogs
21 April 2023
Latest upstream (5.4.241)
Latest Android Security bulletin merged (ASB-2023-04-05_11-5.4)
Samsung RMNET extension for better network throughput
Fixed double tap to wake on OnePlus 9
Fixed userspace irq balance crashes
Buffer allocation optimisations
Clang builds are now built with Polly Optimisations
18 May 2023
Latest upstream (5.4.243)
Latest Android Security bulletin merged (ASB-2023-05-05_11-5.4)
Latest QSSI14 CLO upstream (LA.UM.9.14.r1-21600-LAHAINA.QSSI14.0)
Latest exFAT driver updates
Improved fingerprint sensor drivers
Support for ROMs using OSS HWC
Upgraded GCC to 14.x
Kernel is now optimized for performance using -O3
Improve drains caused due to IPA (Mobile Network)
22 May 2023
Fixed usb issues
Fixed battery drain due to USB wakelock stuck
Bess Karamel Vaai
wao best kranul
Awesome karamel
flashed on latest nameless, haptics are ded will attach logs after testing it more
. thx for this great kernel. and you have my deepest support
KingMonkeyDLuffy said:
flashed on latest nameless, haptics are ded will attach logs after testing it more
. thx for this great kernel. and you have my deepest support
Click to expand...
Click to collapse
That's strange. It must be some nameless side change.
m_vaisakh said:
That's strange. It must be some nameless side change.
Click to expand...
Click to collapse
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
Mar-cel said:
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
View attachment 5881169
Click to expand...
Click to collapse
I've discussed it with Chandu and he said he'll update the ROM to support the haptics.
Pero kernel dev.
m_vaisakh said:
he'll update
Click to expand...
Click to collapse
any fixes before update? miss vibration so much
rawello said:
any fixes before update? miss vibration so much
Click to expand...
Click to collapse
Well, the problem is, if I fix it for nameless, it'll break for every other rom. So you'll have to wait until chandu pushes a new update for nameless.
Or if you can force the device to be permissive selinux it may work (I do not recommend doing that).
m_vaisakh said:
устройство будет разрешенным selinux, это может сработать (я не думаю, что это нужно делать).
Click to expand...
Click to collapse
let's try)
m_vaisakh said:
permissive selinux
Click to expand...
Click to collapse
so, its work, thanks! wait Chandu nameless update
Mar-cel said:
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
View attachment 5881169
Click to expand...
Click to collapse
Only haptics are broken? I test for Nameless, I'll flash the kernel if haptics are the only issue.
I'm unable to join the telegram group for some reason
Has anyone else tried this kernel on the latest Nameless? I've seen here that haptics are broken but that doesn't bother me. Is anything else broken? Should I use GCC or Clang version?
itsnebulalol said:
doesn't bother
Click to expand...
Click to collapse
bear in mind, any vibration(notification vibration, haptic, alarm vibration) does not work
Ryano89 said:
Only haptics are broken? I test for Nameless, I'll flash the kernel if haptics are the only issue.
Click to expand...
Click to collapse
I couldn't find anything else
Mar-cel said:
I couldn't find anything else
Click to expand...
Click to collapse
Thanks. I flashed the gcc version on lemonade through EXKM and was stuck in fastboot on Nameless. Easily got booted with my backup. I'll try Clang version later
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
eva kernel is a custom kernel based on OnePlus 9/9 Pro and Oplus android-13 sources with some under the hood optimisations and improvements. This kernel aims to provide a flash-and-use experience and is not intended to be tuned or modified by the user. There are a few key features to this kernel that improves the overall experience which includes several compiler optimisations, minimal debug code and production level stability.
This custom kernel only supports Android 13 based custom roms that use the OxygenOS 13 firmware. OxygenOS/ColorOS/RealmeUI android versions 11/12/13 are unsupported as of now (maybe supported in future if I find testers).
Features of the kernel includes:
Bleeding Edge Toolchains: The Eva Kernel is built using two custom toolchains: eva GCC and Neutron Clang. Both the toolchains are bleeding edge with new compiler optimisations and features being merged into them.
MGLRU Backport: MGLRU is a memory management algorithm that's used to improve the performance of systems with limited memory. The Eva Kernel has MGLRU backported, allowing it to take advantage of this feature and improve performance on devices with less RAM. MGLRU allows the kernel to use memory more efficiently and avoid swapping to disk, resulting in better performance and faster response times.
Full GCC LTO and clang thin LTO: GCC LTO (Link-Time Optimization) and clang thin LTO are compiler optimizations that can improve code generation and reduce the size of the resulting binary. By building the kernel with both of these optimizations, the Eva Kernel achieves better performance and a smaller size. LTO works by analyzing the code at compile time and performing optimization at the link stage. This results in more efficient code generation and better performance.
Graphite Optimizations (GCC variant only): Graphite Optimizations is a set of optimizations that improve the performance of code by allowing the compiler to better understand the relationships between different parts of the code. The Eva Kernel includes this feature for those who are fans of it (GCC variant only). Graphite Optimizations work by analyzing the code and identifying patterns and relationships between different parts of the code. The compiler can then use this information to generate more efficient code.
Fully Upstreamed to Latest Linux Upstream Source: The kernel is fully upstreamed to the latest linux upstream source. This means that it's up to date with the latest security patches and features, and should be compatible with the latest version of Android. Upstreaming means that the kernel is based on the latest stable release of the Linux kernel and includes all the latest security patches and bug fixes.
Fully Up to Date with Android Security Bulletin: The kernel is fully up to date with the latest Android Security Bulletin, ensuring that your device is as secure as possible. The Android Security Bulletin is a monthly release that includes security updates for the Android operating system. The Eva Kernel is updated to include all the latest security patches and fixes.
Battery Optimisations: The kernel employs power efficient workqueues that enable the kernel to run specific workqueues in a power efficient manner in order to reduce power consumption and increase battery life. Power hungry drivers are those that consume a lot of power, such as the WiFi driver, and audio driver.
Tracing free: The Eva Kernel has removed the CONFIG_TRACING kernel configuration option, resulting in a slight performance improvement. CONFIG_TRACING is a kernel configuration option that enables kernel tracing, which can be useful for debugging purposes. However, it can also have a slight impact on performance.
Built on CI: The kernel is built on a Continuous Integration (CI) system, which ensures that it's built consistently and reliably. CI is a process that automatically builds, tests, and deploys code changes. By building the kernel on a CI system, the Eva Kernel is built in a controlled and automated environment, which reduces the risk of human error and ensures that each build is consistent and reliable. This also makes it easier to maintain and update the kernel over time.
GCC PGO (GCC Variant only): The Eva Kernel is built with GCC PGO (Profile Guided Optimization), which is a compiler optimization technique that uses profiling information to improve code generation. GCC PGO works by collecting profiling information about the kernel during a test run and then using that information to optimize the code during the next build. This can result in better performance and a smaller binary size.
No Modules: The support for modules has been dropped from the kernel to improve security. This can potentially avoid malicious modules being loaded into the kernel.
And many more to come with subsequent updates!
eva kernel has 2 variants available for user choice:
Clang Version: This variant is built using the bleeding LLVM toolchain (Neutron clang).
GCC Version: This variant is built using the baremetal GNU C Compiler (GCC) (or eva GCC).
What is the difference between these?
It is just a compiler difference. It boils down to the optimisations applied via the compiler to the C that would yield a real-life difference. I provide both the clang and gcc version to give users a choice. At the end of the day, it depends on your own usage, and the kernel shall provide you the best user experience out of the box with both clang and GCC.
How do I install this kernel?
Firstly, backup your boot, vendor_boot and dtbo partitions. The kernel only modifies these partitions and in case if the kernel fails to boot (which it won't), you can just restore the 3 partitions or flash full ota of your custom rom to get back to previous working state.
To flash the kernel:
You can use TWRP or any other custom recovery and flash it just as any other flashable zip.
This kernel also supports flashing using custom kernel managers like FKM etc.
Downloads
Grab the Kernel from my GitHub Releases!
Note: Only download the zip according to your device codename:
OnePlus 9/9 Pro: eva-lemonade-xxx
OnePlus 9RT: eva-martini-xxx
Realme GT Master: eva-lunaa-xxx
Beta Testing
If you are interested in testing my kernel, join my Telegram Channel (and discussion through the channel) which posts automated builds.
Source Code: GitHub
Like my work?
Buy me a beer!
Sponsor me on my GitHub!
Special Thanks to @Sherif Rahim @SugaCRX @rk134 for testing out the kernel!
Changelogs
21 April 2023
Latest upstream (5.4.241)
Latest Android Security bulletin merged (ASB-2023-04-05_11-5.4)
Samsung RMNET extension for better network throughput
Fixed double tap to wake on OnePlus 9
Fixed userspace irq balance crashes
Buffer allocation optimisations
Clang builds are now built with Polly Optimisations
18 May 2023
Latest upstream (5.4.243)
Latest Android Security bulletin merged (ASB-2023-05-05_11-5.4)
Latest QSSI14 CLO upstream (LA.UM.9.14.r1-21600-LAHAINA.QSSI14.0)
Latest exFAT driver updates
Improved fingerprint sensor drivers
Support for ROMs using OSS HWC
Upgraded GCC to 14.x
Kernel is now optimized for performance using -O3
Improve drains caused due to IPA (Mobile Network)
22 May 2023
Fixed usb issues
Fixed battery drain due to USB wakelock stuck
Bess Karamel Vaai
wao best kranul
Awesome karamel
flashed on latest nameless, haptics are ded will attach logs after testing it more
. thx for this great kernel. and you have my deepest support
KingMonkeyDLuffy said:
flashed on latest nameless, haptics are ded will attach logs after testing it more
. thx for this great kernel. and you have my deepest support
Click to expand...
Click to collapse
That's strange. It must be some nameless side change.
m_vaisakh said:
That's strange. It must be some nameless side change.
Click to expand...
Click to collapse
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
Mar-cel said:
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
View attachment 5881169
Click to expand...
Click to collapse
I've discussed it with Chandu and he said he'll update the ROM to support the haptics.
Pero kernel dev.
m_vaisakh said:
he'll update
Click to expand...
Click to collapse
any fixes before update? miss vibration so much
rawello said:
any fixes before update? miss vibration so much
Click to expand...
Click to collapse
Well, the problem is, if I fix it for nameless, it'll break for every other rom. So you'll have to wait until chandu pushes a new update for nameless.
Or if you can force the device to be permissive selinux it may work (I do not recommend doing that).
m_vaisakh said:
устройство будет разрешенным selinux, это может сработать (я не думаю, что это нужно делать).
Click to expand...
Click to collapse
let's try)
m_vaisakh said:
permissive selinux
Click to expand...
Click to collapse
so, its work, thanks! wait Chandu nameless update
Mar-cel said:
Yes, haptics don't work unfortunately. I flashed the clang version on Nameless Rom.
View attachment 5881169
Click to expand...
Click to collapse
Only haptics are broken? I test for Nameless, I'll flash the kernel if haptics are the only issue.
I'm unable to join the telegram group for some reason
Has anyone else tried this kernel on the latest Nameless? I've seen here that haptics are broken but that doesn't bother me. Is anything else broken? Should I use GCC or Clang version?
itsnebulalol said:
doesn't bother
Click to expand...
Click to collapse
bear in mind, any vibration(notification vibration, haptic, alarm vibration) does not work
Ryano89 said:
Only haptics are broken? I test for Nameless, I'll flash the kernel if haptics are the only issue.
Click to expand...
Click to collapse
I couldn't find anything else
Mar-cel said:
I couldn't find anything else
Click to expand...
Click to collapse
Thanks. I flashed the gcc version on lemonade through EXKM and was stuck in fastboot on Nameless. Easily got booted with my backup. I'll try Clang version later