• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[KERNEL] Fancy Kernel r60 [Android JB+KK] [F2FS/EXT4] [Linux 3.0.101+] [OCT-24-2014]

Search This thread

boype

Senior Member
Apr 27, 2012
1,020
9,072
Düsseldorf

fancy-threadlogo-new3.png

Hi and welcome to fancy kernel. My name is Boy Petersen and I'm building this kernel with the following three main goals: good battery life, reliability and a smooth and snappy user experience.



Feature list:


  • Based upon:
    • latest AOSP/CM11 kernel source
    • selected Cyanogenmod patches
    • Latest Linux 3.0 version (3.0.101)
    • selected patches from the device's chipset vendor Texas Instruments
    • selected patches from Google
    • selected backport-patches from Linux 3.4

  • CPU:
    • CPU frequencies: 224, 384, 537, 729, 1036, 1228, 1344, 1420, 1536 MHz (default on boot: 224 - 1228)
    • control to set a minimum CPU frequency for screen-on (default: 384 MHz)
      • Will help with smoothness and responsiveness when you use the phone. When screen is off, however, 224 MHz frequency is used as well.
    • CPU governors: ondemandplus (more info), interactive (default), ondemand, powersave, performance
      • ondemandplus is an ondemand- and interactive-based governor that has additional power-saving capabilities while maintaining very snappy performance.
    • ARM CPU topology: multi-core scheduling (enabled by default; saves battery by scheduling load among the CPU cores; more info)
    • temperature control

  • GPU & Display:
    • GPU frequency control: 307, 384 (default), 512 MHz
    • color, contrast and gamma contols
    • sane and natural looking color settings

  • I/O & memory:
    • F2FS support
    • ASRAM memory reclaim, giving you 744mb available RAM with a fully functional device
    • I/O schedulers: SIOplus (default), deadline, noop, row, bfqv5, cfq
    • updated HSMMC & OMAP4 NAND drivers (improve disk performance)
    • tuned LPDDR RAM timings (+10% throughput; more info)
    • optimized ext4 mountings
    • Android 3.4 low memory killer
    • ultra kernel samepage merging (UKSM; enabled by default)
    • fsync toggle
    • zRAM from 3.7 kernel (with fast LZ4 compression)
    • improved memory handling routines (memset, memzero, ...)
    • switch to disable the MMC CRC checking (more info)


  • Misc:
    • custom voltage control
    • fast charge
    • vibration strength control
    • sound control (high performance sound, volume boost)
    • battery life extender (BLX)
    • various performance and battery life tweaks
    • init.d support (no matter if the ROM supports it or not)
    • elevated systemui priority
    • module support (for slide2wake / PGM, e.g.)

  • more things... go check the source if you're interested.
  • compiled with Google GCC 4.7 toolchain (from Android NDK r9)
  • optional anykernel2 package by osm0sis for Android 4.3 and 4.2 compatibilty


Download links:


Major release for Android 4.2/4.3/4.4 (latest version: r60)
  • IMPORTANT: Please read this post to find out which of the two files (fixed RAMdisk or anykernel2) you need!


  • md5sum: 6b97f24357137d91768ad8c4d245e894


  • md5sum: 0927620e85648bb98f910ac95e9bc74b
__________________________________________________



Older versions
__________________________________________________



Notes:

  • Compatible to:
    • all Galaxy Nexus devices (maguro, toro, toroplus)
    • all Android 4.2, 4.3, 4.4 based ROMs
    • both EXT4 and F2FS filesystems
  • Installation:
    • Flash the provided zip file with TWRP or CWM. If you're in doubt which file (fixed RAMdisk or anykernel2) is the right one for you, read this post
  • Having problems? Please give informative feedback, so that I or other users can understand what exactly is wrong and under which circumstances.

Changelog:


r59 >> r60
  • cpufreq: ondemandplus: adaptive timer_rate improvements (fixed some code of which I long knew it wasn't that good. The governor feels a little more responsive now)
  • tuna: very slightly relax ram timings (few users reported some instabilities which have been fixed by this)
  • reenable HDMI mirroring on GNexus portrait dock
  • ramdisk: replace new charger binary with previous one (-> charging percentage display works again)
  • ramdisk: retry moving systemui to parent task group 10 times (may help with the issue it stays in the "apps" group, as someone reported)

Click for full change log


Knowledge-base:


  • Most settings can be controlled with kernel settings apps. Trickster MOD fully supports fancy kernel. With it you can control:
    • CPU min frequency
    • CPU max frequency
    • CPU max screen-off frequency
    • CPU min screen-on frequency
    • GPU frequency
    • CPU governor
    • CPU governor tunables
    • I/O scheduler
    • read-ahead buffer
    • TCP congestion algorithm
    • CPU multi-core scheduling
    • fast charge
    • sound control
    • battery life extender
    • fsync
    • vibration strength
    • custom voltage
    • temperature control
    • color, contrast, gamma, content-adaptive brightness
    • zRAM



Chit-chat:


  • What ROM / computer OS am I running?
    • People ask me this sometimes. On my Galaxy Nexus, I'm running Cyanogenmod 11 Nightlies and obviously Fancy Kernel. On my home PC (my Android build environment), I'm running Ubuntu 13.10.

  • Why did I name it 'fancy kernel'?
    • Because I do not want to use some random fancy name, but somehow have to give the kernel a name that is easily remembered. So after some self-irony involvement, I picked this ****ty name :>

  • What is so special about this kernel?
    • It offers superb battery life with a smooth and stable user experience. I am aware that all kernels claim that. Just try, see for yourself and report back. Innovations of this kernel are e.g. the screen-on min frequency setting, the ondemandplus governor and the SIOplus scheduler, since I implemented them myself. Also, I wanted many other improvements that exist across the several great kernels around XDA. After all, this kernel is based on other people's work for like 95 percent (like most kernels are).

  • Why did I build this Kernel initially?
    • Well that's rather easily answered. I used to use Franco kernel (which I really liked), but I wanted a kernel for myself which fits exactly to my needs. In particular, I especially wanted working hotplug, GPU OC controls, the option to set a minimum screen-on frequency and several hardcoded settings.
      Oh, and yes: I built the kernel because I had fun doing so. But be not mistaken that I am a 'playaround kid': I dislike pulling in every little mod someone made. What I want is stability.
      After some time I realized hotplugging would not be stable. After that I wrote the ondemandplus governor to save battery.

  • Why did I release it if I built it for myself?
    • I did not plan to release it at first. But I decided to release it since there was this one new feature (as named before: the screen-on min frequency control). I thought 'maybe it can contribute to others as well.' Also, maybe people like my compilation. Sharing is caring :>

  • Announcement:
    • The thread now has more than 1.000.000 hits! This is awesome, thank you for your interest!


Credits for code: Cyanogenmod, Google, kernel.org, Texas Instruments
bsmitty83, edoko, Ezekeel, faux123, franciscofranco, gokhanmoral, gwindlord, Huexxx, imoseyon, mpokwsths, osm0sis & Franco Dev Team, TeamHorizon


Credits for the Fancy Updater app: Parthipan Ramesh

Credits for the logo/artwork: DaNi_!


Source (including defconfig and RAMDISK): https://github.com/boype/kernel_tuna_kk44


A shout-out to the donators who help me pay the file hosting and buy me beer: 1haumann1, aaamador, agritux (2x), akaria, Bastian L., bigknowz, Blackcrx, creeve4, Fabio A., Ferhat Uğur C., James F., jsage, kuyam, Lancez, mpokwsths, n2rjt, nailz420 (2x), okanb3, omid900, rcozzi, Taomyn, teleplasma


Do you like my work? Hit 'thanks' and/or rate this thread with 5 stars.
Has my work improved your user experience? Consider a small donation.


Please do not PM me with questions, post in the thread instead.


XDA:DevDB Information
[KERNEL] Fancy Kernel r60 [Android JB+KK] [F2FS/EXT4] [Linux 3.0.101+] [OCT-24-2014], Kernel for the Samsung Galaxy Nexus

Contributors
boype
Kernel Special Features:

Version Information
Status: Stable
Current Stable Version: r60
Stable Release Date: 2014-10-24

Created 2014-10-12
Last Updated 2014-10-24
 
Last edited:

GeekMcLeod

Senior Member
Apr 27, 2012
1,500
795
Niagara Falls
I usually stick with a couple certain kernels, because every time I try one outside of my 'safe' kernels, they don't play nice with my device.

I've decided to give this kernel a chance, mainly because it's new and I have the day off to test it out.
 
  • Like
Reactions: fedelamb and boype

dratif

Senior Member
May 1, 2012
728
293
islamabad
Re: [KERNEL][4.2] Fancy Kernel (Rel. #1) (JAN-24-2013)

Who knowz m not becoming a part of a great thread in the future..lets try this out:)

Sent from my Galaxy Nexus using xda premium
 

GeekMcLeod

Senior Member
Apr 27, 2012
1,500
795
Niagara Falls
Running it now at 192/1420 with 537 as max screen off. Pegasusq and bfq. GPU = 384 and SR remains on.

Can't tell how battery life is, as I just installed it. Charging phone back to 100 right now.
It is very smooth and responsive from what I've done so far though. Going to keep with this kernel for a couple days, see how it compares to my fall back, LeanKernel + Tweaks. So far, so good though.
 
  • Like
Reactions: boype

thebogy

Senior Member
Sep 15, 2010
133
15
bandung
Re: [KERNEL][4.2] Fancy Kernel (Rel. #1) (JAN-24-2013)

Wow, sound great :D
So, Can i flash it over stock 4.2.1 ?
 
  • Like
Reactions: Ci-Fi

pageniao

Senior Member
Nov 22, 2011
274
137
wuzhou
Re: [KERNEL][4.2] Fancy Kernel (Rel. #1) (JAN-24-2013)

great kernel !
keep it:thumbup:

Sent from my Galaxy Nexus using xda premium
 
  • Like
Reactions: faleev1981

pageniao

Senior Member
Nov 22, 2011
274
137
wuzhou
Re: [KERNEL][4.2] Fancy Kernel (Rel. #1) (JAN-24-2013)

yes.

Sent from my Galaxy Nexus using xda premium
 

Gafanhotz

Inactive Recognized Contributor
Sep 7, 2011
1,171
1,055
I'll give it a try but won't stick with it until an Stable release of CM10.1 is available, because I'm updating at every 3 nightlies and this kernel with an stable release of CM10.1 should be a monster. (and obviously I don't want to reflash it every new nightly.)
 
Last edited:

dratif

Senior Member
May 1, 2012
728
293
islamabad
Re: [KERNEL][4.2] Fancy Kernel (Rel. #1) (JAN-24-2013)

I would be regularly sharing my experience about this kernel..really smooth undoubtedly.. Just had first SoD..

Sent from my Galaxy Nexus using xda premium
 

odin13

Senior Member
Dec 11, 2007
1,146
359
near amsterdam
Re: [KERNEL][4.2] Fancy Kernel (Rel. #1) (JAN-24-2013)

I would be regularly sharing my experience about this kernel..really smooth undoubtedly.. Just had first SoD..

Sent from my Galaxy Nexus using xda premium

On which governor? Default settings? Did you UV? Some more info please :D

Verstuurd van mijn Galaxy Nexus met Tapatalk
 

xTremePower

Senior Member
Aug 25, 2007
329
74
Carcassonne
www.facebook.com
Re: [KERNEL][4.2] Fancy Kernel (Rel. #1) (JAN-24-2013)

Hy

I want to try this new kernel,
But i dont see volume boost in the features list, it's just missing in changelog, or no volume boost inside ?

Thanks ;)

Sent from my Galaxy Nexus using xda premium
 

justme1988

Senior Member
Jan 13, 2011
133
26
Re: [KERNEL][4.2] Fancy Kernel (Rel. #1) (JAN-24-2013)

Just flashed this kernel. The speed seems to be really great! I hope the battery life is equal to this

Verstuurd van mijn Galaxy Nexus met Tapatalk
 

Top Liked Posts

  • There are no posts matching your filters.
  • 598

    fancy-threadlogo-new3.png

    Hi and welcome to fancy kernel. My name is Boy Petersen and I'm building this kernel with the following three main goals: good battery life, reliability and a smooth and snappy user experience.



    Feature list:


    • Based upon:
      • latest AOSP/CM11 kernel source
      • selected Cyanogenmod patches
      • Latest Linux 3.0 version (3.0.101)
      • selected patches from the device's chipset vendor Texas Instruments
      • selected patches from Google
      • selected backport-patches from Linux 3.4

    • CPU:
      • CPU frequencies: 224, 384, 537, 729, 1036, 1228, 1344, 1420, 1536 MHz (default on boot: 224 - 1228)
      • control to set a minimum CPU frequency for screen-on (default: 384 MHz)
        • Will help with smoothness and responsiveness when you use the phone. When screen is off, however, 224 MHz frequency is used as well.
      • CPU governors: ondemandplus (more info), interactive (default), ondemand, powersave, performance
        • ondemandplus is an ondemand- and interactive-based governor that has additional power-saving capabilities while maintaining very snappy performance.
      • ARM CPU topology: multi-core scheduling (enabled by default; saves battery by scheduling load among the CPU cores; more info)
      • temperature control

    • GPU & Display:
      • GPU frequency control: 307, 384 (default), 512 MHz
      • color, contrast and gamma contols
      • sane and natural looking color settings

    • I/O & memory:
      • F2FS support
      • ASRAM memory reclaim, giving you 744mb available RAM with a fully functional device
      • I/O schedulers: SIOplus (default), deadline, noop, row, bfqv5, cfq
      • updated HSMMC & OMAP4 NAND drivers (improve disk performance)
      • tuned LPDDR RAM timings (+10% throughput; more info)
      • optimized ext4 mountings
      • Android 3.4 low memory killer
      • ultra kernel samepage merging (UKSM; enabled by default)
      • fsync toggle
      • zRAM from 3.7 kernel (with fast LZ4 compression)
      • improved memory handling routines (memset, memzero, ...)
      • switch to disable the MMC CRC checking (more info)


    • Misc:
      • custom voltage control
      • fast charge
      • vibration strength control
      • sound control (high performance sound, volume boost)
      • battery life extender (BLX)
      • various performance and battery life tweaks
      • init.d support (no matter if the ROM supports it or not)
      • elevated systemui priority
      • module support (for slide2wake / PGM, e.g.)

    • more things... go check the source if you're interested.
    • compiled with Google GCC 4.7 toolchain (from Android NDK r9)
    • optional anykernel2 package by osm0sis for Android 4.3 and 4.2 compatibilty


    Download links:


    Major release for Android 4.2/4.3/4.4 (latest version: r60)
    • IMPORTANT: Please read this post to find out which of the two files (fixed RAMdisk or anykernel2) you need!


    • md5sum: 6b97f24357137d91768ad8c4d245e894


    • md5sum: 0927620e85648bb98f910ac95e9bc74b
    __________________________________________________



    Older versions
    __________________________________________________



    Notes:

    • Compatible to:
      • all Galaxy Nexus devices (maguro, toro, toroplus)
      • all Android 4.2, 4.3, 4.4 based ROMs
      • both EXT4 and F2FS filesystems
    • Installation:
      • Flash the provided zip file with TWRP or CWM. If you're in doubt which file (fixed RAMdisk or anykernel2) is the right one for you, read this post
    • Having problems? Please give informative feedback, so that I or other users can understand what exactly is wrong and under which circumstances.

    Changelog:


    r59 >> r60
    • cpufreq: ondemandplus: adaptive timer_rate improvements (fixed some code of which I long knew it wasn't that good. The governor feels a little more responsive now)
    • tuna: very slightly relax ram timings (few users reported some instabilities which have been fixed by this)
    • reenable HDMI mirroring on GNexus portrait dock
    • ramdisk: replace new charger binary with previous one (-> charging percentage display works again)
    • ramdisk: retry moving systemui to parent task group 10 times (may help with the issue it stays in the "apps" group, as someone reported)

    Click for full change log


    Knowledge-base:


    • Most settings can be controlled with kernel settings apps. Trickster MOD fully supports fancy kernel. With it you can control:
      • CPU min frequency
      • CPU max frequency
      • CPU max screen-off frequency
      • CPU min screen-on frequency
      • GPU frequency
      • CPU governor
      • CPU governor tunables
      • I/O scheduler
      • read-ahead buffer
      • TCP congestion algorithm
      • CPU multi-core scheduling
      • fast charge
      • sound control
      • battery life extender
      • fsync
      • vibration strength
      • custom voltage
      • temperature control
      • color, contrast, gamma, content-adaptive brightness
      • zRAM



    Chit-chat:


    • What ROM / computer OS am I running?
      • People ask me this sometimes. On my Galaxy Nexus, I'm running Cyanogenmod 11 Nightlies and obviously Fancy Kernel. On my home PC (my Android build environment), I'm running Ubuntu 13.10.

    • Why did I name it 'fancy kernel'?
      • Because I do not want to use some random fancy name, but somehow have to give the kernel a name that is easily remembered. So after some self-irony involvement, I picked this ****ty name :>

    • What is so special about this kernel?
      • It offers superb battery life with a smooth and stable user experience. I am aware that all kernels claim that. Just try, see for yourself and report back. Innovations of this kernel are e.g. the screen-on min frequency setting, the ondemandplus governor and the SIOplus scheduler, since I implemented them myself. Also, I wanted many other improvements that exist across the several great kernels around XDA. After all, this kernel is based on other people's work for like 95 percent (like most kernels are).

    • Why did I build this Kernel initially?
      • Well that's rather easily answered. I used to use Franco kernel (which I really liked), but I wanted a kernel for myself which fits exactly to my needs. In particular, I especially wanted working hotplug, GPU OC controls, the option to set a minimum screen-on frequency and several hardcoded settings.
        Oh, and yes: I built the kernel because I had fun doing so. But be not mistaken that I am a 'playaround kid': I dislike pulling in every little mod someone made. What I want is stability.
        After some time I realized hotplugging would not be stable. After that I wrote the ondemandplus governor to save battery.

    • Why did I release it if I built it for myself?
      • I did not plan to release it at first. But I decided to release it since there was this one new feature (as named before: the screen-on min frequency control). I thought 'maybe it can contribute to others as well.' Also, maybe people like my compilation. Sharing is caring :>

    • Announcement:
      • The thread now has more than 1.000.000 hits! This is awesome, thank you for your interest!


    Credits for code: Cyanogenmod, Google, kernel.org, Texas Instruments
    bsmitty83, edoko, Ezekeel, faux123, franciscofranco, gokhanmoral, gwindlord, Huexxx, imoseyon, mpokwsths, osm0sis & Franco Dev Team, TeamHorizon


    Credits for the Fancy Updater app: Parthipan Ramesh

    Credits for the logo/artwork: DaNi_!


    Source (including defconfig and RAMDISK): https://github.com/boype/kernel_tuna_kk44


    A shout-out to the donators who help me pay the file hosting and buy me beer: 1haumann1, aaamador, agritux (2x), akaria, Bastian L., bigknowz, Blackcrx, creeve4, Fabio A., Ferhat Uğur C., James F., jsage, kuyam, Lancez, mpokwsths, n2rjt, nailz420 (2x), okanb3, omid900, rcozzi, Taomyn, teleplasma


    Do you like my work? Hit 'thanks' and/or rate this thread with 5 stars.
    Has my work improved your user experience? Consider a small donation.


    Please do not PM me with questions, post in the thread instead.


    XDA:DevDB Information
    [KERNEL] Fancy Kernel r60 [Android JB+KK] [F2FS/EXT4] [Linux 3.0.101+] [OCT-24-2014], Kernel for the Samsung Galaxy Nexus

    Contributors
    boype
    Kernel Special Features:

    Version Information
    Status: Stable
    Current Stable Version: r60
    Stable Release Date: 2014-10-24

    Created 2014-10-12
    Last Updated 2014-10-24
    87
    r35 up

    Hi all,

    after a very sunny week on the beach I finally got to build and release r35. Even though I did not post very much in the thread, I followed all the comments. r35 is pretty similar to pre35-06, which was reported to run really good. Here's the change log:

    • updated Linux to version 3.0.86
    • reverted "lowmemorykiller: Use asynchronous compaction when killing processes" (fixes SODs that were introduced with r34)
    • introduce Tuna optimized VMSPLIT of 2.5G/1.5G (what I used to call 'memory mapping optimization')
    • updated LZO compression to current upstream version
    • reverted a few commits that may have been responsible for higher battery drain
    • re-introduced 3.4 lowmemorykiller (rest of the staging driver stays 3.0 though!)
    • RAMdisk: fix interactive boostpulse permissions (thx to franco-c)
    • RAMdisk: tweak TCP buffer sizes the AOSP way (thx to franco-c)

    Best regards!
    86
    Hey folks, it's been some time since I last checked in here.

    First of all: sorry for my long absence, but many things in my life changed and this was a classic 'first things first' situation for me.
    I have moved to a new city, got a good job and had to do many things that go along with these things.

    Second: thanks to charamacas for posting a few updates on my situation here.


    I'm planning on making an update on the upcoming weekend. for the sake of kitkat compatibility and boosting the sources to the latest Linux version, that is. Probably I'll also implement some new stuff that was introduced elsewhere while I was away, I'll try to find out what is a good addition and think about it.

    I'm currently still on cm10.2 from mid-september and have not rebooted my phone for over a month ;)


    Best,
    boype
    79
    r32 up

    Hi all,

    r32 is now available. Here's the change log:

    • updated to Linux 3.0.83
    • enable trim_override to allow >= 1.4Ghz frequencies without lagging the device (credits to francisofranco)
    • removed simple GPU governor (it wasn't working as it should. You can still pick from 307, 384 and 512 MHz like you can on other kernels)
    • several mostly power management related fixes and also a cache tweak from Texas Instruments
    • SIOplus/deadline: Allow 0ms deadline latency
    • implement temperature control (extended version only; credits to imoseyon)
    • WiFi drop workaround improvement (no need to disable / enable WiFi manually anymore)
    • switched compiler toolchain to Linaro Android GCC 4.7 (current version: 13.05)
    • few other things

    As you can see, I switched the toolchain. While I said earlier that Google's toolchain is supposed to be very stable, Linaro's should be equally stable. Plus it gives builds with better performance (e.g. in some 3D applications) and is updated more frequently.


    Enjoy and best regards!
    78
    r44 (Android 4.4)

    Hi all,

    it has arrived ;) Change log:

    • updated kernel tree and RAMdisk from Cyanogenmod repo for Android 4.4 compatibility
    • updated Linux to 3.0.101
    • change default governor to interactive (it's an awesome governor and is maintained by google on a regular basis)
    • slightly modified default colors, since I came to notice there was a green tint
    • BIGMEM: increase GFX VRAM to stock 16MB again (apparently less problems for bigmem versions; this was already there in the pre-44 versions)
    • removed standalone busybox binary from RAMdisk. Therefore, it is absolutely necessary to have a ROM with busybox pre-installed (all custom ROMs have this, even most stock ROM repacks)


    Note: I assume it is compatible with all Android 4.4 ROMs, but I only tested with CM11. Reports for compatibility on other ROMs are welcome.

    I'm currently pushing the new sources to github... Should not take too long, since my upload is 10 times higher than before :D

    I might also be building an updated 4.3 version in the following days - but we'll see about that.


    Merry christmas to all of you (at least to those who actually celebrate it ;))