[Kernel][grus] Kowalski Kernel [ beta: XXX - stable: r1.9.3 ] - Xiaomi Mi 9 SE ROMs, Kernels, Recoveries, & Other

Ehm... hello everyone
Our phone is quite a little powerful beast, but Xiaomi really made a crappy job on optimizing it, right?
After unlocking the bootloader I felt the need to go back to my roots and get my hands dirty to fix the wrongs in the kernel they released. The phone felt slow and heavy, the battery barely lasted a day. I use my phone for my job and I need to be snappy, stable and last way more than a day. So I started tweaking, digging and experimenting and the result is this kernel that I'm releasing today, in an attempt to make our MI9SE a bit better for all those people who actually use this phone... as a phone...
This kernel is GSI / AOSP only. Don't flash it on Miui based roms unless you are suicidal or want to lose some features, in which case you're free to do as you please and I'm free to ignore your posts, right?
There will be, from time to time, experimental/unstable versions that I release for public testing (usually they're not harmful, but... ehm.... ok you get it) so watch out for the second post if you feel brave and want to be on the bleeding edge. Official kernels are released when the beta testing phase is done and 100% of the feedback is positive.
Don't ask for ETA or you'll be fish slapped... badly! Ignore this warning only in case a nasty bug slips in the release, then you can fish slap me
Ok, enough talk, let's get down to business now.
Features
* Compiled in release mode (all debug stripped)
* Removed all auditing
* Disabled modules support to avoid interference from Xiaomi vendor
* Battery friendly, performance aware
* DT2W support. If disabled the display and touchscreen will power down
* 3G modem small optimizations
* K-Lapse 5.0 support (thanks to tanish2k09 for this awesome piece of code)
* Flicker Reduction via heavily modified Exposure Adjustment module from Sony
* Boeffla Wakelock Blocker pre-configured to block most of the bad boys
* BFQ and CFQ I/O Schedulers
* Adreno Idler support (your gpu will thank me)
* Westwood TCP congestion algorithm enabled by default (and a lot more enabled)
* Support for NTFS (read only)
* Support for F2FS
* And loads more... yeah just ask or check my github
Q & A
Q: Battery !!! Why it's so baaaad ! My phone doesn't sleep !!!
A: Well, don't get it badly, it's not really my problem, is it ? 99.999% is an app you have installed that's preventing deep sleep... go ahead and install BetterBatteryStats, check the Partial Wakelocks and se what's killing your phone. Have fun
Q: App X crashes ! OMG all my data is gone !!!
A: Read again on top, not my fault, sorry. I try my best to give out a stable kernel, but "**** happens" and i can't control it...
Q: I get tons of bsods, my phone doesn't wake up from sleep, it freezes and omg... it just exploded !!!
A: No dmesg / logcat, no party. And please don't post messages like those in the thread if you're not ready to attach a log to the post.
Q: When will you enable gpu overclock, road runner speed mode or wile e. coyote immortality ?
A: Never... on a second thought... maybe... who knows ?
Q: When will you release the new version ? It's a week we're using the old one !!
A: Is it stable ? Then please allow me to fish slap you with a huge trout !
Downloads
All downloads for Kowalski Kernel will be linked in the second post AND in the thread when a new version is released and a changelog will be filed accordingly.
The downloads are labeled as "kowalski-XY-grus" where X can be either "r" for release or "b" for beta. Y is the version number. Eg: kowalski-r1.4-grus is a release, while kowalski-b4-grus is a beta version.
Source will be pushed to my github about 2 or 3 days after a release (or before if I'm not careful), to make sure that no major bugs are introduced in the public repository. You can find the magic code here
This kernel can be compiled with any clang 4.9.x that supports the aarch64-linux-gnu target, so if you want to compile it by yourself you'll have either to build your own toolchain, or use one of the many prebuilt ones (for example from aosp).
Please don't rip-off my work. Please don't kang this kernel. Please don't c&p from my github without proper credit. I'm a nice guy, but i will report you.
Little code of conduct for my threads is necessary: no drama, no OT. Oh and please don't message me on Telegram privately when we have this awesome platform where everyone can benefit from the Q&A.
Thanks
* Okita for the awesome job she made on the base kernel cleanup (this kernel is based on one of her first releases)
* Linus, well, for the linux kernel
* francescod for taking the risks of testing possibly harmful pre-releases
* qualcomm, because codeaurora is awesome!
* osm0sis, the one who allowed us mortals to provide flashable kernels without pain
Oh, I was almost forgetting... on a side note... i'm not really responsible if you decide to test it and your phone melts... right ?
XDA:DevDB Information
Kowalski Kernel, Kernel for the Xiaomi Mi 9 SE
Contributors
pengus77, okitavera, francescod
Source Code: https://github.com/pengus77/kowalski-grus
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: r1.9.3
Stable Release Date: 2019-09-13
Created 2019-07-25
Last Updated 2019-09-13

Version 1.9.3 release - Download here
* Implement display idle states and expose sysfs nodes to manage them
* qcacld-3.0: Add sme_power_save_api.h include
* Add toggle for disabling newly added USB devices
* sched: don't allow userspace to boost at will
* defconfig: disable misc device and rework a bit
* kernel: implement vDSO64 and vDSO32
* spi: increase timeout to make FOD more reactive
* Bump Linux version to 4.9.192​
Version 1.9.1 release - Download here
* updated ion, binder and uapi apis to latest upstream versions
* backported schedutil governor from 4.14 with a subset of improvements tree-wide
* backported qcacld-3.0 from 4.14 msm nicobar tree and cleaned it up​
Version 1.8 release - Download here
* reverted the update to the latest wifi driver
* disable ssbd mitigations
* mm:compaction: raise priority
* kernel:sched:fair: align periods to our kernel config (100Hz)
* techpack:audio: remove compat code
* mmage-writeback: tune values for better memory handling
* kernel: nasty hack to bypass VTS/VINTF checks
* defconfig: disable AUDIT,PROFILING,TRACING and MORE...
* kernel: build with -O3 optimizations
* defconfig: re-enable BFQ as default scheduler
* block: add zen scheduler
* binfmt_elf.c: use get_random_int() to fix entropy depleting
* net/wireguard: add wireguard
* PM: devfreq: Use high priority workqueue
* cpuidle: don't disable cpuidle when entering suspend
* gpu:drm:msm: convert all pr_info into pr_debug​
* Version 1.7 release - Download here
* Merged Linux v4.9.189 from upstream​
* Version 1.6 release - Download here
* Merged Linux v4.9.188 into MSM base
* Fixed a few wifi issues
* Fixed a possible memory leak in the ext4 driver
* Limited zRam to 1GB
* Rewritten defaults for blu_schedutil with an eye on power saving
* Disabled spammy audit logs
* Stripped all symbols from the kernel (smaller, speedier)
* Reverted an old commit in F2FS that was considered harmful​
* Version 1.5 release - Download here
* Merged Linux v4.9.187 from upstream
* Fixed K-LAPSE upper bounds and drafted a "saner" default target
* Reinstated VTS / VINTF compliancy​
* Version 1.4 release - Download here
* Pretty much initial release with all the goodies from OP after a month of testing...​
All the kernel tweaks can be edited as usual with any kernel management app (EX, FK, etc...)
About the Flicker Reduction system, if your ROM doesn't support it or if you want to tweak it a bit and you feel adventurous, you can play with these sysfs endpoints
* /sys/devices/platform/soc/soc:qcom,[email protected]/msm_fb_ea_min (the minimum amount of exposure added)
* /sys/devices/platform/soc/soc:qcom,[email protected]/msm_fb_ea_enable (kinda self explanatory, isn't it? 1 = enabled, 0 = disabled)
* /sys/devices/platform/soc/soc:qcom,[email protected]/msm_fb_ea_elvss_off_treshold (the brightness threshold under which the system is enabled)

Wow, finally a full battery and features oriented kernel. Great to see it for our little beast. And with no Miui support
I hope you don't fall in modern famous useless stuff as Overclock/Overvolting Cpu-Gpu and Overclocking display. Grus doesn't need it at all, at least now.
I'd like to thank you of course, for all of your hard work done. It was a pleasure to help just a little with testing!
After many test of various configurations I've come to these stable settings useful only if you're searching for some more battery juice, so, no high demanding games at all! Performances on daily light use, seem to me like the same as with stock values.
Cpu Governor: Blu_Schedutil
Freq small cores: 576-1516MHz
Freq big cores: 300-1536MHz
wq_power_saving: enabled
Gpu Governor: Simple_ondemand
Freq: 180-267MHz
Adreno Idler: active (should work only on MsmAdreno Governor, but I like to see it enabled anyway)
I/O scheduler: Maple
Readahead 384kb
Fsync: disabled
Tcp congestion algorithm: bbr or westwood
To maximize even more the battery saving use black/dark grey apps as much as possible, use the right brightness, turn off any fancy features as AOD, FOD, AmbientDisplay, PocketMode, every unused sensors, install AdAway, Greenify, use 2G when in Wi-Fi or 2G/3G/4G on mobile connection and pray for someone :cyclops:
All of these settings are fine on my device with my personal use and my personal apps, so, don't complain about bad behavior on your phone.

Which what GSI are you using your kernel? I'm on PE but it will be snappy to have your same experience... :fingers-crossed:

champagne66601 said:
Which what GSI are you using your kernel? I'm on PE but it will be snappy to have your same experience... :fingers-crossed:
Click to expand...
Click to collapse
Hey there, at the moment I'm on Floko because I need stability. Using it with latest xiaomi.eu vendor/firmware blobs and all is good so far
I know people using this on crDroid or Havok and no problems or issues are known so far.

Stupid question: What is different / advantage against Okita kernel?
I'm glad to see new and new kernels and ROMs for 9 SE. Thank you @pengus77

Does it work in miui rooms? Thanks

Fran Montero said:
Does it work in miui rooms? Thanks
Click to expand...
Click to collapse
Read the OP.

vecino said:
Stupid question: What is different / advantage against Okita kernel?
Click to expand...
Click to collapse
This is a fully debloated Kernel from Miui/useless/redundant stuff, so, for an only custom roms lover as me, it's perfect.
K-Lapse, Adreno Idler, unlocked frequencies and flickering reduction are the main visible points, with ofc more under the hood. I left OkitaKernel when it was perhaps on v4 build, so check it out what's changed recently on it.
While they're born from the same base, each Dev makes own customization, so it's up to you to try them both and choose the one who satisfies you better.
Finally I wanna thank again @okitavera for her dedication. Probably without her kernel I wouldn't have bought the 9 SE so fast :highfive:

@pengus77
I flashed your kernel ... is it working but after every restart I give this message: "Device has an internal problem. Contact the manufacturer for more information." Is it problém with firmware / vendor?

vecino said:
@pengus77
I flashed your kernel ... is it working but after every restart I give this message: "Device has an internal problem. Contact the manufacturer for more information." Is it problém with firmware / vendor?
Click to expand...
Click to collapse
Hi, yeah, it's absolutely normal and harmless. It's a standard thing Android *****es about on GSIs when the kernel is too "stripped" and can't neither debug it nor load modules and/or there is a mismatch between system and vendor props. Search for that message in XDA and you'll see that tons of people have the same "issue". It's nothing to worry about, the system will work just fine.
Some ROMs are more strict than others. I know Floko says that, while Havok doesn't.

Roger that - I will be keep testing.

Testing on havoc
Enviado desde mi MI 9 SE mediante Tapatalk

Kernel have in default min 576 MHz - is it so intentionally? Otika was 300 MHz if I'm not wrong. Doesn't this have a negative effect on higher consumption?

vecino said:
Kernel have in default min 576 MHz - is it so intentionally? Otika was 300 MHz if I'm not wrong. Doesn't this have a negative effect on higher consumption?
Click to expand...
Click to collapse
It's just the default to keep it a bit more responsive. Little technical explanation follows: When the phone is in suspend, the cores are disabled and the cpu goes in low power state, so the frequency doesn't really matter. When in active use, the energy and time required to reach a target frequency (when boosting on touch for example) is pretty high. Having a tiny higher min frequency actually lowers the power needed when a boost is required and the time to reach the target frequency is lower. When idling the energy consumption between 576 and 300 is basically the same and doesn't impact the battery life.
Of course the frequencies are unlocked, so you can set it back down to 300 if you feel more comfortable with it

Beta Release [ b1.5a ]
In the releases page on my github (and in the second post) I just pushed a little beta release.
Thanks @fereidooni for finding out a nasty bug occurring during hard memory copy operations .Will fix it soon, in the meantime ignore this version.
Changes:
* Adopted a drastically more power-efficient and reduced IOMMU implementation (your battery will say thank you)
* Cleaned up a few things (this will never end I think... sigh...)
* Disabled the MSM Performance min frequency override. Now YOU decide, not qualcomm.
Have fun

pengus77 said:
In the releases page on my github (and in the second post) I just pushed a little beta release.
Changes:
* Adopted a drastically more power-efficient and reduced IOMMU implementation (your battery will say thank you)
* Cleaned up a few things (this will never end I think... sigh...)
* Disabled the MSM Performance min frequency override. Now YOU decide, not qualcomm.
Have fun
Click to expand...
Click to collapse
Hi
I tried this version
Any video playing cause phone restarted
Thanks for your work

fereidooni said:
Hi
I tried this version
Any video playing cause phone restarted
Thanks for your work
Click to expand...
Click to collapse
Wow thanks mate, an adventurous soul that tested a beta version... gotta love this people
Anyway, just confirmed the problem and will soon get to fix it. In the meantime use the stable version if you want. It should be safe

pengus77 said:
Wow thanks mate, an adventurous soul that tested a beta version... gotta love this people
Anyway, just confirmed the problem and will soon get to fix it. In the meantime use the stable version if you want. It should be safe
Click to expand...
Click to collapse
Thanks mate
Sure I'm using stable version

I am using beta about 10 hors and I had only one problem with UI FC but after wipe cache and dalvik is all ok.

Related

TamCore kernel [07.10.2012] [Linux Kernel 3.0.45]

Tamcore Kernel​PS: This is not my kernel, i'm just in touch with Tamcore and we thought to do this thread on XDA to have a place to talk about it. You can thank me for making this thread happen, but 99.9% of the "thanks" should go to TamCore for the excellent work he does ​What is the linux kernel ?
The Linux kernel is the operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software.[8]
The Linux kernel is released under the GNU General Public License version 2 (GPLv2) (plus some firmware images with various non-free licenses), and is developed by contributors worldwide. Day-to-day development discussions take place on the Linux kernel mailing list.
The Linux kernel was initially conceived and created by Finnish computer science student Linus Torvalds in 1991. Linux rapidly accumulated developers and users who adapted code from other free software projects for use with the new operating system. The Linux kernel has received contributions from thousands of programmers. Many Linux distributions have been released based upon the Linux kernel.
Click to expand...
Click to collapse
Why should I use Tamcore Kernel instead of my current one ? (i. e. stock CM9 kernel)
* new governors
* `- lazy, badassV2, lagfree, pegasusq, adaptive, smartassV2 & intellidemand
* new I/O Schedulers
* `- V(R), BFQ, SIO
* undervolted per default
* OC up to 1994 (may damage your phone!)
* modified min/max voltages (700000-1450000)
* thermald and mpdecision built-in (thanks showp1984!)
* USB forced fast charge by Yank555-lu
* FSync Control by Ezekeel
* Wifi Screen-Off Power Management by Francisco Franco
* Notification LED duration mod by Yank555-lu
* Sweep2Wake
* ZRAM & TUN built as modules
* user configurable GPU OC (GPU is stock clocked at [email protected] & [email protected]
* updated to the last linux kernel upstream
* cause I tell you to do that. FLASH IT, FLASH IT !
Click to expand...
Click to collapse
This kernel is meant for AOSP ICS 4.03 & 4.0.4 ROM. This may work on JB AOSP ROM but it’s not recommended.​
Changelog
07.10.2012
* 35fe303 (Philipp 'TamCore' B) Merge tag 'v3.0.45' into exp
* 24e842a (Greg Kroah-Hartman) Linux 3.0.45
* d71df54 (Bart Van Assche) SCSI: scsi_dh_alua: Enable STPG for unavailable ports
* 8fda079 (Dan Williams) SCSI: scsi_remove_target: fix softlockup regression on hot remove
* fc3ef18 (Yinghai Lu) PCI: honor child buses add_size in hot plug configuration
* 368d531 (Avi Kivity) x86/alternatives: Fix p6 nops on non-modular kernels
* 42cc576 (Dan Williams) isci: fix isci_pci_probe() generates warning on efi failure path
* 7385895 (Bart Van Assche) IB/srp: Avoid having aborted requests hang
* 7846edb (Bart Van Assche) IB/srp: Fix use-after-free in srp_reset_req()
* 0a44207 (Patrick McHardy) IPoIB: Fix use-after-free of multicast object
* d125a7e (Wei Yongjun) can: mscan-mpc5xxx: fix return value check in mpc512x_can_get_clock()
* c07ad5e (Stephen M. Cameron) SCSI: hpsa: Use LUN reset instead of target reset
* a3b1f83 (Benjamin Herrenschmidt) SCSI: ibmvscsi: Fix host config length field overflow
* 079c1ed (Artem Bityutskiy) UBI: fix autoresize handling in R/O mode
* e54195a (Russ Gorby) n_gsm: memory leak in uplink error path
* a4e92d2 (Michael Spang) Increase XHCI suspend timeout to 16ms
* 7c36d46 (Denys Vlasenko) coredump: prevent double-free on an error path in core dumper
* 9ce5f86 (Russ Gorby) n_gsm: added interlocking for gsm_data_lock for certain code paths
* 9c1ce83 (Sarah Sharp) xhci: Intel Panther Point BEI quirk.
* c19d52a (Khalid Aziz) firmware: Add missing attributes to EFI variable attribute print out from sysfs
* f39a3e8 (Larry Finger) b43legacy: Fix crash on unload when firmware not available
* d482e8f (Flavio Leitner) serial: set correct baud_base for EXSYS EX-41092 Dual 16950
* f580d51 (Linus Walleij) serial: pl011: handle corruption at high clock speeds
* 63959b0 (Jiri Slaby) TTY: ttyprintk, don't touch behind tty->write_buf
* 0950902 (Stanislav Kozina) Remove BUG_ON from n_tty_read()
* 8455d77 (Ian Abbott) staging: comedi: fix memory leak for saved channel list
* 03acba6 (Ian Abbott) staging: comedi: don't dereference user memory for INSN_INTTRIG
* e451b6d (Ian Abbott) staging: comedi: jr3_pci: fix iomem dereference
* 99f7fee (Ian Abbott) staging: comedi: s626: don't dereference insn->data
* bf26fa2 (Ben Hutchings) staging: speakup_soft: Fix reading of init string
* bd6a0fa (Bjørn Mork) USB: qcaux: add Pantech vendor class match
* 3f72cbc (Antonio Ospite) USB: ftdi_sio: add TIAO USB Multi-Protocol Adapter (TUMPA) support
* 952c5d8 (Bjørn Mork) USB: option: blacklist QMI interface on ZTE MF683
* 7da444a (Mike Snitzer) dm: handle requests beyond end of device instead of using BUG_ON
* d2212d2 (Miklos Szeredi) vfs: dcache: fix deadlock in tree traversal
Click to expand...
Click to collapse
Can you explain me CPU governors ? Sure!
LAG FREE
* Lagfree is similar to ondemand. Main difference is it's optimization
* to become more battery friendly. Frequency is gracefully decreased and
* increased, unlike ondemand which jumps to 100% too often. Lagfree does not
* skip any frequency step while scaling up or down. Remember that if there's
* a requirement for sudden burst of power, lagfree can not satisfy that since
* it has to raise cpu through each higher frequency step from current. Some users
* report that video playback using lagfree stutters a little.
INTELLIDEMAND
* Intellidemand aka Intelligent Ondemand from Faux is yet another governor that's
* based on ondemand. Unlike what some usersbelieve, this governor is not the
* replacement for OC Daemon (Having different governors for sleep and awake). The
* original intellidemand behaves differently according to GPU usage. When GPU is
* really busy (gaming, maps, benchmarking, etc) intellidemand behaves like ondemand.
* When GPU is 'idling' (or moderately busy), intellidemand limits max frequency to
* a step depending on frequencies available in your device/kernel for saving battery.
* This is called browsing mode.
SMARTASS V2
* Is a re-working of the original smartass governor, it allows for the CPU to scale
* through all frequencies from the lowest you set to the highest, based on the load
* occuring. Basically it scales CPU based on realtime needs of the system, saV2
* supposedly incorporates some more agressive settings for screen off, and I
* believe quicker scaling than the original smartass.
PEGASUSQ
* http://forum.xda-developers.com/showpost.php?p=24233103&postcount=3
* Maybe someone could write a short summary of this?
ADAPTIVE
* Haven't found anything about it. It's from Intel and hasn't burned up my Sensation.
BADASS
From Showp himself :
Well good question. With ICS I decided to rework my gb badass which never got released because it was always pushed aside. To break down what it is:
Badass removes all of this "fast peaking" to the max frequency. On a typical system the cpu won't go above 918Mhz and therefore stay cool and will use less power. To trigger a frequency increase, the system must run a bit @ 918Mhz with high load, then the frequency is bumped to 1188Mhz. If that is still not enough the governor gives you full throttle. (this transition should not take longer than 1-2 seconds, depending on the load your system is experiencing)
Badass will also take the gpu load into consideration. If the gpu is moderately busy it will bypass the above check and clock the cpu with 1188Mhz. If the gpu is crushed under load, badass will lift the restrictions to the cpu.
Please remember: Due to it's nature, this is not a benchmark governor. It is meant as a governor that gives you a smooth experience while saving battery, lots of it
Click to expand...
Click to collapse
What are those scheduler you nerds are talking about ?
bfq
* The BFQ I/O scheduler tries to distribute bandwidth among
* all processes according to their weights.
* It aims at distributing the bandwidth as desired, independently of
* the disk parameters and with any workload. It also tries to
* guarantee low latency to interactive and soft real-time
* applications. If compiled built-in (saying Y here), BFQ can
* be configured to support hierarchical scheduling.
sio
* The Simple I/O scheduler is an extremely simple scheduler,
* based on noop and deadline, that relies on deadlines to
* ensure fairness. The algorithm does not do any sorting but
* basic merging, trying to keep a minimum overhead. It is aimed
* mainly for aleatory access devices (eg: flash devices).
Click to expand...
Click to collapse
Some informations about the tweaks in the kernel
--- USB forced fast charge - Yank555-lu ---
Use sysfs interface to change behaviour :
* /sys/kernel/fast_charge/force_fast_charge (rw)
*
* 0 - disabled (default)
* 1 - substitute AC to USB charging always
* 2 - substitute AC to USB charging only if no USB peripheral is detected
For informational purposes I've also added a read-only sysfs file that indicates the current USB state :
* /sys/kernel/fast_charge/USB_peripheral_detected (ro)
*
* The state will be returned in clear text (Yes/No).
For informational purposes I've also added a read-only sysfs file that indicates the detected USB port type :
* /sys/kernel/fast_charge/USB_porttype_detected (ro)
*
* The port type will be returned in clear text.
For informational purposes I've also added a read-only sysfs file that indicates if fast charge is currently being forced :
* /sys/kernel/fast_charge/is_fast_charge_forced (ro)
*
* The current force state will be returned in clear text (Yes/No).
--- FSync Control - Ezekeel ---
Can be used to disable the fsync system calls for single files and filesystems (echo 0 > /sys/class/misc/fsynccontrol/fsync_enabled). These fsync syscalls are used by kernel modules and user space programs to flush an I/O buffer (which is in RAM) to disk to make sure that this data is actually savely stored on the disk before executing the next step. Disabling fsync can result in data loss on a crash/freeze since the data is still in the I/O buffer and has not been saved to disk as it should be and can also lead to problems due to race conditions if two or more processes access the same file. On the other hand disabling fsync reduces the number of I/O operations which potentially could reduce the battery drain and also improve I/O performance.
--- Wifi Screen-Off Power Management - Francisco Franco ---
This gives you the option to choose between PM_FAST and PM_MAX when your screen is off.
Normally the kernel uses PM_FAST only if the screen is on. But when the screen turns off, it switches to PM_MAX, which slows the wifi down to save battery.
But this can affect streaming applications (i.e. music). Which will result in lower quality audio or disconnects.
echo X > /sys/module/bcmdhd/parameters/wifi_pm
X can be 0 or 1. 0 (default) sets it to PM_MAX, and 1 sets it to PM_FAST.
--- Notification LED duration mod - Yank555-lu ---
* /sys/kernel/notification_leds/off_timer_multiplier (rw)
*
* 0 - Notification LED will blink forever until cleared by user
* 1 - Notification LED will blink as requested by app or until cleared by user (default)
* 2 to 255 - Notification LED will blink as requested by app multiplied by value or until cleared by user
Click to expand...
Click to collapse
Wanna play with GPU overclock ? Alright!
Go look here : http://files.tamcore.eu/android/tamcore-kernel/GPU_OC.txt
What is the default configuration ? Good question my friend.
* Min freq : 192Mhz
* Max freq : 1.18Ghz
* Governor : Badass
* I/O Scheduler : sio
* GPU : Stock HTC Sense ROM freq
Click to expand...
Click to collapse
TL;DR : TamCore Kernel
DOWNLOAD LINK : http://files.tamcore.eu/android/?dir=tamcore-kernel
Credit
Vorbeth, faux123, showp1984, intervigilium & Sc2k. Slap me if I forgot to mention you
Sent from my HTC Sensation Z710e using Tapatalk 2
Thank you !
Might want to put the kernel link for tamcore source xD
Sent from my Sensation
blahbl4hblah said:
Might want to put the kernel link for tamcore source xD
Sent from my Sensation
Click to expand...
Click to collapse
Oh well, i shouldn't do thread like this when i'm at work lol, i will fix this a bit later
EDIT: I was so proud of my clean thread OP :'( lol
Thank you Bluewall! We can now discuss TamCore's kernel on its own thread.
Thanks for creating this thread Now the kids (and the more intelligent people) got a place to talk
Sent from my Nexus 7 using Tapatalk 2
There was a 3.0.43 version put on Tamcore's download site a while back with no descriptors or changes listed.
Was that much different than the 3.0.42 that works so very well? Was it just a test or something? I've been wondering what the deal with that was.
anyone using this on bruces?
Skipjacks said:
There was a 3.0.43 version put on Tamcore's download site a while back with no descriptors or changes listed.
Was that much different than the 3.0.42 that works so very well? Was it just a test or something? I've been wondering what the deal with that was.
Click to expand...
Click to collapse
The 3.0.43 had some problem, big wakelock sucking your battery
bstylz911 said:
anyone using this on bruces?
Click to expand...
Click to collapse
It should work. But I'll rebase my kernel someday to intervigil's because his is "more aosp" than faux'.
But the problem is, my todo list is too long and my time is too short.
- (a great) business idea (includes much coding..)
- real life..
- OS2 (both Sensation and Nexus 7; but N7 already has a fully working build)
- TamCore-Kernel rebase
You guys should always keep in mind, that the real life always has priority, because it's the place were most of us earn their money
TamCore said:
It should work. But I'll rebase my kernel someday to intervigil's because his is "more aosp" than faux'.
But the problem is, my todo list is too long and my time is too short.
- (a great) business idea (includes much coding..)
- real life..
- OS2 (both Sensation and Nexus 7; but N7 already has a fully working build)
- TamCore-Kernel rebase
You guys should always keep in mind, that the real life always has priority, because it's the place were most of us earn their money
Click to expand...
Click to collapse
would it run stable though?
bstylz911 said:
would it run stable though?
Click to expand...
Click to collapse
Try it and tell us.
bstylz911 said:
would it run stable though?
Click to expand...
Click to collapse
It does.
wifi not working
TamCore said:
It should work. But I'll rebase my kernel someday to intervigil's because his is "more aosp" than faux'.
But the problem is, my todo list is too long and my time is too short.
- (a great) business idea (includes much coding..)
- real life..
- OS2 (both Sensation and Nexus 7; but N7 already has a fully working build)
- TamCore-Kernel rebase
You guys should always keep in mind, that the real life always has priority, because it's the place were most of us earn their money
Click to expand...
Click to collapse
the wifi is not working on your latest kernel 745
adame09 said:
the wifi is not working on your latest kernel 745
Click to expand...
Click to collapse
Update is out. I should drink less coffee and get more sleep
TamCore said:
Update is out. I should drink less coffee and get more sleep
Click to expand...
Click to collapse
More caffeine, sleep is for the weak!
You are human (unfortunately), so every now and then something slips between the cracks.
I got a shut down near 40% battery left today. Plugged it in to the charger, and the battery was fully drained. This always happens to me when using faux sense kernels, or faux based AOSP kernels like this one :-\
And if I reboot open sensation, I get a 20-25% more in the battery reading, even though it is having less juice than the readings.
Anyone has gotten this problem too? Happens with my 3 batteries (2 ankers and HTC original)
been using the kernel for half some hours.
seems very stable, great battery life, and no lag during gameplay.
using intellidemand
Kernel updated guys!
updated OP too
Changelog
* 708ce81 (Philipp 'TamCore' B) Revert "releasetools: make sure that bcmdhd is loaded before trying to change its parameters"
* Linux upstream 3.0.43
Click to expand...
Click to collapse

[H850,H830,RS988] mk2000 Kernel [STOCK]

THANKS:​
shminer: For his repository
eoghan2t7: For his repository
Mentalmuso: For his repository
savoca: For the invaluable KCAL
USA-RedDragon: For his repository
nathanchance: For his pre-merged sources
TheCrazyLex: And developers of AOSPA, grabbed lots from there
emdroidle: For his work with rooting, and kernel patches
eng.stk: For his blu_active governor, and inspiration
frap129: For his Maple scheduler, and repository
alucard_24: For his governor, and G5 repository
franciscofranco: For his many kernel patches
Lord Boeffla: For his Wakelock Blocker etc
sultanxda: For his many kernel patches
warBeard_actual: For his VM tweaks
neobuddy89: State notifier etc
arter97: Adreno idler etc
flar2: Adreno boost etc
And other's I probably forgot
Previous Versions:​
Features:
1.4 Nougat
Linux 3.18.85
KCAL - Screen panel control.
ElementalX and Zzmoove CPU governors.
Modules signed and secure, as in stock rom.
Disable software CRC checking of SD Card - More performance.
CRC32 and CHACHA20 HW ACC, CRNG based on CHACHA20.
Many patches that improves or fixes things.
Maple I/O scheduler.
LZ4 compression.
RCTD removed.
1.5 Nougat
Linux 3.18.92
KCAL - Screen panel control
Alucard, and blue_active (by eng.stk) Governors
Integrated Virtual Memory tweaks (war_mod) and Blu_active settings into ramdisk
Many work-queues converted to *system_power_efficient_wq*
Patches from CAF mostly, to various subsystems
Support for UAC2 external DAC
Boeffla Wakelock Blocker
Maple I/O scheduler
Adrenoboost
On/Off Fsync
Adreno Idler
1.5.5 Nougat
Linux 3.18.97
KCAL - Screen panel control
blu_active (by eng.stk) cpu governor
Integrated memory tweaks (war_mod), and blu_active settings into ramdisk
Many threads converted to *system_power_efficient_wq*
Toggle USB2 900mA Fast-Charge
Support for UAC2 external DAC
Toggle HiFi mode on/off *
Maple I/O scheduler
Toggle Fsync on/off
Adreno Boost
Adreno Idler
WireGuard
* /sys/kernel/hifi_mode/enable_hifi_mode "1" = enable
- WCD9335 HiFi mode not enabled by default in LG source. This toggle will enable it on the fly.
Download: AndroidFileHost
Anyone is free to include it in their ROM as they like
Compiled with GCC 9.1.1
[2.2] Features:
Linux 3.18.140
SultanXDA's CPU Boost
KCAL - Screen panel control
Backported kernel improvements
Toggle USB2 900mA Fast-Charge
Boeffla Dynamic Sync Control
Boeffla Wake-Lock Blocker
Various patches and fixes
RCTD/Triton disabled
Maple I/O scheduler
DriveDroid support
Modules disabled
WireGuard
K-Lapse
Download: Oreo G5 Folder
The (AnyKernel2) flashable zip will flash kernel as well as /system/lib/modules. If you want to go back you should backup modules as well
Sources:
https://github.com/stendro/msm8996_lge_kernel
LGH830SV_LGH830TN_Android_Oreo_v30c.zip - From http://opensource.lge.com
Questions
Q: Will this work on newer bootloaders?
A: It should. The kernel is based on the most recent of LG sources.
Q: What control app do you suggest using?
A: I suggest using SmartPack, or EX Kernel Manager.
Q: Where can I donate? I want to donate!!
A: I don't accept donations because of two reasons. One: I don't really need it. Two: I like the idea of this being totally free, it adds to the enjoyability of the kernel.
Q: I'm having some problems with kernel not working or booting?
A: If you have downgraded your bootloader (i.e by flashing Asgard kernel first) then that is likely why. My kernel works on new firmware, not exactly sure how far back the compatibility goes.
Q: I flashed this zip in recovery, but it didn't seem to work, I'm still on my old kernel. What can I do?
A: With AnyKernel you shouldn't need to re-flash ROOT after flashing kernel (if already installed, if not, do it before flashing kernel). SuperSu has been known to revert the kernel install if you do so.
Q: OK so I just rooted my phone and installed this, and OMGOSH! so excited, now what do I do - do I tweake-dy freak out huh huh? How do I do it??
A: Put simply, don't do anything. I don't know how things where in the past, but now you don't need to do anything. Not with this kernel anyhow. Such thing are better discussed in a separate thread anyway.
Thanks for your work. Tested your kernel with H850 and Fulmics 4.5. Works well but bluetooth isn't working, it's not possible to activate.
Returned with backup to stock.
Best regards
mkpcxxl
mkpcxxl said:
Works well but bluetooth isn't working, it's not possible to activate.
Click to expand...
Click to collapse
Thank you for your report. How silly of me, I forgot to test bluetooth since I never use that.
I'll see about uploading a fixed version soon.
Version 0.8 is up.
askermk2000 said:
Version 0.8 is up.
Click to expand...
Click to collapse
Flashed and now bluetooth is working.
Thanks again for your work.
I am sorry, but where can I find the source code for this kernel? If it is one of github links, which of them is the one?
dadittoz said:
I am sorry, but where can I find the source code for this kernel? If it is one of github links, which of them is the one?
Click to expand...
Click to collapse
I'm sorry too, but when I started this project, I did it in the only way I know (and what seemed simplest to me) and that is to do stuff manually. I don't have experience with github or any elaborate development tools, heck I hardly know how to do this stuff, but I'm learning more and more.
I can upload the latest source in zip if that is satisfactory.
Sorry if this breaks xda rules, but I'm sure I've seen other projects not having their full, direct sources posted.
askermk2000 said:
I'm sorry too, but when I started this project, I did it in the only way I know (and what seemed simplest to me) and that is to do stuff manually. I don't have experience with github or any elaborate development tools, heck I hardly know how to do this stuff, but I'm learning more and more.
I can upload the latest source in zip if that is satisfactory.
Sorry if this breaks xda rules, but I'm sure I've seen other projects not having their full, direct sources posted.
Click to expand...
Click to collapse
Well, as far as I know GPL requires sources to be published. But it's not that I brag about complying to licenses. I am genuinely interested in changes made. I enjoy reading @eoghan2t7 commits on his kernel tree every few days. As for me, I am not really interested in a single zip Version control systems are awesome and it would be great if your kernel tree could use it.
dadittoz said:
Well, as far as I know GPL requires sources to be published. But it's not that I brag about complying to licenses. I am genuinely interested in changes made. I enjoy reading @eoghan2t7 commits on his kernel tree every few days. As for me, I am not really interested in a single zip Version control systems are awesome and it would be great if your kernel tree could use it.
Click to expand...
Click to collapse
Yes, as I got further into this project I figured it would be better to open a qithub account next time.
So I'll probably do that with the next major source drop from LG.
Flashed in fulmics 4.5, running fine so far. I will report battery life, thanks for your job!
Enviado desde mi LG-H850 mediante Tapatalk
.
battery life is not quite as good
Nick cutter said:
battery life is not quite as good
Click to expand...
Click to collapse
I think you might be right.
May be a problem or conflict with cpu hotplug. I will look into it.
that sounds good but otherwise a great kernel keep it up :good:
Tha.ks for this great kernel. Only two flaws so far: Battery and overheating.
Can you upload your fully kernel source ?
GPL
Nick cutter said:
battery life is not quite as good
Click to expand...
Click to collapse
Hadi99 said:
Tha.ks for this great kernel. Only two flaws so far: Battery and overheating.
Click to expand...
Click to collapse
Hm, don't have this problems, Battery is like stock and temps are normal.
I remember I've had overheating with Asgard kernel.
Regards
mkpcxxl
@walter79
Link added to first post. Bottom.
mkpcxxl said:
Hm, don't have this problems, Battery is like stock and temps are normal.
I remember I've had overheating with Asgard kernel.
Regards
mkpcxxl
Click to expand...
Click to collapse
Temps are alot more stable right now, but battery life is still horrible for me.
Asgard did indeed have overheating in versions 5.x, but since then it had been fixed
Version 1.0
Super excited about this one
Compiled with gnu11, graphite, O3 and other optimizations. Most of them was borrowed from @jahlex D.O.T.S Kernel (Thanks!) - but gnu11 was my idea. I really don't know if is good to do or not, but hey...
It's been tested "adequately" I'd say. But that probably means inadequate in most tongues, however, I like to take few risks and gamble every now and then
Performance seems very much increased, battery as well.
Added Maple i/o
Alucard and Zzmoove (bLE) governors
Fixed small omissions here and there
Maple is default IO (was initially going for FIOPS), since that hooks into "display_state" making it aware of screen on/off.
Zzmoove is default cpu governor. Alucard could not be set as default at build time - kernel would not boot
I've added a zip to fix lg bootup script in /system/etc - it, amongs other things, sets *interactive* governor as default
Hotplugging characteristics can be customized.
May it serve you all well!

arter97 Pie Software Collection for the Mi Pad 4

{
"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"
}
arter97 Pie Software Collection for the Mi Pad 4​
/* Summary */
Stock software stack on this Mi Pad 4 is horrendous and full of retarded junks top to bottom.
This is a project to replace most of the software stack on the Mi Pad 4.
This is done by reworking the entire kernel and the vendor image, and providing a custom TWRP recovery with f2fs support.
Please read the entire post to get an idea how to use as this ain’t like other ROMs/kernels on this forum.
(Please don’t quote this entire post and spam the thread.)
/* System */
You may use Android Pie-based GSI images. Oreo is not supported. MIUI is obviously not supported. (Are you f***ing serious?) Compatibilities between other source-built ROMs targeting clover(Mi Pad 4) specifically is not guaranteed and most likely to cause issues.
You can also use Paranoid Android for Mi Pad 4, which is recommended for best performance.
/* Kernel */
The kernel is fully rebased to the latest Pie CAF tag, which is a different base from the stock Oreo CAF tag, not to mention most of Xiaomi’s ultra-poor-quality codes are gone.
- To mitigate the horrendous touch latency, numerous touch panel optimizations were made.
- Mi Pad 4 is using eMMC instead of UFS. Numerous changes were made to improve its performance including the enforcement of f2fs filesystem and optimizations to CFQ I/O scheduler.
- 3/4 GB of RAM is quite insufficient these days. zram is activated with updated LZ4 compression algorithm to provide a better memory management along side revamped lowmemorykiller.
- Touch boost is set aggressively due to the reality of most ROMs lacking QPerformance. This improves responsiveness.
- Kernel module support is disabled to make it a bit lighter.
- WireGuard is supported.
- Automatically sets correct Android version and security level to prevent booting issues caused by keymaster.
- Double-tap-to-wake is enabled by default.
- A whole lot more that I forgot.
/* Vendor */
For the best compatibility with Pie ROMs, Pie vendor must be used. To make this happen, the entire vendor firmware is ported from the Mi A2. This process took me weeks to debug and make it stable to this point.
Since this is the only one of its kind on the Mi Pad 4, the software experience with this vendor image will be quite different from other ROMs.
Also, an overlay is integrated to give the correct corner overlay for rounded corners.
Unfortunately, it’s not bug-free, but way beyond usable. Bugs will be listed below.
/* Recovery */
As I said, f2fs is enforced. Reason for this will be explained below.
You must format your userdata partition(erasing everything on the device) to f2fs before using this project.
You cannot use existing TWRP for 2 reasons:
a) The TWRP kernel won’t support f2fs.
b) TWRP’s mkfs.f2fs tool is outdated.
A custom TWRP is also provided, powered by my kernel and the latest mkfs.f2fs tool. You must use it to format /data to f2fs before using this project.
/* Harmony */
The whole kernel and the vendor image is meant to be used together. If you mix one another(e.g. using my kernel on other vendor image or vice versa), you will definitely encounter issues. Please don’t.
To make the experience consistent and since you’re locked with the kernel/vendor combination anyways, I decided to force f2fs. Please be extremely cautious when you want to test out other kernels that claims to support f2fs. If the f2fs version isn’t inline with my kernel, you may experience random panics, or even worse - data corruption.
It’s extremely recommended for you to wipe the entire /data back to ext4 if you want to switch from using this project.
/* Instructions */
You must be familiar with fastboot.
- Download kernel, vendor and TWRP from the link below.
*.img.xz is for fastboot. Extract the .xz files before feeding it to fastboot. *.zip is for TWRP.
- Download an Android Pie based GSI of your choosing.
- Flash kernel by ‘fastboot flash boot /path/to/kernel/image’.
- Flash TWRP by ‘fastboot flash recovery /path/to/recovery/image’.
- Flash vendor by ‘fastboot flash vendor /path/to/vendor/image’. This process will take about 5 minutes(it took 275 seconds for me).
- Enter TWRP by ‘fastboot boot /path/to/recovery/image’.
- Do ‘Wipe > Format Data’. This will automatically wipe to f2fs.
- Follow the instructions you got from the GSI ROM developer and flash system image.
- Reboot.
- Leave feedback.
Note about Magisk
Due to a (supposed) Magisk bug with f2fs. You must flash Magisk after the first initial setup to avoid memory leaks(which ultimately causes the kernel to shutdown). After Magisk is installed, reboot again after confirming Magisk Manager is installed.
/* Disclaimer */
Your warranty is now void.
I am not responsible for bricked devices, dead SD cards, thermonuclear war, or you getting fired because the alarm app failed. Please do some research if you have any concerns about features included in this project before flashing it! YOU are choosing to make these modifications, and if you point the finger at me for messing up your device, I will laugh at you. Hard. A lot.
/* Warning */
I won’t be granting permissions to redistribute or extract files from this project to serve others, without actually contributing something to this project.
You will be reported to XDA forum moderators.
Making mirrors, re-uploading to another servers are also prohibited with no exceptions.
/* Thanks to */
TheCrazyLex
xboxfanj
joshuous
jjajjaroni - for reporting bugs ahead of public release
nathanchance - for android-linux-stable
/* Downloads and links */
arter97.com
Kernel source
XDA:DevDB Information
arter97 Pie Software Collection for the Mi Pad 4, ROM for the Xiaomi Mi Pad 4
Contributors
arter97
ROM OS Version: 9.x Pie
Version Information
Status: Beta
Created 2019-01-13
Last Updated 2019-03-07
/* Bugs */
- Phone calls won't work
- Fingerprint sensor and GPS on the Mi Pad 4 Plus doesn't work
- For the Wi-Fi variant, the device may get confused and think it’s a phone. Not a big deal.
- Didn’t notice anything else.
/* Changelog */
20190810
This update is made with Paranoid Android in mind.
Go checkout the updated Paranoid Android thread.
Vendor image:
Base firmware updated from V10.0.8.0.PDIMIXM to V10.0.10.0.PDIMIXM
Camera hacks removed and reworked to fix camera on many ROMs
Kernel:
Fixed a commit mismerge that broke deep-sleep
Linux v4.4.188 merged
Wi-Fi drivers updated to 5.1.1.73Q
Bunch of memory allocations from various subsystems were reworked to perform much better (thanks to Sultan)
32-bit vDSO added for improving performance on arm32 programs
Backported speculative page fault to improve system performance
Latest f2fs-stable merged
Switched to zswap/vnswap approach
- Ditched conventional zram swap approach and taken zswap+vnswap for more efficient memory operations
- Backported zsmalloc memory allocator from mainline
- Backported zswap compressed page cache from mainline
- Samsung's Galaxy S9 memory modifications merged for better swapping efficiency tuned for Android
- This new kernel's memory management will be drastically different from existing kernels
20190428
Vendor image:
Base firmware updated from V10.0.1.0.PDIMIFJ to V10.0.8.0.PDIMIXM
Added missing goodix touch firmware
General LTE network stability improvements
Kernel:
Various changes from Proton kernel by kdrag0n
- Use flatmem to save kernel memory usage
- Use optimized memcmp
- Optimize rbtree
- Disable erratum 843419 properly
- Delay vmstat updating interval to avoid jitter
- Disable I/O stat accounting completely for lower overheads
- Reverted a cpuidle change for possible fix for power consumption regression during sleep
- Faster crypto algorithms ported(chacha20, sha2, crc32)
A bit lower power consumption by using WFE for long delays
Add accelerated crc32 routines
Use -O3 for input drivers for avoiding overheads
Various changes made to f2fs rapid GC to make it more efficient
dirty_expire_centisecs set to 30 seconds to reduce flash wearouts and power consumption
Various changes merged from the Razer Phone 2 and Snapdragon 855
Kernel is now built with -O3 optimization flag
Use CONFIG_HZ = 300
- This changes context switching interval from 10ms to 3.33ms
- Pixel used this for years and Google recommends other vendors to do the same for fewer jitters
Removed RTB(interrupt) logging entirely
Wi-Fi drivers updated to 5.1.1.71C
Linux v4.4.179 merged
ExFAT support added(ROM-side support required too)
Idle power consumption improved
Camera drivers stability improved
LA.UM.7.2.r1-06700-sdm660.0 merged
LV.HB.1.1.5-10310-8x96.0 merged
LA.HB.1.1.8-03910-8x96.0 merged
20190223
Fixed an issue causing kernel panics to enter dump mode
Fixed a f2fs merge durp causing issues from the recovery and potentially long-term performance on daily usage
RWSEM priority-aware enhancement merged from CAF
Added CIFS(SMB) support (requested by @currowth)
LA.HB.1.1.5-11310-8x96.0 merged (some minor bug fixes)
20190221
Paranoid Android breakage from 20190128 fixed
A totally new kernel base merged - LV.HB.1.1.5-10010-8x96.0
- Total of 471 commits and about 20,000 lines of code difference
- A lot has changed ranging from scheduler, memory management, GPU and panel handling, MMC device driver, ION, audio subsystem, cpuidle, binder and a whole lot more
Kernel configuration fixed for proper scheduler operation
Background Wi-Fi HAL scanning issue fixed
LA.UM.7.2.r1-05900-sdm660.0 merged
Linux v4.4.175 merged
Mainline f2fs fixes merged
WireGuard updated to 20190123
seccomp disabled in favor of less system-call overheads
Minor issue with f2fs rapid GC fixed
IRQ balancer settings updated to include MMC and USB interrupts for better overall smoothness
20190128
Bunch of stuffs missed from previous port were applied
Fixed video recording
Booting issues fixed for ROMs with 2019 security patch level
MTP fixed
Wi-Fi drivers' inconsistencies fixed
Merged Linux 4.4.172
Enabled ULPS for lower power consumption
Merged several changes from Sultan's kernel
- GPU performance improved with corrected priority
- Faster display wake-up
- Lower power consumption
20190123
Fixed an error causing Wi-Fi to not function for some users
Merged Linux 4.4.171
Disabled MMC SPI CRC for better eMMC performance
Removed brightness remapper to fix adaptive brightness
Compiler updated to GCC 2019.01
20190114
Initial release
/* Fundraiser */
After consulting with 2 forum moderators, I got a clarification that fundraiser is acceptable with some terms like transparency and a rough timeline.
A fundraiser is opened for me to purchase a Mi Pad 4 Plus LTE. This particular variant was chosen since it's extremely likely for me to make Mi Pad 4 non-Plus LTE and Mi Pad 4 Plus Wi-Fi model supported during the process.
Within a month after the goal is met and the device is shipped, I'll work to make the current kernel and vendor image working on the Mi Pad 4 Plus LTE. After this is done, I anticipate other variants to be supported as well. In the unlikely event that it ends up otherwise, I'll work on some members on the community to get logs and test. It'll be way easier then since both LTE and fingerprint sensor will be working on my project.
While I will try my best to keep up with my goal, do note that it is entirely possible that it could not be done(which is extremely unlikely). You're making a donation after all. Just note that donation doesn't give you rights to force me to do anything with the received device.
The price for the lowest end Mi Pad 4 Plus LTE seems to be around $295 with a seller that would actually use DHL for shipment, which is required as the standard Ali-Express shipping usually takes 20~30 days.
There's another 10% importing tax in Korea on top of $295 which would make the total around $330. I've opened a fundraiser for $350 to avoid possible headaches like PayPal and bank's fee for withdrawing the money back to my credit card.
With that said, here's a fundraiser's link.
You can see the progress of the fundraiser as well.
https://fundrazr.com/81RpR8
Reserved
Reserved 4
This device took an enormous amount of my time that it clearly didn't deserve.
Thanks!
To my knowledge Mipad4 will someday get MIUI Pie. Does that effect the vendor then or are you already decided sticking with ported one?
stunned said:
Thanks!
To my knowledge Mipad4 will someday get MIUI Pie. Does that effect the vendor then or are you already decided sticking with ported one?
Click to expand...
Click to collapse
I'm certain that general experience will be still better with mine even after Mi Pad 4 gets official Pie release.
It'll allow me to fix some bugs though.
Thanks arter. That is why I made a small donation to u knowing that u were working on clover.
Hope more people do the same to keep the motivation alive!
P.S. very nice thread title ?
@arter97 few bugs i found
1)wifi seems to be broken, it's turning off by itself and can't find any networks. (broken on both PA & pixelexp GSI)
2)file transfer broken, only charging is permitted, it keeps going back to charging only (able to test only on PA, on Pixel experience GSI, cant get pass the WIFI set up)
arter97 said:
And since the vendor image is rebased, this means anything other than what I’ve used is not supported.
Mi Pad 4 LTE, Mi Pad 4 Plus, Mi Pad 4 Plus LTE model is not supported. Only Mi Pad 4 Wi-Fi model is supported.
Click to expand...
Click to collapse
Hope you will have time and possibility to support mi pad 4 plus version in near future nice done.
Thank you for you work with this (weird) device!
- Performance seems to be so so good, at least for now, the touch latency also seems to be better.
- Wifi is stable for now (It didn't work on the first boot, but I rebooted and it worked).
- File transfer works randomly for me (I'm trying to get logs and dmesg right now).
And just a little of OT: What do you think about zstd? I was using that algorithm with a flash kernel in Taimen and, in my humble opinion, it works very well, maybe it's a placebo, but I think multitasking was a little better.
PS: best post name evear, lol.
onliner said:
Thank you for you work with this (weird) device!
- Performance seems to be so so good, at least for now, the touch latency also seems to be better.
- Wifi is stable for now (It didn't work on the first boot, but I rebooted and it worked).
- File transfer works randomly for me (I'm trying to get logs and dmesg right now).
And just a little of OT: What do you think about zstd? I was using that algorithm with a flash kernel in Taimen and, in my humble opinion, it works very well, maybe it's a placebo, but I think multitasking was a little better.
PS: best post name evear, lol.
Click to expand...
Click to collapse
I am stucked.
onliner said:
Thank you for you work with this (weird) device!
- Performance seems to be so so good, at least for now, the touch latency also seems to be better.
- Wifi is stable for now (It didn't work on the first boot, but I rebooted and it worked).
- File transfer works randomly for me (I'm trying to get logs and dmesg right now).
And just a little of OT: What do you think about zstd? I was using that algorithm with a flash kernel in Taimen and, in my humble opinion, it works very well, maybe it's a placebo, but I think multitasking was a little better.
PS: best post name evear, lol.
Click to expand...
Click to collapse
zstd is ratio oriented algorithm. lz4 is speed and latency oriented algorithm.
Unless you're really starving on memory like Samsung, using zstd for swap is a really bad idea.
For those having Wi-Fi issues, I need an actual logs to debug the issue.
I have 2 devices on my hand and neither of them have an issue with Wi-Fi, alongside 5 other testers.
arter97 said:
For those having Wi-Fi issues, I need an actual logs to debug the issue.
I have 2 devices on my hand and neither of them have an issue with Wi-Fi, alongside 5 other testers.
Click to expand...
Click to collapse
there you go arter, if you need other specific logs let me know
xzr3b0rnzx said:
there you go arter, if you need other specific logs let me know
Click to expand...
Click to collapse
mac adress is read from wrong path and thats why it fails
Thanks very much for this brilliant project
Waiting for mi pad 4 lte
rcstar6696 said:
mac adress is read from wrong path and thats why it fails
Click to expand...
Click to collapse
i didnt alter anything, what should i do to solve this?
@arter97 you're a legend bro, great job. One thing I noticed is that adaptive brightness fails in pitch dark room. The screen stays completely dark. Other than that everything else works great.

[Kernel][03.07.2022][Android 12] Kirisakura 2.0.0_S for Asus Rog Phone 3 aka OBIWAN

Kirisakura-Kernel for the Rog Phone 3
Hello everyone,
To keep it short: Here is Kirisakura - Kernel for the Rog Phone 3 aka OBIWAN.
I would appreciate if everybody that flashes the kernel, reads at least once through this opening post and the following ones.
Kirisakura - Kernel is designed to bring a handful of beneficial features to the device, while ensuring excellent performance and smoothness to get you safely through the day!
This project aims to keep most of the subsystems updated, way ahead of the stock kernel, thereby improving security and performance, while keeping stability as the foucs during testing! This includes Linux-Stable, CAF-Upstream and kernel/common.
Kernel Control Flow Integrity (Kernel-CFI), which is achieved by linking the kernel with LLD and Link Time Optimization (LTO), more precisely ThinLTO, are quite unique security features. In fact this, alongside Kirisakura-Kernel for the OnePlus 8 Pro, may be (and probably is) the first 4.19 msm kernel with a fully working Kernel-CFI implementation and CFI-Violations fixed on a smartphone.
The only kernels made by OEMs offering this security feature are the ones for the Pixel 3 and Pixel 4 devices.
The recently released Kirisakura-Kernel for the OnePlus 8 Pro was featured on the XDA-Portal due to the inclusion of CFI. The featured article explains CFI in great details, is easy to understand and definitely worth to read.
Another security feature is Shadow Call Stack (SCS). Similar to CFI, only the Pixle 3 and 4 Kernel use this security feature.
SCS is another security patchset that is aimed at preventing attacks via return oriented programming (ROP).
ROP is a technique where the attacker gains control of the kernel stack to overwrite function return addresses and redirect execution to carefully selected parts of existing kernel code.
If you´re interested here are a few good links:
Google Security Blog explaining SCS.
LLVM doc about SCS
Android DOCs documenting SCS
If reading about upstream in the paragraph above got you curious,have a read about Linux-Stable and why it is important here. The stable-process is not the same for every subsystem, but the general idea, rule of thumb and benefits are applicable for other subsystems as well.
Quick explanation of CAF-Upstream. CAF is short for Codeaurora-Forums. This is the place where development from Qualcomm for their SoCs happens. This includes the Snapdragon 865/+ that´s built into the different SKUs of the Rog Phone 3.
The kernel-bases available on the Codeaurora-Forums, are basically the foundations OEMs use, to build their own kernel additions on top for devices featuring Qualcomm SoCs.
The Qualcomm developers push regular updates to the bases of the different SoCs, a bit similar to how Linux-Upstream works. OEMs usually stop updating the initial base after the phone is released.
This kernel focuses amongst the other features to provide the latest CAF-Updates merged in a regular manner, to provide updates, improvements and enhancements for SoC specific drivers and subsystems! This might take a while, because a lot of device specific testing is done on my end to ensure stability.
The kernel includes a lot of improvements and contributions from other developers as well. Without this kernel would not exist.
I´d like to mention @tbalden ´s excellent CleanSlate features at this place. They improve usability by a big margin for me personally. The highly customizable sweep to sleep implementation (adjustable to different navigation settings), long tap to bring down status bar (very useful on a big device), backlight dimmer and notification reminder are very useful features that I use personally every day.
Another big part of improvements originate from @arter97´s, @kdrag0n´s and @Sultanxda´s work. Many others contributed in some way or another to this kernel.
A big thanks to all of them at this place!
Now lets continue with a list of features in the next paragraph!
Main Features:
- Based on latest kernel sources from Asus for Android 12 and intended for use on the latest Asus Stock-Firmware
- compiled with Clang 13.0.1 and built with -O3 speed optimizations
- Linux-Stable-Upstream included to 4.19.240
- CAF base for the Snapdragon 865/+ (SD865/+) updated to upstream CAF
- Kernel Control-Flow-Integration (CFI) andLink-Time-Optimization (LTO) ported from 4.19 kernel/common and Pixel 4/XL Kernel
- Shadow Call Stack (SCS) Security-Feature
- Use ThinLTO which was first used in the Pixel 4 XL Android R-Preview Kernel instead of full LTO for full program visibility (needed by CFI)
- fix CFI-Violations found in various subsystems like Asus/device specific drivers and qualcomm drivers
- Link the kernel with LLD and use RELR-Relocation
- include important fixes/improvements from kernel/common
- Flashing the kernel will keep root!
- Cleanslate Features included! See @tbaldens´s CleanSlate Thread for more information
- Flashable via EXKM, FKM or TWRP on a rooted system!
- Anykernel zip is based on the Anykernel3 release from @osm0sis
- disable various debugging configs, that are not needed in a perf build kernel according to google.
- disable selinux auditing (we don´t have to adress selinux denials running a stock rom)
- display tweaks to reduce power consumption on statically rendered images
- tweak display to allow better visibility of black levels/colours on low brightness ( example pictures )
- allow experimental 165hz refresh rate for the panel. (use with caution)
EAS related features:
- EAS implementation patched up to latest CAF state
- disable autogroups and use cgroups for more efficient task placement!
- updates from kernel/common
- scheduler updates from Googles Pixel kernel
CPU related features:
- Change various drivers (WLAN, MM, audio, charger, power, thermal, glink etc) to user power efficient workingqueues. This compliments EAS
- include cpuidle patches from CAF
- improvements to cpufreq/times/stats
- improve memory allocations in binder driver
- use s2idle for deepsleep, as pixel 4/5
- vdso32 patches as found on Google Pixel devices (brief documentation here)
- enable lse atomics
- arm64: lse: Prefetch operands to speed up atomic operations, thanks @kdrag0n
- implement fast refcount checking
GPU related features:
- GPU driver updated to latest CAF-State
- remove POPP functionality from GPU driver to avoid constant fight about downscaling with msm-adreno-tz
- don´t wake the gpu on touch input, instead wake when receiving an ioctl
- don´t copy fence names by default to save a bit of cpu-time (explanation)
- msm: kgsl: Stop slab shrinker when no more pages can be reclaimed
- gpu/kgsl improvements from pixel 4/pixel 5 kernel
File System related features:
- improve memory allocations in sdcardfs
- improve eventpoll logging to stop indicting timerfd (improves kernel wakelock readability)
- improve memory allocations in kernfs
- writeback: hardcode dirty_expire_centisecs=3000 based on this commit
- f2fs-stable upstream, that includes ATGC
- ufs improvements from pixel 4/ pixel 5 kernel
UI/UX/Usability related features from CleanSlate:
- CleanSlate features made by @tbalden
- Disclaimer: All CleanSlate features can be controlled via the free companion and config app found on CleanSlate thread here on the ROG 3 Forums on XDA. Please consider buying the premium versions if you enjoy using the CleanSlate features, to give a little something back to @tbalden.
- Flashlight Notification/Call blinking
- Vibrating Notification Reminder
- Sweep to Sleep touchscreen gesture - highly customizable
- DoubleTap on Sweep2Sleep's area gestures - new way to pull down android Notification Area
- Face down screen off - new gesture
- Backlight Dimmer - possibility to use lower panel brightness
- Force FPS Level on Low Brightness
- Squeeze Control
- advanced notification LED control, chromatic charge LED, pulsating LED, LED dimming
Network related features:
- Wireguard Support (Details)
- advanced TCP algorithms enabled
- includes new bbr and bbr2
- fix CVE-2020-14386
Memory related features:
- Speculative Page Faults left enabled (1. 2) (CAF default)
- various fixes for PSI-Monitor, which is used by the userspace lowmemorykiller-daemon
- Fix various memory leaks in different subsystems
- improved mm with patches from mainline
- various other changes from mainline
- included zstd as an option for ZRAM-algorithm (lz4 is probably the best all around, so only change it if you know why and what you are doing)
- improve memory allocations in various subsystems
- ported per process reclaim from Pixel 5 kernel, instead of using outdated CAF implemenation
Security related features:
- Control-Flow-Integration (CFI) and Link-Time-Optimization (LTO) ported from 4.19 kernel/common and Pixel 4/XL Kernel
- Use ThinLTO which was first used in the Pixel 4 XL Android R-Kernel instead of full LTO
- Shadow Call Stack (SCS) Security-Feature
- fix various CFI-Violations found in various subsystems like Asus/device specific drivers and qualcomm drivers
- enable init_on_alloc for even more security, more information can be found in the commit message
- Backport mainline Selinux commits, thanks @arter97 (you must be on magisk 21.0, otherwise the kernel won´t boot)
Misc Features:
TCP Congestion Algorithms:
- advanced algorithms enabled, enable them with your favorite kernel manager
- includes new bbr2
Wakelock Blocker:
- advanced wakelock blocker with the ability to block any wakelocks (dangerous, use with caution)
- please read [URL="https://arstechnica.com/gadgets/2018/08/p-is-for-power-how-google-tests-tracks-and-improves-android-battery-life/"]this for further info
- blocking a kernel wakelock should only be done in case of firmware incompatabilities (WiFi network at work (can´t be changed) causes deep sleep to not work on the phone.) That´s the only use case I see for this feature. The kernel does not features this to improve battery life!
Other features:
- disable logging and debugging to make the kernel more lightweight in various places (includes binder, mm, vma, gpu, ipa etc)
- fix several coding issues detected by newer Clang-Toolchains
- add support for steam controller
- add support for nintendo switch controller
- ufs improvements from pixel 4/ pixel 5 kernel
- gpu/kgsl improvements from pixel 4/pixel 5 kernel
- display tweaks to reduce power consumption on statically rendered images
Feature section for the "non visible" but perceptible improvements:
- updated binder section (responsible for interprocess communication)
- updated sdcardfs ; have a read about it here:
Flashing Guide, Download and Changelog
A description how to flash the kernel, links for download and a changelog can be found in the second post!
Contributors
Freak07
Source Code: https://github.com/freak07/Kirisakura_OBIWAN
Version Information
Status: Stable
Requirements
- unlocked Bootloader
- USB-Debugging in developer options enabled
- latest adb and fastboot binaries
- working adb and fastboot environment
- latest magisk stable root environment
- a backup of boot.img and dtbo.img to be able to restore to stock.
How to flash the Kernel:
1. Download the latest kernel.zip and make sure you have properly updated to the latest matching Asus Stock-Firmware. When the Rog 3 receives an update it takes Asus a while to release the source code for the new OS and me a while to build a new kernel. If you don´t want to face any issues, wait until I either release an updated kernel or give green light because there were no kernel changes.
Always make sure to run the firmware the kernel is built for!
1a. Optional: While it may not be necessary all times, you may want to restore stock boot.img as well as dtbo.img, re-root with magisk and optionally install twrp.zip if coming from another kernel. Before reporting issues make sure you do that! Thank you!
2. Make sure to meet all the requirements listed above.
3. Flash the kernel.zip via latest EXKM or FKM app, or TWRP and do a full reboot.
4. Reboot and profit. Set CleanSlate features as you desire by installing both apps and choose according to your liking.
DOWNLOAD:
Download is located always in this folder:
https://www.androidfilehost.com/?w=files&flid=316676
Important: Read after Download
Please take a look at the second post after flashing the kernel!
Changelog:
Android 10
1.0.0 Initial Release
1.0.1 https://forum.xda-developers.com/showpost.php?p=83393257&postcount=12
1.0.2 https://forum.xda-developers.com/showpost.php?p=83409591&postcount=28
1.1.7 https://forum.xda-developers.com/showpost.php?p=83518681&postcount=32
1.2.2 https://forum.xda-developers.com/showpost.php?p=83539471&postcount=33
1.2.3 https://forum.xda-developers.com/showpost.php?p=83552967&postcount=38
1.5.0 https://forum.xda-developers.com/showpost.php?p=83815367&postcount=74
1.8.2 https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-84199477
1.9.4 https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-84404331
2.1.0 https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-84693785
2.1.1 https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-84717725
2.2.0 https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-84752157
2.2.2 https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-84762283
2.2.4 https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-85029489
2.2.5 https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-85119205
Android 11
1.0.0_R https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-85434269
1.0.1_R https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-85437987
1.0.5_R https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-85540573
1.0.7_R https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-85797081
1.0.9_R https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-86238185
1.1.0_R https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-86428163
1.1.1_R https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-86444523
Android 12
2.0.0_S https://forum.xda-developers.com/t/...-rog-phone-3-aka-obiwan.4155505/post-87102871
Donations:
Donations are not mandatory but very welcome if you want to support development or just buy me a coffee/tea
If you like my work: http://paypal.me/freak07
Credits:
Asus for the development device, giving me the opportunity to create this project!
@osm0sis for all his work, including the ak3 installer!
@tbalden for being the best HTC, Pixel, OnePlus and now Asus wingman!
@LeeDroid and @mwilky for their awesome roms and work I used on multiple devices!
@Captain_Throwback for all the mentoring and guidance!
@Eliminater74 for bringing me into the game and the Inspiration
@nathanchance for his upstream guidance and assistance
@RenderBroken for helping me out
@flar2 for all his work
@joshuous for all the help he provided to me in the past!
@arter97 for giving me advice
@kdrag0n for his help and advices!
@topjohnwu for magisk!
FAQ
F.A.Q:
Question: Why does the kernel version show as "unavailable" in settings after flashing it.
Answer: Asus does not allow for custom kernel names in their settings. If the kernel string doesn´t fit their regex, it will display as unavailable there. Nothing can be done about it. Use a kernel manager to check the kernel version.
Question: Is root preserved when flashing this kernel?
Answer: Yes, the AnyKernel.zip will detect root and keep it.
Question: How do I return back to stock or another kernel.
Answer: Extract boot.img as well as dtbo.img from matching firmware you are on and flash the extracted boot.img and dtbo.img via fastboot. If you want to keep root flash back the magisk_patched_boot.img. Or dirty flash your rom.
Question: Why is having Magisk installed mandatory for this kernel?
Answer: Android 10s changes to partitions, doesn´t allow files in system/ and vendor/ to be replaced. This kernel is very far from the stock kernel. To account for this I can´t force load the stock kernel-modules for certain drivers as it happens on kernels that are closer to stock.
Instead we use Magisks function to overlay certain files during boot. Without a working Magisk environment the kernel cannot function.
Question: I have a phone that is converted from CN to WW and now there´s a warning from hardwarestub. Can I hide it?
Answer: Yes, I created a Magisk Module for those that want to hide the notification, so nobody needs to rely on paid apps.
The Magisk module can be found attached to this post.
Please note that refresh rate can´t be changed when the module is flashed. To able to change refresh rate or to remove the module, simple remove it in Magisk Manager and do a full reboot. I´ll attach it to the third post on this thread. There will be no support for this module from my side and no other support for converted devices.
Question: How to report bugs properly?
Answer: Have a look at post #3 in the linked thread. The linked guide is a pretty good starting point.
Before reporting any bug make sure you´re running on a stock configuration. That´s means you´re not using any mods, tweaks in kernel managers or other root tweaks , magisk modules, scripts or other modifications that alter various functions like sound mods, data traffic, sleeping behaviour, scheduler, magical battery tweaks etc.
Try to describe the issue as detailed as possible! Give your exact setup, like rom, magisk version, kernel version.
Is the issue reproducible? Does it happen frequently?
Provide logs, otherwise debugging is a lot harder. If you can already reproduce the issue and provide logs it greatly limits the amount of time I have to spent until I figure out how to reproduce it.
If the device force reboots/randomly reboots (that means you see the bootloader unlocked screen!) provide a .zip with the contents of sys/fs/pstore.
If the issue happens while the device is running provide a dmesg plus a logcat that you take while/shortly after the issue happens. This will log what´s running in the current session. Try to be as detailed as possible what´s happening when the issue appears. It will also help me in reading the log!
CleanSlate Features and how to use them
CleanSlate Features and how to use them
This kernels offers its users the possibility to use CleanSlate features. CleanSlate-Kernel is developed by @tbalden.
CleanSlate kernel follows a different approach than Kirisakura-Kernel.
We know each other well over the years now and often have worked together.
For more information about CleanSlate visit @tbaldens CleanSlate thread on the Rog 3 Forums linked here.
The CleanSlate features add a lot of flexibility to a device. That´s why I like to include the features in my kernel.
Notifications Reminder, Flashlight Notifications, Turn Phone to sleep and a very advanced sweep to sleep interface that works well with Android 10 Gestures.
We decided to transform Brightness Dimmer and FPS-Override into CleanSlate accessible features as well.
That allows users to easily control these features with the CleanSlate apps.
CleanSlate features are easily accessible via the CleanSlate Configuration app. The Cleanslate Companion app provides a userspace backend for the kernel and is required for some features.
Make sure to install both of these apps, when flashing my kernel and you want to utilize these features.
The apps ask for some permissions. Enable them and do a full reboot to make sure everything is playing nicely
that´s how the companion app will look after enabling it.
https://photos.app.goo.gl/x6sFJc5cUFT9Q7U47
It´s needed for userspace related features, like double tap swipe area for notification pull down.
Every section of the Configuration App has different settings. Basic, Advanced and Preset. You can click on these buttons to change between them.
Advanced will offer you more customization if available.
See the screenshots here:
https://photos.app.goo.gl/avPsiHHrzPwpMqMC8
To change settings, change them according to your liking and hit the "Save" Button. It is the second from the bottom right and will be greyed out if your settings are currently applied.
As you can see in the following screenshot:
https://photos.app.goo.gl/qaFKfLbfwUuyHW717
Brightness Dimmer is enabled, FPS override is set to 144FPS on low brightness. Power button is blocked in pocket and screen gets disabled when putting the phone face down on a desk.
You should be able to find both apps for free on the CleanSlate thread. However if you benefit from the features, think about getting the premium apps on the playstore to give a little bit back to @tbalden.
I hope this post might help some
Excellent! Keep it up
tbalden said:
Excellent! Keep it up
Click to expand...
Click to collapse
U aswell... Both of you keep up the great job
This is amazing, can't wait for the others to try and read their reviews..
just a small heads up before anybody complains.
We, @tbalden and me, just noticed a bug went unnoticed during our previous testing.
If you flashed this kernel or CleanSlate-Kernel, have the CleanSlate config app installed and Backlight dimmer enabled in the CleanSlate Config app. Make sure to keep the screen on for 3-4 minutes after rebooting your phone and the boot process finished.
Otherwise your screen will stay black. Display-Panel driver doesn´t seem to like our mod at the moment.
After keeping the screen on for 3-4 minutes the bug will not be triggered and you can use the phone as you wish.
Sorry for the inconvenience
The issue will soon be resolved in a new update
Freak07 said:
just a small heads up before anybody complains.
We, @tbalden and me, just noticed a bug went unnoticed during our previous testing.
If you flashed this kernel or CleanSlate-Kernel, have the CleanSlate config app installed and Backlight dimmer enabled in the CleanSlate Config app. Make sure to keep the screen on for 3-4 minutes after rebooting your phone and the boot process finished.
Otherwise your screen will stay black. Display-Panel driver doesn´t seem to like our mod at the moment.
After keeping the screen on for 3-4 minutes the bug will not be triggered and you can use the phone as you wish.
Sorry for the inconvenience
The issue will soon be resolved in a new update
Click to expand...
Click to collapse
Also just start the app manually on reboot, as a workaround.
Coming here from your OG Pixel kernel. Is this kernel for 2007.47 or 2007.32?
MrxSiN said:
Coming here from your OG Pixel kernel. Is this kernel for 2007.47 or 2007.32?
Click to expand...
Click to collapse
Nice to see you made the jump! Must be a hell of an upgrade on your side!
the .47 sources are merged. I´m using it on .47 at the moment.
I guess you can just give it a try and check if it boots/works on .32. If you decide to do so, it would be nice if you could report back here. It might help others
Make sure to have a PC with working fastboot environment nearby and a boot.img handy.
In case it doesn´t work, just force the phone to power down by holding power button plus volume down, once it powers off, keep holding power and volume up to boot to bootloader.
Connect to side port and flash your backup boot.img via fastboot. Always make sure to flash the matching boot.img for your firmware.
Hey guys and girls,
Here´s the fix that solves the black screen issue, that occurred when the screen was off while Brightness Dimmer got activated via CleanSlate Config App on boot.
It wasn´t detected immediately, because usually the screen of my device is on when I boot the phone as to check the logs and ensure everything is working
Now everything is working, so just flash the kernel and enjoy I´ll do a post soon, explaining the features a bit more for people unfamiliar with how the CleanSlate features work.
I´d advise everybody to read the instructions in the OP and follow them. They are written for a reason, because they ensure everything will be working as expected.
Kernel is made for the latest stock rom from Asus, you must update your phone to the most recent Asus update, before flashing the kernel.
Enjoy!
Changelog:
- Fix Screen not being able to wake up on a certain condition.
I wish you all a nice day/evening!
Download is below
Download:
Disclaimer/Important:
Kernel: https://www.androidfilehost.com/?fid=8889791610682925903
Instructions how to flash the kernel can be found in the OP!
But look at this post too
To make use of the CleanSlate features, like force FPS on Low Brightness or Brightness Dimmer you need to download both CleanSlate Apps:
Please take a look at the CleanSlate thread for CleanSlate features. I will provide the link to the free to download apps here.
If you use the CleanSlate features and benefit over time, maybe think about giving something back to @tbalden and purchase them from PlayStore.
CleanSlate Configuration App (to control the features):
https://www.androidfilehost.com/?fid=8889791610682925529
CleanSlate Companion App (provides additional information from userspace for CleanSlate Kernel features to work correctly)
https://www.androidfilehost.com/?fid=8889791610682925528
Have fun, enjoy the kernel and your phone.
If you like my work please consider a donation.
Donations are not mandatory but very welcome.
If you like my work and want to buy me a coffee/green tea: http://paypal.me/freak07
I'm using Tencent Version, but already fully converted to Global ROM. Updated from 32 to 47. Already flash your kernel. It's works.
MrxSiN said:
I'm using Tencent Version, but already fully converted to Global ROM. Updated from 32 to 47. Already flash your kernel. It's works.
Click to expand...
Click to collapse
So what's the difference after?
AldRezaine said:
So what's the difference after?
Click to expand...
Click to collapse
If you mean CN to Global ROM, Global has no China bloatware. If you mean 32 to 47, here the changelog from Asus website.
1.Added “Quick launch camera” option in System Settings->Advanced
2.Added “Navigation blocking” feature for Game Genie which disables system gesture operations to avoid accidental touches in games.
3.Improved multi-touch when three or more fingers simultaneously touch the screen in games.
4.Fixed a problem with insensitive multi-finger touch response when playing PUBG
AldRezaine said:
This is amazing, can't wait for the others to try and read their reviews..
Click to expand...
Click to collapse
AldRezaine said:
So what's the difference after?
Click to expand...
Click to collapse
Just to steer this a bit in the right direction. This isn´t directed towards anybody in particular it´s just a general reminder what this thread is about.
There is no need to review the kernel. The kernel offers exactly what is described in the first post of this thread.
My advice is to read the description in the OP. All changes are explained in great detail there. Look around XDA, most OPs are kept way shorter with less explanations.
If you´re not into technical details, use google when descriptions or terms are unclear to you.
This is primarily a development focused thread. That´s why it is in the development section.
If there are issues when using the kernel or its features, provide logs and I will be glad to help you. If there are questions or things unclear, ask and I will try to answer. But I expect people to put in a bit of effort.
If you expect a review like, flashing this kernel causes my phone to use more or less battery as the stock kernel, you may want to re-read the OP on what to expect. I generally don´t like to see this in my threads.
Just to give an example that a "review" will never be applicable to each user:
Everybody uses their phone different. So certain changes to the scheduler may benefit user A, while they don´t benefit user B.
There is no need for a review. Just flash the kernel and try for yourself.
It´s very easy and straightforward to flash the kernel. And it´s also easy to return back to the stock kernel. If you don´t like it describe your problem as detailed as possible, as pictured in the FAQ and I will take a look at it or consider it.
Usually post like: "this kernel reduces my battery life by xyz" will just be ignored
It´s covered in the FAQ how to do all of this.
This is also a general reminder to everyone Let´s keep this thread development related and I hope this will turn out to be a good project!
I´m really looking forward to it. This phone is an absolute beast and so far I really enjoy using it.
For people a bit unfamiliar how everything works I plan to soon post a little guide on how to use the CleanSlate features.
Have a nice day everybody.
Here´s a small tutorial for CleanSlate features:
https://forum.xda-developers.com/showpost.php?p=83387681&postcount=3
Hopefully it will help some, that are not yet familiar with these.
I wish everybody a nice weekend.
Amazing work. Low battery temp while fast charging. Now I can just leave my phone with 30w charger without worry.
Do you have Telegram Channel?
I thought its not working after i flash but suddenly all the features is needed an app CleanState Config/Companion i downloaded it and it works the 144hz in 0 brightness nice2. i will use this kernel as my daily bases.
I turn on the facedown to table to turnoff the screen or vibrate but its not working for me.
Edit: Its working btw there is a 1 sec delay after facedown so far so good.

[EOL][KERNEL][Snapdragon][ZyC Clang 17][GCC 13.0.1][Perf based kernel] klimbokernel

Code:
#include <std_disclaimer.h>
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM/Kernel
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/
introduction:
welcome to my kernel, here i provide you with unique stuff related to stability and performance like none seen in other kernels. my kernel brings new features never seen in any other kernel for s20fe, stability and performance is my motto
Instructions:
Assuming you have a custom recovery installed, simply download and flash the kernel zip. This kernel uses Anykernel 3 so no need to reflash magisk(if you use magisk) after installing it.
compiled with lasted ZyC clang 17
and beta build with GCC 13.0.1
S20 FE Modding group: https://t.me/S20FeModding
kernel group: https://t.me/klimbokernel
works on both models : G780G/G781B ONLY!!
kernel source
Downloads:
Google Drive
do you want to learn how to compile my kernel? look at my thread : https://forum.xda-developers.com/t/...el-for-s20-fe-snapdragon-may-28-2022.4451267/​
Changelog:
Klimbobuzz v2.7 changes :
compiler :
*compiled with latest clang 17.0.0
and beta build with GCC 13.0.1 klimbo is the first to relase with this gcc (you can find it in download at beta build folder)
*some compiler tweaks for more performance
*kernel renamed to KlimboBuzz
•GPU:
*OC UP TO 935MHz SUPER STABLE
*Optimized all GPU voltages. using only those that are most efficient at the temperature in general
*Adreno boost enable by default:
•CPU SCHEDULERS:
•Ondemand (default) tuned for more performance and less temperature
*fully removed schedutil (I think anyone using klimbo is looking for performance not a balanced kernel)
•CPU:
*Tuned cpu cores for more performance instead of battery savings
*A few more minimal optimizations that help sustain performance
*Change default thermal GOV to USER_SPACE (USER_SPACE Is a good thermal menager Because it reduces the throttling consequently benefiting for a considerable performance gain)
*Disable WQ Power efficient (WQ efficient is useless in a performance based kernel since when enabled It causes a loss of performance in Exchange for minimal battery
rest as in previous builds
Klimbokernel v5.0 features :
compiled with ZyC clang 16 (lasted)
-add and enable adreno boost
-added new I/O sched drivers like : ZEN, FIOPS, MAPLE, ANXIETY etc..
-more undervolt on GPU
-added and enabled new cpu governor : schedhorizon (the best for performance and battery)
-incrase armv8 timer 19.2MHz ~ 25.2Mhz
klimbokernel-v3.8.1 is up!
• re-added OC on gpu to 910MHz
• more optimizations in the audio driver.
• Several EAS commits for balancing power+efficiency
• Disabled Bootstats.
klimbokernel-v3.2 is up!
• FS and F2FS improvements.
• Reverted 250HZ base timer frequency (for more stability)
• Misc ARM performance and battery patches.
• Some I/O control tweaks.
..status for GSI : working
klimbokernel-v3-rc2 is up!
• Disabled Gentle Fair Sleepers
• Removed GPU OC - This is to test drive if performance takes a small hit but battery is gained. I have this as *temp change* consider it a 'test' phase so i will need your feedback on it to see whether if we keep it or not.
klimbokernel-v1.1-rc1 is up!
• reversed the cpu frequency table so the user can put the frequencies he wants.
• Implemented optimized PM QoS for UFS
• Built with cortex-a55 specific optimizations
• removed facebook process from 'kill-in-the-background' mod. This was affecting the user experience (for those that use Facebook a lot, like my wife lol)
• Disabled several not needed debug
• finetuned for SM8250 (Samsung) specific frequencies/values
• added: CIFS, NTFS and ISO9660 FS in-kernel Support
• Slimbus OC
• Several 'under the hood' improvements to task/memory management.
• set timer tick to 11000HZ this provides super low latency
klimbokernel-v1-rc2 is up!
•set timer tick to 9000 Hz for more performance..
• gpu overclock from 587MHz to 660MHz
• removed battery charging throtling
reserved.
reserved.
reserved.
reserved.
Very unstable but the speed is insane for me. The only version that work for me is the stable v1, without random resets. Great work.
impreza555 said:
Very unstable but the speed is insane for me. The only version that work for me is the stable v1, without random resets. Great work.
Click to expand...
Click to collapse
in the latest versions there is no reboot, on telegram you can find
important message, DON'T WASTE YOUR TIME COMPLAINING ABOUT LOW SOT​my kernel was designed for stable performance as you can see in the changes above​thanks​
.
Hello colleagues
does it work on one ui?
or only in GSI?
mezacorleehone said:
Hello colleagues
does it work on one ui?
or only in GSI?
Click to expand...
Click to collapse
hi, work on both
snapdragon teaks said:
hi, work on both
Click to expand...
Click to collapse
As soon as I entered the telegram group.
but i am seeing 2 variants
GCC and Clang.
what is the difference between one and the other?
thank you for your patience.
mezacorleehone said:
As soon as I entered the telegram group.
but i am seeing 2 variants
GCC and Clang.
what is the difference between one and the other?
thank you for your patience.
Click to expand...
Click to collapse
GCC is more optimized for battery, so the phone won't heat up as much, now Clang is more optimized for performance and the phone will heat up a little more but nothing crazy.
You're welcome.
snapdragon teaks said:
GCC is more optimized for battery, so the phone won't heat up as much, now Clang is more optimized for performance and the phone will heat up a little more but nothing crazy.
You're welcome.
Click to expand...
Click to collapse
I already approved the kernel.
currently try 3 different kernels(counting this one)
1.it allows me to modify and lower and raise the frequencies to my liking. no matter how you do it, the kernel respects it.
2.another kernel did not allow me to modify anything, I selected a frequency and it automatically modified itself. (I hate this kernel)
3.the kernel of this post.
is a combination of both:
I can modify only the maximum frequencies (I am not interested in moving the minimum ones, I have no problems with them)
I only have problems with the frequency of the GPU
It is activated at 932 mhz, it never goes above 490 mhz
no matter how much stress the team.
It is normal ?
mezacorleehone said:
I already approved the kernel.
currently try 3 different kernels(counting this one)
1.it allows me to modify and lower and raise the frequencies to my liking. no matter how you do it, the kernel respects it.
2.another kernel did not allow me to modify anything, I selected a frequency and it automatically modified itself. (I hate this kernel)
3.the kernel of this post.
is a combination of both:
I can modify only the maximum frequencies (I am not interested in moving the minimum ones, I have no problems with them)
I only have problems with the frequency of the GPU
It is activated at 932 mhz, it never goes above 490 mhz
no matter how much stress the team.
It is normal ?
Click to expand...
Click to collapse
About gpu
You should check if adreno boost is enabled by default, If yes, at which level, if at level 1 (Low) then this is the problem Because adreno boost locks Max frequency depending on its use and also the setting selected by the user
snapdragon teaks said:
Acerca de gpu
Debe verificar si adreno boost está habilitado de forma predeterminada. En caso afirmativo, en qué nivel, si está en el nivel 1 (bajo), entonces este es el problema. Porque adreno boost bloquea la frecuencia máxima según su uso y también la configuración seleccionada por el usuario.
Click to expand...
Click to collapse
Is rare.
send the screenshot.
I have to activate minimum frequency at 932 mhz.
I would like it to be scaled.
Try some bench apps like, 3dmark, Geekbench, Antutu, etc. Also Use the CPU float app you can find it in the playstore.. open CPU float and open bench apps start the test and check if the frequency goes up to 932MHz
snapdragon teaks said:
Try some bench apps like, 3dmark, Geekbench, Antutu, etc. Also Use the CPU float app you can find it in the playstore.. open CPU float and open bench apps start the test and check if the frequency goes up to 932MHz
Click to expand...
Click to collapse
use antutu.
the score was very low.
once I set the frequency to 932mhz as a minimum.
I was surprised.

Categories

Resources