[MOD] BlackenedMod v1.5 (Pixel 3a / Pixel 3a XL) - Google Pixel 3a XL ROMs, Kernels, Recoveries, & Ot

Introduction:
Hello everyone!
The idea to this 'project' did blossom after having an conversation with @pkgnex in the past about the general idea of creating something else that follows what he started with his PK's Tuning Script for Pixel 2 (XL) but with a twist, mainly as a complement to his own thread that you can find here, but also with a completely different vision and focus on what the script itself should achieve (and deliver) for kind of results for myself and for all of you personally, of course, that wants to try it out and use it as a "daily driver".
Shortly explained.
This script is created with the goal of improving both battery life and performance on our Pixel 3a (XL) devices, and after a whole range of configurations and various set-ups, I've come up with something that, in my eyes, is worth sharing with all of you so that you can try it out yourself and judge on your own, with constructive feedback on what can be improved or added in future releases - if desired. My philosophy is, and will always be, this:
If something can be improved or altered in a positive way so the average user can feel and see a difference, then go for it. Non stop.
The latest release can be found here.
Disclaimer:
This is presented as "what if". If this modification screws up or breaks anything for you, I am not the one to be held responsible. It's a free will to try out this kind of changes/modifications/addons/tweaks, just don't blame the inventors for eventual bad results and/or screw-ups.
Note: This script is not recommended to be modified or customized by the user.
Features:
Reduced battery consumption
Device specific enhancements for best possible balance between battery life & performance
Enabled, and fully configured, Boeffla generic kernel wakelock blocker
Disabled a lot of useless stuff at kernel level (Improves battery life as well as performance)
CPUSet improvements & optimizations
Power efficiency enhancements
Wide IO block tuning (Reduces the possibility of hiccups, lags and overhead)
Possibly other miscellaneous things I've forgotten to write down here, both big and small.
Requirements/what you need for getting this script fully working:
An unlocked bootloader
Your own specific choice of kernel
Latest possible version of Magisk
Busybox for Android NDK Magisk Module by @osm0sis
Patience
Installation/How-To use & abuse:
1) Download the attached ZIP
2) Extract the script
3) Move the script to the following location;
/data/adb/service.d and give it the following & needed file permissions (0755)
4) Reboot your phone, let Android boot to the launcher and let Magisk boot service do its crucial magic (takes a few seconds before the scripts is fully up and running around behind the scenes)
5) Enjoy!
Note: If you still are unsure how to do for making my kernel configuration / modification work & be up and running behind the scenes, then please read @Phalanx7621 phenomenal guide here or check out @Phalanx7621 in-depth video here. The installation method is the same for all generations of released Pixels!
Credits:
@franciscofranco for all the information on which kernel wakelocks that is safe to block
@Phalanx7621 for his phenomenal how-to guide
@Lord Boeffla for his awesome generic kernel wakelock blocker
@pkgnex for inspiring me walking into this partially unknown territory.
@flar2 for his excellent EXKM application and ElementalX Kernel
@osm0sis for his Magisk Busybox module
Everyone that I've forgotten to mention here
Telegram:
If you want to try out betas / previews of my script before they are officially released, or just hangout and chat a little, then join the official Telegram group here
To-Do list:
Optimize and properly tune things even further for best possible balance between battery life, system responsivness and performance
Contributors:
@xFirefly93
Created: 2019-07-06
Last updated: 2019-07-21

Update!
Note: It is recommended that you reboot your phone after you have applied v1.0 so the customized changes / improvements takes full effect and is fully up & running as intended.
Version v1.0 (Initial release):
- Initial test release for Google Pixel 3a (XL)
- Enabled, and tuned, Boefflas wakelock blocker
- Enabled the backlight dimmer per default
- Disabled some useless kernel stuff for less overhead
- Some additional high quality customizations & improvements
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Enjoy!

I try it thanks a lot

Update!
Note: It is recommended that you reboot your phone after you have applied v1.1 so the customized changes / improvements takes full effect and is fully up & running as intended.
Version v1.1 (Semi-major release):
- Adjusted the task scheduler for better system responsivness
- Added my own Schedutil governor profile for a better balance between performance and battery life through the whole day
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Enjoy!

Update!
Note: It is recommended that you reboot your phone after you have applied v1.2 so the customized changes / improvements takes full effect and is fully up & running as intended.
Be aware that you have to flash the Busybox Magisk module by @osm0sis for getting the newest enhancements, that is featured / included on v1.2, up and running as intended!
Version v1.2 (Major release):
- Added a few crucial filesystem tweaks for improved performance (Credits goes to @pkgnex for this contribution. Be aware that you have to flash the Busybox Magisk module for getting those modifications up and running as fully intended)
- Fully removed all of the alternative task scheduler values / settings (they was only causing random freezes and lagspikes)
- Slightly adjusted the default stock CPUSet values for hopefully improved power efficiency as well as system responsivness
- Cleaned up the script on a few minor typos and what not
- Disabled a few minor CPU related loggers (experimental)
- Reduced suspend latency by enabling console_suspend
- Added a few tweaks for overall better network performance
- Shifted to Westwood TCP congestion algorithm per default
- Disabled the useless Adreno GPU frequency throttling tunable
- Disabled RCU expedited and 'replaced' it with RCU normal for improved real-time latency, CPU utilization and energy efficiency
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Enjoy!

Does 'Boefflas wakelock blocker' also get enabled on stock kernel? I am thinking of getting my Mother the 3a as a present, but would prefer to stick to stock. If not I can flash EX Kernel.

xFirefly93 said:
Update!
Note: It is recommended that you reboot your phone after you have applied v1.2 so the customized changes / improvements takes full effect and is fully up & running as intended.
Be aware that you have to flash the Busybox Magisk module by @osm0sis for getting the newest enhancements, that is featured / included on v1.2, up and running as intended!
Version v1.2 (Major release):
- Added a few crucial filesystem tweaks for improved performance (Credits goes to @pkgnex for this contribution. Be aware that you have to flash the Busybox Magisk module for getting those modifications up and running as fully intended)
- Fully removed all of the alternative task scheduler values / settings (they was only causing random freezes and lagspikes)
- Slightly adjusted the default stock CPUSet values for hopefully improved power efficiency as well as system responsivness
- Cleaned up the script on a few minor typos and what not
- Disabled a few minor CPU related loggers (experimental)
- Reduced suspend latency by enabling console_suspend
- Added a few tweaks for overall better network performance
- Shifted to Westwood TCP congestion algorithm per default
- Disabled the useless Adreno GPU frequency throttling tunable
- Disabled RCU expedited and 'replaced' it with RCU normal for improved real-time latency, CPU utilization and energy efficiency
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Enjoy!
Click to expand...
Click to collapse
My pixel didn't go Deep sleep with 1.2

MrPhilo said:
Does 'Boefflas wakelock blocker' also get enabled on stock kernel? I am thinking of getting my Mother the 3a as a present, but would prefer to stick to stock. If not I can flash EX Kernel.
Click to expand...
Click to collapse
It does only exist on a few selected custom kernels.
djisma86 said:
My pixel didn't go Deep sleep with 1.2
Click to expand...
Click to collapse
Deep sleep is fine for me here. Go and check which partial wakelocks that is screwing up your phone by using BBS.

How do I know it's working? Set the permissions to 755.
Sent from my Pixel 3a XL using Tapatalk

arenaboy007 said:
How do I know it's working? Set the permissions to 755.
Click to expand...
Click to collapse
The changelog isn't needed inside the service.d folder.. ;p
And.. Have you created a logs folder inside your internal storage on your device, and tried with rebooting once?

xFirefly93 said:
The changelog isn't needed inside the service.d folder.. ;p
And.. Have you created a logs folder inside your internal storage on your device, and tried with rebooting once?
Click to expand...
Click to collapse
I have not created a logs folder yet. How do I generate one? So far I moved the file in the service.d folder and media/0 folder.
Sent from my Pixel 3a XL using Tapatalk

arenaboy007 said:
I have not created a logs folder yet. How do I generate one? So far I moved the file in the service.d folder and media/0 folder.
Sent from my Pixel 3a XL using Tapatalk
Click to expand...
Click to collapse
You don't have to do it yourself, the automatically folder creation will be featured on v1.3, which will be released either tomorrow or at Friday.
I've to try a few minor things out first before firing it up into the wild.

I have placed the script in both the service.d and 0 folder, but no logs have been generated after reboot? I already have busybox installed too.
Edit: I noticed that some settings within EX Kernel manager have been changed, like cubic to Westwood, and fiops to cfq. I guess it worked?
Sent from my Pixel 3a XL using Tapatalk

arenaboy007 said:
I have placed the script in both the service.d and 0 folder, but no logs have been generated after reboot? I already have busybox installed too.
Edit: I noticed that some settings within EX Kernel manager have been changed, like cubic to Westwood, and fiops to cfq. I guess it worked?
Click to expand...
Click to collapse
Just make a new empty folder on the sdcard. /sdcard/logs/ Then reboot your device. After boot has completely finished wait 30-60 seconds. Then look into the new logs folder. You should see a new log file in the folder. The log tells you that the script has run successfully.

12paq said:
Just make a new empty folder on the sdcard. /sdcard/logs/ Then reboot your device. After boot has completely finished wait 30-60 seconds. Then look into the new logs folder. You should see a new log file in the folder. The log tells you that the script has run successfully.
Click to expand...
Click to collapse
It worked! I created a log folder and on next reboot saw a log inside. Thank you!
Sent from my Pixel 3a XL using Tapatalk

Not for teasing far too much right now but.. The weird maxing out on the LITTLE cluster cores have finally been fixed once and for all!
Thanks to everyone that reported about this issue that I sadly enough introduced.

xFirefly93 said:
Not for teasing far too much right now but.. The weird maxing out on the LITTLE cluster cores have finally been fixed once and for all!
Thanks to everyone that reported about this issue that I sadly enough introduced.
Click to expand...
Click to collapse
Is it possible for you to set the min clock speed to 300mhz for both clusters? This clock speed is available on the elementalx kernel.
Sent from my Pixel 3a XL using Tapatalk

arenaboy007 said:
Is it possible for you to set the min clock speed to 300mhz for both clusters? This clock speed is available on the elementalx kernel.
Click to expand...
Click to collapse
I can give it a try.

Update!
Note: It is recommended that you reboot your phone after you have applied v1.3 so the customized changes / improvements takes full effect and is fully up & running as intended.
Version v1.3 (Minor release):
- Added the needed commands so the logs folder, and the output message, will be automatically generated after each completed boot sequence (Thanks to @crian for giving a few seconds of his time helping me out with this contribution. You rock, dude!)
- Simplified a few explanations of what each section does
- Fully enabled the RET idle power state for both clusters (may, or may not, lead to slightly improved battery life for everyone)
- Most likely fixed the minor issue with the weird all over the place maximum CPU frequency bouncing on the whole LITTLE cluster
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Enjoy!

Update!
Note: It is recommended that you reboot your phone after you have applied v1.4 so the customized changes / improvements takes full effect and is fully up & running as intended.
Version v1.4 (Minor release):
- Disabled RET idle state for all of the cores again (it wasn't showing any major notable power savings as expected)
- Fully disabled the 'block_validity' mount option for the /system partition (this slightly improves overall system performance)
- Enabled power efficient workqueues (improves battery life - was actually enabled on v1.3, it was just I that forgot to mention it)
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Enjoy!

Related

[KERNEL] [AOSP/CM] [2.6.32.24] [HAVS][BFS][OC][UV] KiNgxKernel #2/#2 "Bout Time"

[KERNEL] [AOSP/CM] [2.6.32.24] [HAVS][BFS][OC][UV] KiNgxKernel #2/#2 "Bout Time"
I DO NOT have an HTC Incredible but will continue to cook kernels for it. My girlfriend has Verizon however, and I am saving for two devices, one of them being an HTC Evo. Any donations go toward my devices. Bear with me until then please
DO NOT FORGET TO READ THE ENTIRE POST ON MY SITE, THERE IS IMPORTANT INFO
So you guys asked and asked, and now you shall have your requests answered. I decided to port my kernel over for AOSP, CM, and Ruby ROMs. The cool thing about this is that all the other features my sense kernel has, this has with one exception: It works on vanilla ROMs! So any ROM you may like to use that does NOT have sense, this will work with. It has all the tweaks that you would need, without loss of stability. The first release is a BFS kernel, but I am sure there will be CFS kernels to come. BFS is functioning to well to pass on these new uniprocessor phones to pass up. At any rate, post any bugs with a logcat, and most importantly, enjoy!
This is compatible with any 2.2 AOSP or CM6 ROM
Code:
Also, a little info on HAVS and AVS:
The purpose of HAVS is to minimize the power used by the CPU by determining
and setting the optimal voltage. At the same time, the maximum voltage by
which HAVS can scale to is fixed to a specified voltage depending on the
CPU frequency in order to prevent scaling to a higher voltage than what is
normally used at a specified voltage. The optimal voltage is actively determined
for each frequency and temperature. HAVS actively adjusts the CPU voltage as the
CPU frequency and temperature changes.
Code:
While we are at it, some info on BFS:
What is BFS(Brain **** Scheduler):http://ck.kolivas.org/patches/bfs/sched-BFS.txt
FAQS about BFS:http://ck.kolivas.org/patches/bfs/bfs-faq.txt
Ang3lmack said:
Instructions, create android.tether folder on root of sd card and drop this file into it http://www.mediafire.com/?nh7spjjb46fzfww then install this version of wifi tether http://code.google.com/p/android-wifi-tether/downloads/detail?name=wireless_tether_2_0_2.apk , I take no credit for the fix, just copied from another thread
Incredible
Click to expand...
Click to collapse
ENJOY!
Credits: Cyanogen,, Koush for his any kernel .zip, and HTC for their kernel source code
Download: BFS Kernel #2 & CFS Kernel #2[/URL] Date: 10/28/10 1:10 AM PST
If you Like my work follow me on twitter:
All my code is on github:
I am not responsible for anything that happens to your device
ChEeRs
CFS Changelog
Kernel #2
- Kernel now patched up to 2.6.32.24
- Bug fix causing battery drain
- Reverted some UV levels causing instability
- CFS updates
* Implement different treatment for idle shares
* Fix CFS 'Over-scheduling' bug
* sched: Fix granularity of task_u/stime()
* sched, cputime: Introduce thread_group_times()
* sched: Fix select_idle_sibling()
* sched: cpuacct: Use bigger percpu counter batch values for stats counters
* sched: fix racy fair sched*trq
* sched: Cleanup select_task_rq_fair()
- EXT4 support now!
- EXT4 compiled as a module
- EXT4 filesystem bug fixes
* ext4: Fix potential quota deadlock
* ext4: Fix BUG_ON at fs/buffer.c:652 in no journal mode
* ext4: fix memory leaks in error path handling of ext4_ext_zeroout()
* ext4: Prevent creation of files larger than RLIMIT_FSIZE using fallocate
* ext4: Ensure zeroout blocks have no dirty metadata
* ext4: Consolidate inlign pages
- CIFS bug fixes for stability and security
* cifs: Fix a malicious redirect problem in the DNS lookup code
* cifs: don't attempt busy-file rename unless it's in same directory
* cifs: remove bogus first_time check in NTLMv2 session setup code
- Netfilter IPv6 bug fixes
- Memory leak fixed in firmware
- CPU Governor fixes
- Mutex bug fix
* mutex: Don't spin when the owner CPU is offline or other weird cases
- Using xen_clocksource_read now for scheduler (part of 2.6.32.18 patchset)
- vmscan: raise the bar to PAGEOUT_IO_SYNC stalls
- SLAB fixes
- drm: Only decouple the old_fb from the crtc is we call mode_set*
- arm fixes: arm: fix really nasty sigreturn bug
- RDS memory leak fixed
- mm: page allocator: update free page counters after pages are placed on the free list
- mm: page allocator: calculate a better estimate of NR_FREE_PAGES when memory is low and kswapd is awake
- So much more, check my code if you please
Kernel #1
- First AOSP CFS kernel
- Patched up to Linux Kernel version 2.6.32.21 (all commits an android kernel would need, no extra bloat) *All credit goes to the linux project, check my github for authors please*
- Bug fix causing battery drain
- CFS updates
* Implement different treatment for idle shares
* Fix CFS 'Over-scheduling' bug
* sched: Fix granularity of task_u/stime()
* sched, cputime: Introduce thread_group_times()
- EXT4 support now!
- EXT4 compiled as a module
- EXT4 filesystem bug fixes
* ext4: Fix potential quota deadlock
* ext4: Fix BUG_ON at fs/buffer.c:652 in no journal mode
* ext4: fix memory leaks in error path handling of ext4_ext_zeroout()
* ext4: Prevent creation of files larger than RLIMIT_FSIZE using fallocate
* ext4: Ensure zeroout blocks have no dirty metadata
* ext4: Consolidate inlign pages
- CIFS bug fixes for stability and security
* cifs: Fix a malicious redirect problem in the DNS lookup code
* cifs: don't attempt busy-file rename unless it's in same directory
* cifs: remove bogus first_time check in NTLMv2 session setup code
- Netfilter IPv6 bug fixes
- Memory leak fixed in firmware
- CPU Governor fixes
- Mutex bug fix
* mutex: Don't spin when the owner CPU is offline or other weird cases
- Using xen_clocksource_read now for scheduler (part of 2.6.32.18 patchset)
- vmscan: raise the bar to PAGEOUT_IO_SYNC stalls
- SLAB fixes
- SO much more, tired of typing
BFS Changelog
Kernel #2
- BIG update!
- Performance boost!
- More stable due to BFS overhaul
- Patched up BFS scheduler to BFS 330
- Patched in *NEW* BFS TEST patch that applies over 330 (from CKolivas himself)
* Major overhaul of queued changes
* Micooptimise multiplications/divisions to be shifts where suitable
* Drop the "skip_clock_update" concept as we update the niffies each time we
update the rq clocks, thus we want to update it more often
* Add a local last_task variable to each runqueue which keeps a copy of the
last non-idle task that ran on this CPU. Use this value to determine that a
task is still cache warm on this CPU even if it has run elsewhere in the
meantime. This improves throughput on relatively idle systems with >2 logical
CPUs
* Change SCHED_BATCH tasks to refill timeslices and reset deadline every time
they're descheduled as they've been flagged as latency insensitive, likely
fully CPU bound tasks. This should decrease the impact running batch tasks
has on other tasks
* Bypass rechecking deadline when we know that prev will run again in schedule
* Change all deadline accounting to use nanosecond values
* Rework try_preempt
* MUCH MUCH more check my patch code if you please
- Voltage tweaks for stability
- Compiled with toolchain optimizations
- Neon optimizations this time around
- Now based off of NEW fresh source code from HTC
- Default CPU governor changed to 'Interactive'
- Numerous small changes I won't list that htc did
- Removed bloat from kernel
- Merged all my commits into the new code so
- Still using BFQ I/O scheduler
- Voltage regulator changes (now using the correct one)
- HAVS code fixed (HAVS now functioning correctly!)
- HAVS code cleaned up
- LONGER battery life due to HAVS functioning correctly
- EXT4 now compiled as a module for those with bad boot.img sectors
- Minor patches to the BFS scheduler (the big one is wip)
- Fixed memory leak in vmem
- Voltage tweaks
- Kernel size squashed a bit
Kernel #1
- First kernel release
- Synced with the latest code drop from htc
- BFS Scheduler patched up to BFS330
- Applied and tweaked BFS330 test patch on top
- Voltage tweaks for battery life (245Mhz is $$$)
- Higher clock speeds will be MUCH more stable now! (1.113=ez)
- Battery charging tweaks to allow your battery to charge faster
- Be sure to wipe dalvik cache before flashing
- Compiled with neon arm optimizations
- Included tun.ko for OpenVPN support
- EXT4 support
- Underclocked for long battery life
- Using AVS voltage scaling system
- Compiled with neon optimizations
- ALL CPU governors supported
- Interactive governor supported
- Interactive governor set to default
- Using CFQ I/O scheduler
- BFQ I/O scheduler supported
- Quadrant scores are high, even if you are NOT OC'ed testers have reported
- Much much more I need to add, it is a first kernel release
Gonna have to try this for sure.
Sent from my ADR6300 using XDA App
OMG This is freaking EPIC!
*refreshes page like the maniac I am.
Just got out of my work to post this up for you guys
Time for a breather now
It's live
haha, thanks King, I've been waiting for this!
One little bug though, while installing from nandroid it says something like:
blah blah blah
blah blah blha
blah HTC Evo
blah blah
haha, might want to fix that sometime xD
Switching roms again to try this!
Sent from XDA App
Virtuous 2.6 Rom
#4 King Bad F*cking **** Kernel
Revolution
8"
Hell yesssssss.
Awesome!!!!!! Thank You!!!
Sent from my ADR6300 using XDA App
Not too shabby...
Not as insane as some of the scores I've seen flying around the forums, but overclocked to top speed this isn't too shabby for the very first Quadrant run...
Trying it out now on Ruby. I LOVE your work, King!
Interactive governor, 1.13ghz, Ruby 1.1.1
Excellent work. Just need to see how well the battery lasts now. More beer money to you my friend.
This + Ruby = EPIC
Gotta see how this runs on CM6
I'm assuming based on md5sum that the beta you had posted is slightly different than this release... i had one reboot (at idle) on the beta... just updated to this release... keep up the great work.
WTF??? Over 1600 without overclocking? Witchcraft! I wouldn't believe it if I didn't see it on my own Dinc.
Nice job, bro.
Wow, just hit 1859 on quadrant @ 1.15!
can someone use this on ruby and see if BT audio connects? (ie some headphones). Not BT Phone audio, but music...
on the normal one it doesn't, i'm curious to see if it does with this one. about to load it up on cm6 nightly...
Ok, sorry for the NOOB-ish question but, I decided to try out Jager ROM and I am really liking it. I want to try a different kernel but I am not sure which one to use. The regular King's kernel or this AOSP based one?
How can I tell which ROM's are AOSP-based vs. something like SkyRaider? I was using SR and KK BFS kernerl and that was a great combo!
WOW, this is awesome!!! Just hit 1852 quadrant and 40.343 linpack set at 1190 on performance. First try on Cyanogen 6.0.2. I have screen shots on my phone but haven't figured out how to post them here yet, lol.
The first boot after recovery had a system force close and I didn't think it would work, but after a battery pull, my phone started normal.
Thanks for the wonderful kernel! If this is the first, I can't wait to see what the future brings!
That dude is the king! @1.19GHz
Sent from my ADR6300 using Tapatalk
Could I use this with the latest Vanilla Skyraider?

[Kernel][CM7] 13/04 platypus [request: thread maintainer needed]

Hi guys,
this is the 1st release of the platypus (custom) kernel for CM7 (CyanogenMod 7)
You asked for it - you get it !
I'm looking for a thread maintainer here at the vibrant development subsection
anyone wanting to run a thread for the platypus kernel ?
many thanks in advance !
Now to the fun part:
Introducing "Antlion"
04/13/2011 (release name: Antlion; Stable )
kernel:
CM7_VIBRANT_platypus-kernel_20110413_19_antlion_conservative.zip (3.97 MB)
md5sum:
83f6bba48561af1174c1e0ad937e6cdf CM7_VIBRANT_platypus-kernel_20110413_19_antlion_conservative.zip
CM7_VIBRANT_platypus-kernel_20110413_19_antlion_ondemand.zip (3.97 MB)
md5sum:
268c6c14f4eb8120aa706d81f7edf7ae CM7_VIBRANT_platypus-kernel_20110413_19_antlion_ondemand.zip
Changelog:
[additions since 04/13/2011] (release name: Antlion; Stable )
* working external SD card access & usb tethering
* working auto-rotation and sensors (check it's on; if not working: 1st boot: power button press 10+ seconds -> forced reboot/hard reset)
* CONFIG_HZ @250 USER_HZ @150 (like "rocketeer")
* (almost) feature-complete (like "rocketeer")
* added ported new bcm4329 (WIFI) drivers from intersectRaven's 2.6.37.6 kernel - kudos to him (supposedly less battery consumption)
* better reception quality (less noise) with new WIFI drivers
Click to expand...
Click to collapse
Installation steps:
* make sure you have auto-rotation enabled with previous kernel
* boot into CWM Recovery
* apply kernel package (zip-file)
* Wipe /cache & Dalvik Cache
* "reboot system"
* give it some time to boot
* check if auto-rotation works - (is it enabled ?) - if not press power button 10+ seconds (ignore power menu popping up)
* after the next boot it should work
Click to expand...
Click to collapse
Troubleshooting:
Q: black screen during 1st boot - shortly pressing power button doesn't fix it - only soft keys activated (perhaps screen activated but no output visible - black)
A: keep power button + home + vol up pressed until it reboots; it shows samsung galaxy s logo - hold it for some seconds shortly before the cyanogenmod splash appears (timing !) [same like getting into Recovery]
Wipe /cache & Dalvik Cache again & "reboot system" - now it should work
Q: auto-rotation not working !
A: check that it's enabled in settings or the notification power widget
it it still does not work tilt the phone and wait for some seconds - still not working
press power button 10+ seconds until it reboots (ignore appearing power menu) - that forces the phone to reset state and "hard"-reboot - now it should work
Click to expand...
Click to collapse
Please test specifically for the following sticking points:
- WIFI (power consumption & functioning)
- auto-rotation & sensors
- external SD card storage access, usb tethering
Click to expand...
Click to collapse
- call quality (mostly depends on modem but still)
- receiving calls & calling and ending calls
- overall stability
Click to expand...
Click to collapse
enjoy !
FYI:
for your convenience the kernel zip-files are also attached to this post
thanks !
some info from the main thread (at i9000 development subsection):
DISCLAIMER: the kernel (binary) and driver modules are provided as is. If problems occcur they most probably are from upstream and can be fixed with the newest version. Since I'm doing this in my free spare time as a hobby (quenching my thirst for tweaks & performance) updates will occur irregularly as time permits and I see fit (most probably when new features & bugfixes arrive). YOU are responsible for the actions that you take (such as over- or underclocking), etc. You agree that I can not be held liable for any potential damage that arises from your actions in combination with or the usage of this kernel and other related parts.
Kudos:
* Google & the whole Android crew
* Linus Torvalds & the kernel hackers for upstream Linux
* cyanogen & all the devs out there hacking on this
* Supercurio for enriching our media experience of this smartphone
* codeworkx, coolya, guiper
* laststufo & hardcore and all the other kernel hackers on the SGS forum
* zen-kernel team for inspiration to create a kernel, too
* all other contributors (devs, users, etc.) who make this possible
Changelog:
*link to changelog*
Features:
* jhash3 for better reliability (data connections)
* Voodoo Sound & Color
* simple i/o scheduler for better speed & performance
* preemptive tree RCU with smaller fanout value (better efficiency, speed & less memory usage with read-write-operations)
* SLQB for more efficient & faster handling of files in memory
* kernel & app security features (fstack-protector, better ASLR, disabled access to DEVKMEM & DEVMEM, ...)
* network security (syncookies; only secure redirects allowed; higher number of outstanding syn requests allowed; disabled warnings for invalid responses to broadcast frames; enabled window scaling; disabled IP dynaddr & ECN; log and drop "martian" packets; protection against: broadcast pings and smurf attacks, redirects for IP source routing, non-secure redirects, DoS (syn-flood) attacks, IP-Spoofing)
* disabled kernel DEBUG & disabled DEBUG in kernel code
* support of more encryption ciphers
* utf8 support (international)
* fixed & improved CFQ i/o scheduler (option)
* BFQ i/o scheduler (option)
* tweaked ondemand governor (raised the min_sample_rate of ondemand cpufreq governor to 9500)
* interactive cpufreq governor (option)
* smartass cpufreq governor (option)
* OC/UV support (option) (thanks to morfic, TheEscapist & bilboa1)
* laststufo's optimized CFLAGS for more speed (kudos & thanks to laststufo !)
* compiled with CodeSourcery 2010.09 toolchain (better code quality, stability & speed)
* CPU (CFS) scheduler optimizations (optimized branch brediction for more speed, low latency, load balancing); tighter scheduler timings for more speed & responsiveness;
* optimized cacheflushs for user apps (speeds up emulators and specific apps)
* optimized OOM (out of memory killer; apps being removed out of memory - when memory is full)
* faster deactivation & reclaim of invalidated pages (memory faster being available again after big file operations)
* vmscan & other fixes (better responsiveness with lots of read/writes & under load)
* ck-patches (patches by Con Kolivas, mm-lru_cache_add_lru_tail for more efficient memory usage)
* optimized writeback handling (less hangs & waits during write operations)
* script: 90screenstate_scaling: lots of CFS, writeback and cpufreq governor tweaks (less cpu ticks, less cpu looping & delayed writeback - better battery runtime)
* script: 89system_tweak: tweaks for faster data throughput; caller ringdelay (1 second); energy savings for CPU in standby mode, energy savings for radio; WIFI scaninterval to 180 seconds
* CONFIG_IKCONFIG=y & CONFIG_IKCONFIG_PROC=y
* CONFIG_NETFILTER_XT_MATCH_MULTIPORT & CONFIG_IP_ADVANCED_ROUTER
* Stochastic Fair Blue (SFB) network scheduler for default network scheduler - kudos to the zen-kernel / zen-droid team !
* lots of fixes: fix potential memory corruption in buddy allocator of page allocator; potential lags / hangs / looping; security hole in tipc; potential deadlock in radix-tree
* data safety (2 patches of Nick Piggin's Inode integrity patches)
* [improved battery runtime] delay going tickless when CPU is loaded
* kernel timer at 128 Hz; USER_HZ 150 Hz; HIGH_RES_TIMER 300 Hz
* Google WIFI fix to let the CPU sleep more during non-usage of WIFI
* Wii Remote support (bluetooth profile)
* working kernel modules: ansi_cprng, bcm4329 (WIFI), cifs, scsi_wait_scan, tun
* ext4 stability & data integrity fixes
* LED notification (by bilboa1) (short howto and FAQ)
* removing of the FPS limit (by bilboa1)
* DockSound support
* adjustments to the haptic feedback (by bilboa1)
* higher battery charging temperature [experimental, upstream]
* zram (successor of ramzswap / compcache - swapfile in RAM) [option]
* removed (commented out) several limits from the init scripts
* optimization for sqlite database files (speeding up system & apps)
* optimized conservative & ondemand governors
* [upstream] fixed BUG with ARM and delays during cpufreq switching
* disable FM RDS radio for now - potential battery drain & does not work [less battery drain]
* disable SWAP and zram - zram breaks stuff and enabled SWAP-support might be a battery drain, also disable the xvmalloc [less battery drain]
* enable KSM and uaccess with memcpy
* 1:1 CFLAGS from laststufo (Ultimate SO-Kernel flags) and replacement of soft pipelining with module scheduling (internal compiler error)
* kernel compiled with Thumb instruction set - more efficient (performance) & battery savings
* disable VGA console (broken - compile errors) & disable FRAMEBUFFER CONSOLE (broke lock-screen and stuff)
* practically eliminated all lags - (potentially) lagfree
* tweaks to CFS cpu scheduler
* tweaks to conservative governor script
* improved read & write values (write: 4.3 vs. 7.1; read: 11.7 vs. 16.9)
* allow using LED while screen on [thanks to bilboa1 !]
* working external SD card access
* and everything I might have forgotten
Click to expand...
Click to collapse
3.2. Using CPUfreq Governors (Red Hat Documentation - hope they don't mind for the load)
cpufreq_performance
The Performance governor forces the CPU to use the highest possible clock frequency. This frequency will be statically set, and will not change. As such, this particular governor offers no power saving benefit. It is only suitable for hours of heavy workload, and even then only during times wherein the CPU is rarely (or never) idle.
cpufreq_powersave
By contrast, the Powersave governor forces the CPU to use the lowest possible clock frequency. This frequency will be statically set, and will not change. As such, this particular governor offers maximum power savings, but at the cost of the lowest CPU performance.
The term "powersave" can sometimes be deceiving, though, since (in principle) a slow CPU on full load consumes more power than a fast CPU that is not loaded. As such, while it may be advisable to set the CPU to use the Powersave governor during times of expected low activity, any unexpected high loads during that time can cause the system to actually consume more power.
The Powersave governor is, in simple terms, more of a "speed limiter" for the CPU than a "power saver". It is most useful in systems and environments where overheating can be a problem.
cpufreq_ondemand
The Ondemand governor is a dynamic governor that allows the CPU to achieve maximum clock frequency when system load is high, and also minimum clock frequency when the system is idle. While this allows the system to adjust power consumption accordingly with respect to system load, it does so at the expense of latency between frequency switching. As such, latency can offset any performance/power saving benefits offered by the Ondemand governor if the system switches between idle and heavy workloads too often.
For most systems, the Ondemand governor can provide the best compromise between heat emission, power consumption, performance, and manageability. When the system is only busy at specific times of the day, the Ondemand governor will automatically switch between maximum and minimum frequency depending on the load without any further intervention.
cpufreq_userspace
The Userspace governor allows userspace programs (or any process running as root) to set the frequency. This governor is normally used in conjunction with the cpuspeed daemon. Of all the governors, Userspace is the most customizable; and depending on how it is configured, it can offer the best balance between performance and consumption for your system.
cpufreq_conservative
Like the Ondemand governor, the Conservative governor also adjusts the clock frequency according to usage (like the Ondemand governor). However, while the Ondemand governor does so in a more aggressive manner (that is from maximum to minimum and back), the Conservative governor switches between frequencies more gradually.
This means that the Conservative governor will adjust to a clock frequency that it deems fitting for the load, rather than simply choosing between maximum and minimum. While this can possibly provide significant savings in power consumption, it does so at an ever greater latency than the Ondemand governor.
Click to expand...
Click to collapse
Thx for the kernel.
Sent from my SGH-T959 using XDA Premium App
thanks ill give it a try
Thanks for the kernel. Much appreciated.
Which version are you guys using? Conservative seems a little choppy to me, anyone else experience it with conservative?
Sent from my SGH-T959 using XDA Premium App
Just tried the ondemand version and it feels choppy like conservative.
Sent from my SGH-T959 using XDA Premium App
Choppiness at First..
Goes away after awhile (I am using Conservative)
Also rebooted twice.
I think it just needs time to settle in. Seems to be running smooth now..
I'm gonna try this out in a bit. Nothing to lose I suppose.
I'm looking for a thread maintainer here at the vibrant development subsection
anyone wanting to run a thread for the platypus kernel ?
many thanks in advance !
I can maintain it, I maintain the other CM7 kernel thread, shouldn't be too tough.
I'll test the releases before and make things nice and tidy, etc. (If you'd like.)
Let me know.
Thanks for the kernel, by the way.
Great kernel has IP tables but i can get it to rotate for the life of me....also feeling lag but quadrant and smartbench say it's running better....rebooting.....
EDIT: Rebooted many times....tried holding power for more then 10 sec but nothing no rotate or light sensor
I would like to maintain also, I'm willing to test (I have 2 vibrants) maybe me and someone could work together on ones behalf.
Sent from my SGH-T959 using XDA Premium App
I think I found a temp fix for no auto-rotation. Turn your phone off, than as you turn your phone on, keep your phone standing in landscape on a table or in your hands. It should now auto-rotate. Hoped I helped in anyway.
I don't know if its the kernel or the nightly update, but my camera won't start and FC.
cervantesjc said:
I don't know if its the kernel or the nightly update, but my camera won't start and FC.
Click to expand...
Click to collapse
Its the update, just checked
Sent from my SGH-T959 using XDA Premium App
So far no issues. Auto rotate working as it should. Games seem to play the same as previous Kernel. Will give it a full charge tonight and get a better idea of battery life in the next couple of days.
when you say:
* apply update.zip
newbies may press something different...
you should probably tell them to install the .zip from Sd card option or something...
trying it out now, its rebooting.
hope it works, and how would i know if its enabled or know that i'm using this kernel?
(im on MIUI)
pretty sure the kernel mind-****ed my phone.
i was at about 31% battery.
Flashed kernel, 16%
rebooted, 12%
lol.
Works with MIUI also. May want to add reboot after flashing. I actually had to reboot twice before it settled in! Great work!
theexel said:
I'm looking for a thread maintainer here at the vibrant development subsection
anyone wanting to run a thread for the platypus kernel ?
many thanks in advance !
I can maintain it, I maintain the other CM7 kernel thread, shouldn't be too tough.
I'll test the releases before and make things nice and tidy, etc. (If you'd like.)
Let me know.
Thanks for the kernel, by the way.
Click to expand...
Click to collapse
thanks a lot for your help theexel !
cashyftw said:
I would like to maintain also, I'm willing to test (I have 2 vibrants) maybe me and someone could work together on ones behalf.
Sent from my SGH-T959 using XDA Premium App
Click to expand...
Click to collapse
thanks a lot cashyftw !
Also thanks to toryheal for volunteering &
warfenix for his support !
That makes you a total of 4 who volunteered to maintain the thread
Just Awesome !
Hopefully you can agree who posts the thread and communicate / help each others
1st Minor Hiccup - Theme Change
Running Vibrant - CM7 + MIUI:
Changing Themes gave me a constant reboot.
Fortunately a battery pull did the trick and the new theme came up.
(EDIT) Might be a one-time adjustment .. I put another theme on and rebooted fine. So changed back to the other theme to see if there was an issue with the theme itself and that came up fine as well.. just one of those one-time quirks I guess..

[KERNEL][04 APR] GLaDOS V2.11

Aperture Laboratories presents​
GLaDOS V2.11​
The latest innovation in human-smartphone interaction. Our scientist have shown in extensive tests that humans operating our kernel on their devices experience 67% more joy in life while simultaneously the likelihood of being maimed or killed by falling space debris is significantly reduced. Also preliminary human trials indicate that it might offer some protection against lethal dosages of gamma radiation and blows to the head with a rod-like object.
Features:
Based on stock Android kernel 3.0.8 IMM76D
CPUfreq governor 'lazy'
Live OC version 1
Custom Voltage version 1
Battery Life eXtender (BLX) version 1
Power saving state DEEP IDLE version 2
Touch Wake version 1
Backlight Dimmer (BLD) version 3
Backlight Notification (BLN) version 9
Brain **** Scheduler (BFS) version 0.357
SLQB memory allocator
Voodoo Color version 2
Voodoo Sound version 10
CIFS
TUN
Bigmem (+20 MB more available RAM)
USB OTG build 5
Download:
http://goo-inside.me/devs/aperture/GLaDOS-NexusS (thanks to goo-inside.me for hosting)
Always make a backup of your /efs/ directory (http://forum.xda-developers.com/showthread.php?t=1138873) before installing custom kernels or ROMs.
During installation the cache partition, Dalvik-cache and modules, init.d scripts and bootsounds from previously installed kernels are cleaned.
Source code:
https://github.com/Ezekeel/GLaDOS-nexus-s/tree/glados
Do not use profiles, they are unnecessary and only lead to instabilities.
If you experience any problems and are on a nightly or kanged ROM, try the latest stable version of that ROM first. I will not give support or answer any questions if you do not try this before reporting a problem with the kernel.
If you experience stability problems like reboots, freezes, FCs and SoDs and you did OC or UV, first try changing back to the stock settings. If this solves the problems, your OC/UV configuration is not stable. There are some indications that OC/UV settings which run fine at high battery charges might still cause problems at lower battery charges. So to be safe always check that your OC/UV configuration runs fine at low battery like 5%.
I do not offer support/help/recommendations on OC/UV. If you decide to do so and your device is unstable you are on your own. Check http://forum.xda-developers.com/showthread.php?t=1335429 for help.
If you experience the problem that the DEEP IDLE state is not properly used (according to the idle_stats), read the last section of http://forum.xda-developers.com/showpost.php?p=18299324&postcount=1.
When reporting a bug always include information about your ROM and hardware model. Also be as precise as possible when describing the problem. Just because a single person is experiencing a problem, it does not mean there actually is a problem with the kernel. I always wait until at least one other person can confirm the issue before I look into it. So if you see someone posting a bug report, do not be shy and feel free to confirm the issue or if you do not have the problem let me know that too.
When asking for a feature you would like to see implemented in GLaDOS always provide a link with information about this tweak and preferably also a link to the source code.
Aperture bootanimation courtesy of rascarlo (www.twitter.com/rascarlo)
For users unfamiliar with init.d scripts I recommend NSTools by arifhn (http://forum.xda-developers.com/showthread.php?t=1333696) for managing the various tweaks.
Changelog
GLaDOS-V2.11
Added kernel patches for Android 4.0.4 update.
Fixed bug with Touch Wake.
The kernel installer no longer modifies the ramdisk for adding init.d support.
GLaDOS-V2.10
Added USB OTG build 5 by sztupy.
Fixed small bug in Custom Voltage.
Fixed bug in Live OC.
Changed to new bootanimation by Rascarlo (many thanks!).
Changed default V1 gamma values for Voodoo Color to stock settings.
GLaDOS-V2.9
Fixed two small bugs in LiveOC.
Fixed small bug in Lazy.
Reduced display frequency back to stock settings.
GLaDOS-V2.8
Fixed a bug in LiveOC.
Fixed optimized compiler flags.
GLaDOS-V2.7
Fixed TouchWake issue of long powerkey presses causing the touch controls to be disabled without delay on next screen off.
For BLN the blink interval and blink time can now be adjusted in the sysfs interface. Also BLN is disabled by default.
For lazy the sampling rate is initialized to a default of 15000.
GLaDOS-V2.6
Fixed the problem of the CAM module being active all the time preventing DEEP IDLE from being used.
GLaDOS-V2.5
Fixed bug.
Removed several unnecessary kernel drivers and features.
Removed kernel debug and logging features.
Included logger as a module.
GLaDOS-V2.4
Fixed bugs in Live OC.
GLaDOS-V2.3
Fixed the freeze/reboot problems when changing the frequency limits.
GLaDOS-V2.2
Removed the limit of the minimum frequency to 200 when the GPU is active.
Preliminary bandaid to DEEP IDLE compensating for various bugs in ROMs.
GLaDOS-V2.1
Added Voodoo Color version 2 and Voodoo Sound version 10.
GLaDOS-V2.0
Update to Android kernel 3.0.8 for ICS 4.0.3 IML74K.
GLaDOS-V1.12
Fixed the camera problems caused by Bigmem (increases available RAM by 21MB now).
GLaDOS-V1.11
Added Bigmem option (increases RAM available for the system by 26MB).
GLaDOS-V1.10
Added DRAM scaling to Live OC.
Flash memory I/O tweaks.
Added Tiny Preemptive RCU.
Updated the optimized CRC32 algorithm.
Removed CFQ I/O scheduler.
GLaDOS-V1.9
Added OC frequency states 1.4GHz and 1.2GHz.
GLaDOS-V1.8
Fixed the problem of the touchkey backlight lighting up when touched while the screen is off.
Increased display frequency to 72Hz necessary to achieve 65fps.
GLaDOS-V1.7
Fixed the increased battery drain while in SLEEP when DEEP IDLE is enabled.
Fixed the problem on the NS4G of DEEP IDLE not being used while 4G is enabled.
GLaDOS-V1.6
Disabled most logging and debugging kernel config options.
Included logger and TUN as modules.
During installation the cache partition, Dalvik-cache and modules, init.d scripts and bootsounds from previously installed kernels are cleaned.
Removed '98touchscreen' init.d script.
Aperture bootanimation and -sound courtesy of Euphorie (http://forum.xda-developers.com/showthread.php?t=1061627).
GLaDOS-V1.5
Fixed problems with setting voltages and min/max frequency with SetCPU.
Fixed problems with the vibrator and DEEP IDLE.
Improved stability of wireless connection.
GLaDOS-V1.4
Updated to latest toolchain arm-2011.03-41
Optimized compiler flags
Added optimized RWSEM
Fixed BLD bug for i9023 of the touchkey backlights not getting re-activated on touch
Changed to advanced TCP congestion scheduler VENO
GLaDOS-V1.3
Improvements to JHash.
Improvements to CRC32.
Fix memory leak in CPUfreq stats module.
Removed PMEM. I do see any improvement regarding the available RAM, but removing unused code is never a bad idea.
GLaDOS-V1.2
Fixed 'Screen v1 gamma hack' not working for Voodoo Color.
GLaDOS-V1.1
Fixed BLN problems for i9023.
GLaDOS-V1.0
Initial release.
Oh this is going to be good.
...Thanks E
Sent from my Nexus S 4G using xda premium
oh man... downloading now
thank you so much for providing this!
Stock android uses deadline scheduler or VR?
A bit off topic, but did anyone ever toy with SIO, NOOP and CFQ on Nexus S?
Wow
Testing right know
can i flash this on my rooted stock 2.3.6? that is the latest for my country.
Ezekeel's own kernel?
Ezekeel's own kernel?!
I knew you have only provided kernel devs with MODs.
Very tempting... Will leave it a few releases before I jump from Matr1x but expecting this to be very good!
I'd be interested in seeing what people's battery life is like on this kernel compared to others, as that's the main selling point for me!
just ran a quadrant benchmark, ~1000 point increase from franco's 06 kernel on carbon c02 rom with 110 liveoc
i'm try ...
v3rk said:
just ran a quadrant benchmark, ~1000 point increase from franco's 06 kernel on carbon c02 rom with 110 liveoc
Click to expand...
Click to collapse
so its better than franco's? and does it include the latest deep idle fiX?
Finally a kernel of a master hehe
Sent from my Nexus S using xda premium
Oh em gee. Here we go!
Sent from my -=Nexus MV=- powered Nexus S c",)
--
MarkVis
After flashing no more lights in soft keys
Edit:
Solved
thegtfusion said:
so its better than franco's? and does it include the latest deep idle fiX?
Click to expand...
Click to collapse
lol
read up who made deepidle-fix. and all those other kernel-tweaks. this kernel comes from the horse's mouth so to speak, or how this is said in English.
now let's see if it's stable.
Yusei said:
After flashing no more lights in soft keys
Click to expand...
Click to collapse
Use bln app to see if it's enable.
MarkVis said:
Oh em gee. Here we go!
Sent from my -=Nexus MV=- powered Nexus S c",)
--
MarkVis
Click to expand...
Click to collapse
If i am in you, I'd have chose which kernel to include in next nexus mv release
Inviato dal mio Nexus S
report: Oh yeah this is awesome syrup, my phone loves it.
Edit : everything good on this side.
Sent from my Kush'd Google Nexus S 4G using xda premium
Ezekeel, can you put this kernel taking around 65fps in 3D graphics globe?
Btw, this rocks.

[KERNEL][AOSP/CM][3.4.107][GCC 5.0]Spirit.Kernel for peregrine-r3[21/04/15]

Spirit Kernel
This kernel is ONLY for AOSP based ROMs. This will NOT work on the stock Moto roms.
I will update this regularly as I have time and will add new features and fixes as well.
If you have any feature requests or ideas that haven't been seen before, don't hesitate to post it here!!​
PLEASE READ
How to report a bug?
Include the following in your bug report:
The ROM you are currently using + a link to the ROM's thread
A log, preferably dmesgs or kmsgs (use Google to find out how to pull these from your device)
The version of SpiritKernel you use (=rx, e.g.r3)
Bug reports not meeting these requirements will be ignored.
NO BUG REPORTS ON EXPERIMENTAL BUILDS!​
Features
This Hybrid kernel contains features from great kernel devs with like faux,franco and neobuddy,optimized for titan to make it work.Initially there are less features but I will add much more soon
[*]Based on the Latest CyanogenMod sources
[*]Patched 3.4.107 kernel
[*]Governors: ondemand/userspace/powersave/performance/interactive/IntelliMM/inteliidemand/intelliactive/smartmax/pegasusQ
[*]Hotplug: MPDecision/MSM Hotplug/Intelliplug(default)
[*]Intellithermal v2
[*]DT2W/S2W/S2S Wake controls
[*]CPU Underclocking 192Mhz
[*]GPU OC 533Mhz | UC 100Mhz
[*]Add MSM Hotplug Driver
[*]Asynchronous Fsync extracted from HTC
[*]Sweep2Sleep driver
[*]Dynamic management of timer slack
[*]Slimbus OC thanks to neeobuddy89 and poondog
[*]increase Torch power 20mA
[*]Dynamic management of dirty page writebacks
[*]IO: BFQv7r7/FIFO/SIO/FIOPS/ZEN/VR IO Schedulers
[*]Faux Sound Control 3.2
[*]KCAL v2 by @savoca
[*]USB forced fast charge
[*]Stereo call recording support by skvalex
[*]Powersuspend from Faux and yank555-lu *updated to 1.8 after r8*
[*]Kernel Compression: XZ
[*]psx2usb controller
[*]Use Android device as USB keyboard/mouse
[*]optimized ARM RWSEM algorithm.
[*]Ultra Kernel Samepage Merging {UKSM}
[*]FRandom
[*]Dynamic FSync Control
[*]Added Simple GPU Algorithm
[*]WQ_POWER_EFFICIENT for bettery battery life. Hello Battery!!
[*]ANY Kernel
[*]Kexec hardboot patch for Multirom support
[*]TCP: HTCP/HSTCP/HYBLA/VEGAS/SCALABLE/LP/VENO/YEAH/ILLINOIS/WESTWOOD
Optimizations
[*]Compiled Using UBER 5.0 GCC
[*]Added optimized ARM RWSEM algorithm.
[*]Disable add_random
[*]Pocketmode and deepsleep for dt2w/s2w
[*]Optimized VFP Module
[*]FIx integer-overflow in veno,vegas
[*]Add sysinterface for GENTLE_FAIR_SLEEPERS
[*]NOATIME and NODIRATIME as default
[*]New 99LMK script by @Pizza_Dox
[*]Nvidia Patches to enhance power efficiency.
[*]Sched optimizations
[*]Increase battery level check interval
[*]writeback: increase bdi_min_ratio to 5
[*]block: cfq: merge tweaked tunables.
[*]Wait just 1 second for other CPU to halt
[*]net: combat buffer bloat
[*]PM: Introduce suspend state PM_SUSPEND_FREEZE
[*]Disable -fconserve-stack on ARM v2
[*]Enable power efficient workqueues by default
[*]do not use msm_run_queue_stats
[*]enable/disable cpu-boost via sysfs
[*]softirq: reduce latencies
[*]Built with Ofast flags
[*]Force SELinux permissive
[*]LowMemoryKiller management of non killable processes
[*]Headset High Performance Mode
[*]Allow CPU-supported unaligned accesses
[*]Enable UNALIGNED_ACCESS
[*]enable ARCH_POWER
[*]lower swappiness
[*]vfp: remove double entries
[*]Disable disable crc check for 30% extra performance in IO
[*]Optimized SLUB memory allocator
[*]Optimize Sfck Compression
[*]set sched_mc_power_savings to 2 (moar powarrrrrrr! saving)
[*]readahead to 256
[*]Built with Graphite flags
[*] Enabled Pipe Flag
TO-Do List
IntelliMM-intelliminmax
New Govs and I/Os
Intelliplug 4.0
GPU OC and UC
* Recommended app for tweaking the kernel: FauxControl,Kernel Auditor or TricksterMod
Recommended settings :
Governor: Intelliactive
I/O Scheduler: Fiops or row
TCP Congestion : Westwood
GPU Governor : Simple Ondemand Or Msm-adreno-tz
Hotplug : Intelliplug ( Keep screen off frequency to 787 MHz )
Powersuspend : Hybrid
Simple GPU Algorithm : On​
How DO I flash this?
Reboot to recovery.
Install zip from SD Card.
Choose the SpiritKernel-Rx-titan.zip
Insatll and Reboot.
Changelog:
Click Me
Downloads:
Basketbuild
Source:
Github(branch:spirit)
Wiki containing changelogs,settings and more
Antutu Score: http://forum.xda-developers.com/showpost.php?p=59736983&postcount=136
Credits goes to these SUPERHUMAN for Inspiration and support (In no specific order)
faux123
Cl3Kener
slukk
luca020400
savoca
Anas Karbila
hurtsky
pinkflozd
YoshiShaPow
Flashhhh
flar2
And more
XDA:DevDB Information
Spirit kernel for peregrine, Kernel for the Moto G
Contributors
DC07
Source Code: https://github.com/DC07/spirit_msm8226
Kernel Special Features: DT2W/S2S+S2W/FRandom/Powersuspend/Hotplugs/GPU OC/UC/CPU Underclock/GCC 5.0 Compiled and More
Version Information
Status: Stable
Current Stable Version: r3
Created 2015-03-13
Last Updated 2015-04-21
Reserved for Changelogs and Reviews
F.A.Q. - Read this before complaining!
1. My phone exploded, HALP!
A: I don't answer to problems without a log. The log file is in /proc/last_kmsg. Paste it on pastie.org and link it on your post. Logcats are useless for Kernel purposes, don't bother posting them.
2. This kernel works on Y or X rom?
A: Doesn't work with ROMs having different ramdisk or any derivates due to their irresponsibility of using a different ramdisk which needs patches that break stock rom users. Use a different rom and don't bother me.
3. OMG BETTARY SUCKZ, IT DEAD IN 45 MINUTAS, HALP!
A: As you can imagine I don't build kernels to decrease battery life. All the battery life problems come from your apps, either Facebook, or Maps, or some Location Service being enabled etc etc. Check your damn wakelocks and fix them, the kernel is not responsible for them.
4. How do I flash this?
A: Reading the OP, theres a reason why I added instructions on it.
5. What is a data loss? Did I just had one?
A: Data loss is simply having the connection cut for X periods of time, usually few seconds. Grey bars means the device is not connected to Google services for some weird reason, but you'll still have internet connection.
6. OP is arrogant, I'm gonna call the Internet Police?
A: Deal with it.
Settings recommended by our users: Copied shamelessly from my titan thread
metalrules321 said:
Heres what I use and it gives me exceptionally good battery life and perfomance (may differ for others) /using faux-clock app
1.CPU Hotplug
-Intelliplug (I use fauxclock, so cant find the msm hotplug)
-Touch boost on
-Screen off frequency 787 mhz
-Hysterisis value : 8
-Profile : Ecoconservative
-Threshold value 350
2.Thermal Manager
-Intellithermal
-Frequency Throttle temp; 70
-Core throttle temp: 65
3.GPU manager
-Governor: msm-adreno-tz
-simple gpu algorithm
-gpu clock:320
-Simple governor (laziness); 5
-Ramp Threshold: 5
4. IO scheduler
-ROW (for both emmc and sd)
-Read ahead :1024
-Entropy: off
5.Memory Manager
-Zram: Off
-All the other options on
- Swappines:80
-VFS cache pressure : 120
-Dirty ratio:20
-background ratio:5
6.Same page merge
-Intelli ksm enable
-Activation treshold :24
-Cycles per activation 3
-Pages to scan:400
-Scan delay interval :500
7.Battery Control
-Throttling - On
-Temperature threshold :45
-Throttle frequency:787
8.Miscellaneous
- Powe suspend mode: Userspace
-powesuspend: On
-Dynamic file sync: on
-TCP congestion control:Westwood
*Sorry for an awfully long post *:silly:
Click to expand...
Click to collapse
Great! I will test it today if I can. This is for lollipop right?
rodsayd said:
Great! I will test it today if I can. This is for lollipop right?
Click to expand...
Click to collapse
Yes.AOSP/CM based roms only! No stock
Wow
Loved the features! Great work mate! :good:
Gr8 to see a kernel
Do tell me if u have any problems!!
it is possible to have cpu overclock for gaming please
I cant find avy kernel with working oc for cpu , just a little be very nice if is possible thank
Continu good work sorry my bad english
DC07 said:
Spirit Kernel
This kernel is ONLY for AOSP based ROMs. This will NOT work on the stock Moto roms.
...​
Click to expand...
Click to collapse
Would you add the intelliactive governor and the RAW IO? Whille keep the Intelliplug out?​
Great Kernel
Excellent! Thanks to @DC07 for your great job!
I hope greats news in the future! :fingers-crossed:
Nice work - thanks for that! I really appreciate the minimum frequency and OndemandPlus Nevertheless I got a bug which prevents my phone from going into deep sleep.
Can anyone confirm or provide a fix?
BlueFlame4 said:
Nice work - thanks for that! I really appreciate the minimum frequency and OndemandPlus Nevertheless I got a bug which prevents my phone from going into deep sleep.
Can anyone confirm or provide a fix?
Click to expand...
Click to collapse
I didn't encounter any problems with the phone going to deep sleep when I tested it bro, I did have problems with the headphones not working but it got fixed... Did you check with WakeBlocker to see which app(s) are not letting it go to sleep?
hhrokarvi said:
I didn't encounter any problems with the phone going to deep sleep when I tested it bro, I did have problems with the headphones not working but it got fixed... Did you check with WakeBlocker to see which app(s) are not letting it go to sleep?
Click to expand...
Click to collapse
So I let my phone settle overnight and it goes into deep sleep now. The causing wakelock was PowerManagerService.Wakelock which is now gone. Looks like some app went nuts - thanks for your support, mate!
Just want to know if it's work for KK rom and specially for slim rom in 4.4.4?
Thanks
patgou.007 said:
Just want to know if it's work for KK rom and specially for slim rom in 4.4.4?
Thanks
Click to expand...
Click to collapse
It works on CM based ROMs.. Won't hurt to give it a try thou
Right to make a try but before, just want to be sure that this kernel is for kit kat rom.
patgou.007 said:
Right to make a try but before, just want to be sure that this kernel is for kit kat rom.
Click to expand...
Click to collapse
I guess since 99% of us are already on Android 5.x.x nobody can answer that question, make a Nandroid or use Flashify and backup your current kernel,
if it does not work or behave well you can simply restore your backup/kernel backup and report if it works or not, for other users
cheers
Right. I 'll try later and report. Thanks
Damn, this Kernel is really noice !
I tried it on BlissPop v3.0 - well this ROM is amazingly fast and awesome out of the box but with this Kernel i feel a slightly performance boost.
I had also some little micro animations lags here and there, with this Kernel, they are completely gone and my device is flying as * like never before on Android 5. :good:
One thing though, WIFI does not work, the button to activate it is simply grayed out.
Regards
gr3ud said:
One thing though, WIFI does not work, the button to activate it is simply grayed out.
Click to expand...
Click to collapse
judging by your screen shot, your phone may be in airplane / battery save mode cause low battery, and maybe thats why your wifi may be disabled ?
Hastaloego said:
judging by your screen shot, your phone may be in airplane / battery save mode cause low battery, and maybe thats why your wifi may be disabled ?
Click to expand...
Click to collapse
WiFi still works in Low battery mode, it just restricts the background data from the apps. He is also not in Airplane Mode because we can see full signals for the SIM Card, and it would have been an airplane logo in place of that.
I've tested it too, No WiFi but other stuff works perfectly, not to mention the performance is also good.

APP ❯ ROOT ❯❯ Subcore - Adaptive Daemon - v1.0

Code:
#include "std/disclaimer.h"
/*
* 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 software
* before using 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.
*/
What Is It
Subcore is an root daemon that utilizes various sensors in the device to systematically apply different usage profiles. The goal is to achieve a balance based on the user's workload, rather than relying on the CPU governor to make bias assumptions about the current workload.
How Does It Work
Subcore reads and writes to system files on the device to determine which profile to place the device into. These interfaces include:
• Active CPU load
• Available CPU cores
• Available CPU governors
• Available CPU frequencies
• Available GPU load
• Available GPU frequencies
• Current battery capacity
• Battery state (charging / discharging)
• Screen state
​◦ State Notifier (primary choice)
◦ Power Suspend (secondary choice)
◦ Framebuffer interface (tertiary choice)
• Available device memory
• Max device memory
• Available IO schedulers
• Block readahead
• Block swappiness
• Block cache pressure
• Block dirty rations
• Random entropy
• Block overcommit
• Block page cluster
• Block dirty centisecs
• Block LMK
• Block laptop mode
• Block KSM
• Uniquely Generated Interactive Tunables
• Uniquely Generated Schedutil Tunables
User Prediction Algorithm
Without some form of user prediction, a game could begin to lag for a moment during a loading scene, where the load requirement dips. To counteract this, Subcore implements a user prediction algorithm that attempts to maintain fluidity in heavy applications, even during moments of low load. It works by determining repetitive load averages, and scanning less often when the load is consistent. This results in far less lag spikes when playing intensive games.
Power Aware Algorithm
Since Subcore is a low-level (yet userspace) tool, it has direct access to battery statistics. When charging (and screen on), Subcore will boost your performance to the highest performing profile to ensure the user experiences UI/UX conformity, disregarding the energy limitation. Additionally, when Subcore detects the device is at 15% battery or less, it will half the loadavg, which means it requires twice as much CPU load to enter the next profile. Likewise, at 5% battery or less, Subcore locks the device into the lowest profile, which is optimized for deep sleep or idle, sacrificing a chunk of performance to battery. This setting can be disabled by toggling "Disable Power Aware" in the Subcore GUI app.
RUPG - Realtime Unique Profile Generation
Subcore implements a new concept that I call RUPG. What makes Subcore special is the fact that it is compatible with essentially all devices. At runtime, Subcore initially gathers heaps of data to generate numerous device-specific profiles based on various factors. These generated profiles are heavily optimized for each device, so that each user achieves the most efficient software experience for the available hardware/software provided. These profiles are then saved in memory and are marked for deletion when Subcore exits. Some examples where RUPG is utilized is in the generation of device specific LMK offsets (minfree). Each device has a different RAM size, so Subcore must manually calculate the optimum LMK minfree sizes for each offset vector (VERY_LIGHT --> VERY_AGGRESSIVE). Subcore also utilizes RUPG in the production of the governor tunables. Each device has a different SOC CPU frequency table, which must be accounted for. These profiles are generated automatically by the binary, so the user doesn't need to tune anything themselves.
Race To Idle
Research proves that when completing a task, less resources are eaten when boosting to a slightly higher frequency for a short time, rather than a low frequency for longer. Subcore takes full advantage of this theory and applies special tunables for each profile. Each Subcore profile has a different goal to achieve. The UI/UX is the main profile that takes full advantage of RTI. This profile tunes the governor to stay at minimum frequencies until a small workload is requested. It then jumps up a frequency level to complete the task faster, then it instantly shoots back to minimum frequency if all other tasks are completed. If a heavy task comes up, but not quite heavy enough to trigger a profile change, the UI/UX profile will handle it by jumping another 1-2 frequency levels. Finishing the work requested, the loadavg will quickly shoot down and the governor will return to idle, saving battery yet increasing performance; it sounds impossible, but in practice, it works better than expected.
Performance == Battery
It sounds impossible. How can an app save power, but also make my device perform better? Here's why it works. Think about battery and performance as independent spectrums. Just because you have one doesn't mean you can't have the other. By working efficiently, Subcore can actually improve performance on some devices. This is because Subcore doesn't just tune your device for battery, it also applies VM tweaks, MM tweaks, Block tweaks, and much more. During my testing phase, many of my testers were telling me how Subcore strangely caused some tasks to perform better than usual. This included UI/UX smoothness, app start times, Camera HDR rendering, file IO (such as zipping a large file), and some other tasks. I realized that the tweaks that Subcore applies improve battery by improving performance in areas that don't affect battery as much. For example, something as basic as IO readahead will cause a marginal impact on battery, but the Block performance benefit that comes with a higher readahead can cause IO tasks to finish much faster. Applying the concept of Race To Idle, the disk performance benefit helps the device finish its current task faster, allowing the CPUs to reach deep sleep sooner, and in turn, providing better battery.
Hyper Optimizing
Subcore is written in native C++. In fact, the Android app for Subcore just forks the included binary based on the device architecture. Since Subcore is written in C++, it is light, fast, and pretty tiny. It is also entirely independent from Java code entirely. Once it's started, the Subcore app can be killed fully (even force quit), and the daemon will persist, since it is the parent of its own process. Using `top`, you can see Subcore isn't even on the list. Every single line of the C++ code is written to utilize the least amount of memory, and run as efficiently as possible. It utilizes C++11 inlines, uint*_t, -Ofast, --strip-all, custom built NDK clang toolchains from source, and far more optimization. Subcore includes C++STL in the binary as well, so it is portable and is contained all in one binary. Subcore is also compiled in ARM, ARM64, x86, x86_64. MIPS is not supported at this time.
Automatic Backup/Restore Algorithm
Since Subcore writes to a large portion of your sysctl, many of your kernel manager tweaks would be written over until they are reapplied on the next boot. Luckily, I spent the extra time to implement an automatic backup and restore algorithm to save the device's current settings on the start of Subcore. On sending a SIGINT or SIGTERM to Subcore, it will restore the user settings before exiting. This way, you don't need to reboot each time you stop Subcore. NOTE: If you toggle Start On Boot to Subcore, there is a high probability that it will start before your kernel manager's apply on boot will. This means that Subcore won't backup the proper data, so when you stop Subcore, your kernel manager tweaks won't be applied. To solve this, either reduce the timeout for starting on boot for your kernel manager, or start Subcore manually after each boot.
Results
When you start using Subcore, it'll feel too good to be true. But stats don't lie. I will provide quotes from my testers, along with screenshots of my testers and my battery life improvement. I urge everyone that tries Subcore to post your results, along with the device model you are using. If you have any questions about how Subcore works, or if you have any questions at all, please contact me. I'd be more than happy to address your concerns.
Testers
I'd like to personally thank all of my testers for sacrificing their phones to my code. Each and every one of them assisted in the stability of the program itself.
@SmallTarzan
@efranz
@kdrag0n
@ASHLEY117
@abhirams2020
@Mountaser_halak
Extra Notes
For Subcore to work properly, please ensure the following things are proper:
• Make sure Subcore is always granted root.
• Use Low-memory mode if the device does not have ZRAM or ZCACHE, or if you notice apps crashing / not opening.
Contact
I am always available for contact. Send me anything you want: questions, concerns, suggestions, comments, assistance, thank you messages, etc. I always appreciate messages from users
Gmail: [email protected]
Telegram: @tytydraco
XDA: @tytydraco
Donate
When I released System Mods, users were always asking how they could donate. So I thought I'd post a PayPal link so you can donate if you really enjoy my work
Those who donate can request to be put on the XDA thread and I'll add you to the list of donators here. You can also write a message to post here if you can fit it.
https://www.paypal.me/TylerNijmeh
--DONATORS--
none yet
Download
Google Play
VirusTotal report:
arm64 raw binary: https://www.virustotal.com/#/file/5...3074755f96e516f20bb1f6fb85c95abf95a/detection
XDA:DevDB Information
Subcore, App for all devices (see above for details)
Contributors
tytydraco
Version Information
Status: Stable
Current Stable Version: 1.0
Stable Release Date: 2018-09-05
Created 2018-09-06
Last Updated 2018-09-05
Here are some quotes from my testers:
"With subcore on image processes faster ?" ~ Franz
"But I'd say gcam is a bit slower when subcore is off" ~ Franz
"Sorry been quiet and lurking but tested on stock soldiers ROM S9, Phh treble aosp and havoc device specific. Results are pretty impressive! Getting 20% more battery life and faster operations on stock based and aosp based but not much difference noticed with treble GSI" ~ Ashley117
"Subcore on: 866/4543, Subcore off: 772/2527" ~ Franz
"@tytydraco I think you will like this ^^ *photo of Antutu*: 147987 (Subcore on) vs 142286 (Subcore off)" ~ Franz
"It has more IQ than some of my classmates." ~ SmallTarzan
PROMO CODES
These are first come first serve. Here is 10 to start off. Enjoy!
0KKVAS9PEPU2X9JWP3Z2JXT
AW6VZ9WGPT3WSH0P9AUH40S
1FG32WUV2T02XBE8H0SRMKT
ECM1UY61V7V8295AFFZZ5QY
F836DQPKJ26RNW4Y49LAYEX
CZB08PFUV2MB3M8CP5J1RPK
8X8AHN7L5MCZ1KXVGW4B2W7
9YTQUQTFVZHNWXY3WT7S81M
JD8K4L46S40R61YWY0599JG
YCG4QQ36YXPF2LYXYPYG70K
Edit: all the promo codes were used. Sorry guys ?
Amazing battery life with only a slight impact on performance. I watched this mature from a minimal C++ program to a full-on app that balances performance and battery very well. Good luck!
Hi, mum! I'm on YouTube!
tytydraco said:
PROMO CODES
These are first come first serve. Here is 10 to start off. Enjoy!
0KKVAS9PEPU2X9JWP3Z2JXT
AW6VZ9WGPT3WSH0P9AUH40S
1FG32WUV2T02XBE8H0SRMKT
ECM1UY61V7V8295AFFZZ5QY
F836DQPKJ26RNW4Y49LAYEX
CZB08PFUV2MB3M8CP5J1RPK
8X8AHN7L5MCZ1KXVGW4B2W7
9YTQUQTFVZHNWXY3WT7S81M
JD8K4L46S40R61YWY0599JG
YCG4QQ36YXPF2LYXYPYG70K
Click to expand...
Click to collapse
Took F836DQPKJ26RNW4Y49LAYEX. Thanks for the code.
senpaidev said:
Took F836DQPKJ26RNW4Y49LAYEX. Thanks for the code.
Click to expand...
Click to collapse
No problem! Let me know how you like it, and please share the thread if you want
Claimed 9YTQUQTFVZHNWXY3WT7S81M
Thank you! Will test it out and provide some feedback soon.
tytydraco said:
PROMO CODES
These are first come first serve. Here is 10 to start off. Enjoy!
0KKVAS9PEPU2X9JWP3Z2JXT
AW6VZ9WGPT3WSH0P9AUH40S
1FG32WUV2T02XBE8H0SRMKT
ECM1UY61V7V8295AFFZZ5QY
F836DQPKJ26RNW4Y49LAYEX
CZB08PFUV2MB3M8CP5J1RPK
8X8AHN7L5MCZ1KXVGW4B2W7
9YTQUQTFVZHNWXY3WT7S81M
JD8K4L46S40R61YWY0599JG
YCG4QQ36YXPF2LYXYPYG70K
Click to expand...
Click to collapse
Oops!!! All those codes were redeemed. Do you have more? Please?
arunv707 said:
Oops!!! All those codes were redeemed. Do you have more? Please?
Click to expand...
Click to collapse
I won't be releasing any more on XDA, but if Android Police or Android Authority choose to sponsor my app, they will give people up to 20 promo codes.
Pleasure to test and 1 of the 1st apps I install in my daily flashing routine ??
Improving performance on GSI ROMs now I've noticed but only on Phh releases. Thank you again
I fixed the issue where some devices would get incredibly laggy. The cause for this was that my algorithm for determining the screen sleep state was faulty. The system would deliver inaccurate information for the variable I was tracking, so I switched to a new (updated) variable (specifically measured_fps. It is 0.0 when the screen is off). This should fix the lag for the Pixel 2 XL as well as some other devices.
I sincerely apologize to those affected, and I ask that you give Subcore another chance. I am passionate about this project, and I want my users to be satisfied. If you'd like a refund, email me and I can try to figure something out. Thank you.
Credit to log comes from Reddit user u/faz712. Thanks so much
Reddit thread: https://www.reddit.com/r/androidapps/comments/9deihr/app_root_subcore_adaptive_daemon_v10/
I use it on a S8 . After enabling, governor is schedutil and device is underclocked From 2,3 Ghz to 1066 Mhz . Is this underclock normal ? https://drive.google.com/file/d/1BG8ZyNH6LojgquYVZCWxxzNIWY39VUEV/view?usp=drivesdk Logcat when i Start subcore. @tytydraco
Re¢o said:
I use it on a S8 . After enabling, governor is schedutil and device is underclocked From 2,3 Ghz to 1066 Mhz . Is this underclock normal ? https://drive.google.com/file/d/1BG8ZyNH6LojgquYVZCWxxzNIWY39VUEV/view?usp=drivesdk Logcat when i Start subcore. @tytydraco
Click to expand...
Click to collapse
That's perfectly normal. That setting will keep changing depending on what you're doing. Don't change the settings as Subcore will handle it for you
tytydraco said:
That's perfectly normal. That setting will keep changing depending on what you're doing. Don't change the settings as Subcore will handle it for you
Click to expand...
Click to collapse
I used it for different things like casual Apps and some gaming but the Frequenz is still 1066Mhz and some Times i had little lags and device get hot. But when you say its normal i will tryit out for longer . But on thing i can say battery is very nice
Hello,
I am using S8 (Exynos) with velocity kernel. Do I need to enable any other settings in the app too? Also it doesn't look like it changes all values such as LMK. I checked that with MTweaks but didn't changed settings there ofc.
Also I was wondering if disabling debugging and IO stats would break the algorithm.
SH4M3 said:
Hello,
I am using S8 (Exynos) with velocity kernel. Do I need to enable any other settings in the app too? Also it doesn't look like it changes all values such as LMK. I checked that with MTweaks but didn't changed settings there ofc.
Also I was wondering if disabling debugging and IO stats would break the algorithm.
Click to expand...
Click to collapse
No, you're good to go. LMK is not tuned when memory awareness is disabled (which should be on Samsung ROMs).
On the kernel side, disabling debugging and IO stats won't break Subcore. It doesn't use those.
kdrag0n said:
No, you're good to go. LMK is not tuned when memory awareness is disabled (which should be on Samsung ROMs).
On the kernel side, disabling debugging and IO stats won't break Subcore. It doesn't use those.
Click to expand...
Click to collapse
Thx ^^ Great App btw
I am not able to download this app in play store, the search also does not show up this app. Please can some one give me a download link
cphilch said:
I am not able to download this app in play store, the search also does not show up this app. Please can some one give me a download link
Click to expand...
Click to collapse
Absolutely! As long as your region supports paid purchases, you should be able to download the app. Enjoy!
https://play.google.com/store/apps/details?id=com.draco.subcore

Categories

Resources