[KERNEL][14FEB'12]RedPillKernel_Rev1.3[RedPill Touch CWM Recovery by AF974]"TAKE IT!"
Kernel Source: https://bitbucket.org/sarcastillo/ultimate-kernel-sgs2
MatrixPills Image by Corinne Wilger. Visit her site HERE.
"This is your last chance. After this, there is no turning back. You take the blue pill - the story ends, you wake up in your bed and believe whatever you want to believe. You take the red pill- you stay in Wonderland and I show you how deep the rabbit-hole goes." - Morpheus, The Matrix (Copyright belongs to the Wachowski Brothers... Larry and Andy)FeaturesRedPill Download Links:Highlights
- Initramfs from LA2
- Samsung kernel-update3 (patched for deep sleep fix)
- Based on Arighi sources (arighi) + a LOT of patches included by pongster for performance, stability and battery life
- Custom ClockworkMod Based Recovery v5.0.2.7 by AF974 based on Team Overcome Recovery (thanks to alterbridge and AF974)
- Instant root (modded script by gokhanmoral of SiyahKernel with a few edits by pongster to ensure latest SU apk and binary are used.)
- Newest Superuser 3.0 and su binary (thanks to chainsdd)
- Touchscreenfix set to "3" (vitalij)
- Init.d support
- VooDoo Louder Support by supercurio
- 2nd Core and Touch Move by Tegrak Support
- SetCPU and Voltage Control Support
- Full CWM Manager 3.0 Support by Chainfire
- CPU & GPU Overclocking and Undervolting by Netarchy
- Highly Experimental Ondemand based CPU Governors (Minor Edits only/Renamed to keep bugs on the experiments) based on arighi's deep_sleep and fast_start commits
- Maximum CPU Freq set at 1.5Ghz
- Enable or Disable File Syncing (fsync enabled by default)
- CFS Autogroup by Mike Galbraith Enabled
- CPU Topology and Sched_MC enabled
- AFTR and LPA enabled
- A lot of tunables via sysfs included
- Undervolted Int ARM and Touch LED Values (thanks to Phenomenal for the idea)
- Git Implementation of SHA-1 for 12% faster boot time
- CPU set at 1.2Ghz at Boot for faster boot time (Thanks to Imoseyon)
- XZ compressed kernel using optimized values for the size of the kernel
- Uncompressed Initramfs (tweaked scripts/gen_initramfs.sh)
- NTFS Read/Write Support for OTG (Flash Drives and External Hard Drives with enough Power supported)
- CIFS and FUSE Support | Tweaked Ext4 Filesystem
- SIO | noop | deadline | V(R) (tweaked for better throughput and balanced latency for Mobile NAND based devices)
- sleepy | hyper | conservative | ondemand CPU Governors
- generic cpufreq range regulation (arighi) | BLN support (Thanks to creams and neldar) | Fuel Guage Wakelock fix by Entropy512
Power Saving Features:
- AFTR + LPA enabled
- sched_mc enabled
- ARM CPU Topology enabled
- CPU Hotplugging OFF when screen off enabled (Thanks to arighi)
- RCU Fast No HZ enabled
- Stable Voltage Tweaks for Internal Voltages (not ARM Voltage which remain stock) to help lessen heat when in heavy usage scenarios
Boot Time Features:
- Used git Implem of SHA-1 for 12% Boot time improvement
- Added [PATCH] arm: remove "optimized" SHA1 routines by Linus Torvalds <torvalds@linux-foundation.org>
- Added [PATCH] arm: remove stale export of 'sha_transform' Linus Torvalds <torvalds@linux-foundation.org>
- Uncompressed initramfs (since initramfs is compressed as part of the kernel image, this is reduced to a copy operation from a decompress then copy one)
- Set Clockspeed at 1.2Ghz at Boot time to ensure all critical tasks have enough power to perform them while the governors/maxfreq isn't set yet. (Thanks to Imoseyon for this hack)
CPU Features
- CPU and GPU OC/UV thanks to netarchy/Hacre
CPU Governors Included:
Final Clean up of CPU Governors available for simplicity. (all Governors are tweaked for the best possible balance of battery and performance with a slight lean towards performance) With this focus on simplicity stated earlier, the only governors available are the following:
- sleepy (ondemand based cpu governor with minor edits by pongster) loves to sleep and idle at the lowest set frequency, hence the name change from "solo" to "sleepy". Its closer to ondemandx in terms of performance. This can be tweaked and tuned using init.d scripts as well.
- hyper (ondemand + suspend freq setting ability with minor edits by pongster) This was formerly the original kenobi which I renamed to hyper as others may not get the Star Wars Reference. It gives a good balance between battery life and performance. Its closer to ondemand in terms of performance. also tunable using init.d scripts.
- conservative (good battery savings by default due to its slow ramp up and ramp down but tunable for performance) defaults are slightly tweaked for better performance than default conservative.
- ondemand (old reliable thats been tweaked by arighi to support deep_sleep and fast_start) these features try to detect if the CPU is coming from a deep sleep and is more likely to sleep again and thus limits its frequency to the lowest possible that can handle the operations needed. fast_start checks if the CPU needs more "ooomph" and jumps to the highest frequency faster to enable it to complete the operation the system needs to complete. (like during boot-up)
3rd Party Kernel Apps Support
Filesystem Features (loaded by default to prevent the load insmodding at boot will cause, however minor)
- CWM Manager 3.0 (It works well for me. Its a useful app by Chainfire that extends the features of the current recovery. No need to reinvent the wheel, so to speak)
- Voodoo Louder by supercurio
- Voodoo Display (for future supercurio app)
- 2nd Core by Tegrak
- Touch Move by Tegrak
- SetCPU by michaelhuang
- Voltage Control by xan
- CIFS
- FUSE
- NTFS
Ext4 Tweaks from 3.x.x branch:
- Experimental NTFS automount for OTG devices (you'll have to do a little more work to enable sdcard as ntfs) (Thanks to gokhan for the hotplug script as base.) This script uses the native NTFS RW support available in t he kernel instead of ntfs-3g
[PATCH] ext4: fix ext4_end_io_dio() racing against fsync() from https://lkml.org/lkml/2011/12/16/311 *Reported-by: Kent Overstreet <koverstreet@google.com>
*Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
[PATCH] ext4: avoid hangs in ext4_da_should_update_i_disksize() from https://lkml.org/lkml/2011/12/16/344 *Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
*Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
I/O Schedulers
Performance Patches
- SIO (2012 0.2 version)
- deadline (tweaked for Flash)
- noop
- V(R)
Mike Galbraith's Ultimate CFS Performance Patch (CFS Autogroup)<efault@gmx.de> as ported by faux123 <reioux@gmail.com> for 2.6.35 kernels. I (sarcastillo <sar.castillo@gmail.com>) additionally edited some things in sched.c to make it compile properly for 2.6.35.14 Samsung Sourced kernels*More info on this here: https://lkml.org/lkml/2010/11/20/91
Added the CGroup Patch:*Added [PATCH] cgroup: Provides a way of tasks grouping by timer slack value by Kirill A. Shutemov <kirill@shutemov.name> Based on patch by Jacob Pan. Introduces per cgroup timer slack value which will override the default timer slack value once a task is attached to a cgroup. It's useful in mobile devices where certain background apps are attached to a cgroup and minimum wakeups are desired.
Miscellaneous Patches
- Added [PATCH] cpu-hotplug: Add the function 'cpu_hotplug_inprogress' by Maya Spivak <mspivak@codeaurora.org>
- Added [PATCH] printk: Don't allow cpu to get console lock during hotplugging by Maya Spivak <mspivak@codeaurora.org>
- Added [PATCH] rcu-tree: Check for extended quiescent state at start of gp by Maya Spivak <mspivak@codeaurora.org>
- Added [PATCH] sched: Do not block when waiting to free old root domain by Maya Spivak <mspivak@codeaurora.org>
- Enabled fsync disabled (can be disabled by doing an echo "1" > /sys/module/sync/parameters/fsync_disabled in a terminal emulator or as a script for gscript or scriptmanager)
- Touchscreen fix set to "3" for more responsiveness during games, etc. (Thanks to vitalij)
Custom CWM Recovery made by af974 (Huge props to him!) based on Team Overcome Recovery (Huge props to them!)
- Enabled back key
- Enabled Power button to select (less chance of double pressing the Home Button and format sdcard fro some users)
- Reorganized, Inutitive layout and more Readable menu
- No/Yes Selection Tweak (If you know how to get to Recovery, you don't need that many "No's")
- Mount Internal AND Mount External from Recovery (We figured this would be quite Useful)
Disclaimer: I made this for my personal use and has been personally tested by me and my team (HyperDroid Dev Team). While it may work for other i9100 International ROM's, we have not tested it personally. You have the liberty to choose to use this Rooted Kernel and by flashing this Kernel you will have surrendered your right to complain that you lost your Warranty. If you're smart enough to figure out WHY you need a Custom Rooted Kernel, you SHOULD be smart enough to undo it if you need your device serviced officially. If your device explodes, melts or otherwise disintegrates from its awesomeness I shall NOT be held responsible.
Reposting the Kernel: Please don't repost this kernel anywhere else. Keep the download links intact as I have taken the effort to provide fast links for everyone. If you can't understand English well enough and feel the need to re-post this kernel on a foreign language web site or forum, please let me know first and link to this page... (Google Translate can make it easier to read in your Native Language)
Credits: (Huge props to all the devs I've learned from by reading and studying their code)
Chainfire
Erasmux
Imoseyon
faux123
Ezekeel
franciscofranco
supercurio
hardcore
Hacre
Netarchy
Ninpo
gokhanmoral
Tegrak
Entropy512
cattleprod
alterbridge
Team Overcome
All the hardworking Kernel Devs at lkml.org (Linus Torvalds, Jens Axboe, Mike Galbraith, etc.)
Special Mention to the following:
To my mates at the HyperDroid Dev Team: (who help me test and refine the features of our kernel for our ROM)
Arighi (for the initial guidance on how to get the kernel booting and working & a lot of battery driven patches)
D.O.C. (formerly doctorcete) (for the friendship and being an example of diplomacy in dealing with usual ****storm of questions from users who refuse to search and read)
AF974 (for the Overcome based Recovery that's so bad ass I want to stay in recovery)
petsasj (for his great work on HyperDroidParts and all future Apps that are just pure awesomesauce!)
sicopat (for letting us use his server and helping us out with a lot of things smali)
s2d4 (for testing everything at the risk of the potentially time sucking Soft Brick...)
Kernel Source: https://bitbucket.org/sarcastillo/ultimate-kernel-sgs2
MatrixPills Image by Corinne Wilger. Visit her site HERE.
Last edited: