[Droid Incredible Android Development] tiny4579:
Current Release: 12/20/2012(JB)/10/03/2012(GB+ICS)

Important, Please read: There are now two kernel versions starting with 8/10/2012 release, one for GB+limited ICS(no HWA) support and another for the ICS branch with HWA. Changes will be loggged separately for each kernel type. If you see no changelogs specifically for that type, then there's no release made. For example, 8/10/12 for GB is a continuation of the 3/21 release with none of the post-3/21 kernel ICS changes made.

Update 9/21/12: As of 9/21/12, jellybean is officially supported with the JB specific kernels.

First of all, I started this thread to make commenting and tracking easier for the incredikernel releases following Chad's latest release (8/15/2011).

I also wanted to make a distinction between Chad's initial kernels and the ones I've updated since that release and this is one way to do it. Initially I didn't want to do that but now I regretted not splitting sooner.

If you want the changelog for anything prior to my first kernel please refer to:

Chad's Incredikernel thread

Changelog:

11/30/2013 JB 4.3

Android 4.3 support

synced with updates from Android 4.3 Evervolv kernel

04/25/2013 ICS Sense+JB 4.2

dynamic fsync control

WiFi driver updates

Interactive governor updates - see Tinykernel

Entropy Tweaks

Netfilter updates

New sysfs location for fast charge for broader app compatibility - still compatible with latest incredicontrol

FUSE filesystem support

12/20/2012 JB 4.2 ONLY

add back governors that were removed in 12/15

12/15/2012 JB 4.2 ONLY

enabled UHID support

updated msm_fb for 4.2

12/11/2012 JB ONLY

cpufreq: enable overclocking of 1.15Ghz and 1.19Ghz

numerous interactive and ondemand governor tweaks

cpufreq: send uevent when governor changes

ondemand: boost pulse for JB's powerHAL

10/11/2012 JB ONLY

defconfig: several config changes to fix data usage not working

10/06/2012 JB ONLY

defconfig: enable conservative governor by request

10/03/2012 ICS+JB+GB

defconfig: remove rarely used governors and set max frequency to preventing booting higher than 998mhz

lower default hispeed_freq to 614Mhz

cpufreq: interactive: always limit initial speed bump to hispeed_freq

09/21/2012 ICS+JB+GB

ALL: New Interactive governor

ALL: Built with GCC 4.6 toolchain from Google

GB: interactive governor tweaked for battery

ICS+JB: interactive governor tweaked for butter

JB: genlock patched for JB support

JB: new wifi driver for compatibility with JB ROMs

08/11/2012 ICS+GB

KSM wasn't enabled as it should have been in the last build - fixed that - also nothing needs to be done to enable it on GB as it's on by default

08/10/2012 ICS ONLY

fixed data usage features for ICS

added mamarley's fastcharge USB patch to enable fastcharge without needing to unplug the charger

enabled KSM (Kernel Samepage Merging) - still need to enable in CM settings

08/10/2012 ICS+GB

added mamarley's fastcharge USB patch to enable fastcharge without needing to unplug the charger

07/07/2012 ICS ONLY

Merged in multiple driver updates to support HWA (chad0989)

Updated adreno kernel drivers to latest

added xtqta_guid - for ICS' data usage feature, also seems to have resolved stability issues

Added lazy CPU governor

Added back intellidemand

03/21/2012 ICS+GB

Added lazy CPU governor

02/26/2012 ICS+GB

Smartassv2 default governor for sure - doesn't override ramdisk settings though

new governor lagfree - balance between ondemand and interactive

new I/O scheduler SIO

tweaked deadline for better performance

removed CFQ/BFQ schedulers and smartass, conservative, and interactive govenors (still have interactiveX and smartassv2)

01/03/2012 ICS+GB

Tweak intellidemand and interactiveX governors for battery life

Add ZRAM and swap support and add script to toggle ZRAM - see bottom of OP for more info

SmartassV2 default governor again

12/26/2011 ICS+GB

Added faux123's intellidemand governor (thanks faux123!)

Added imoseyon's interactiveX governor (thanks imoseyon!)

Works on GB and ICS currently

interactiveX may not play nicely with ICS so intellidemand is default

Conservative is disabled, let me know if you need it back

12/08/2011 (Chad) ICS+GB

Added ICS support (limited)

11/27/2011 GB

Use ondemand, performance, and conservative governors from the Android Linux 3.0 kernel

Set minimum voltage back to 800 as the voltages will not go below 800 anyway. Anything lower is placebo effect. This is a hardware limitation.

11/14/2011 GB

Update OJ driver

BT fix for newer CM nightlies

WIFI module updates

Update and re-add BFQ scheduler as well as disable deadline

Ondemand is back

Fixes/Tweaks to ondemand and interactive

10/08/2011 GB

Adjusted smartassV2 parameters for 1GHz processor (originally for 500Mhz device)

10/01/2011 GB

Set smartassv2 to default governor

09/30/2011 GB

Added SmartassV2 governor

Current CPU governors as of the latest release:

SmartassV2

Ondemand

Interactive

Lagfree

Lazy

Technical doc on CPU governors (most of the ones in this kernel anyway)

https://raw.github.com/tiny4579/android_kernel_common/android-2.6.38-incredikernel/Documentation/cpu-freq/governors.txt

Update: 11/30/13 - removed link to incredikernel.com as the site has no content - fully on goo.im now

http://goo.im/devs/tiny4579/inc/kernels

Kernel Source

https://github.com/tiny4579/android_kernel_common

Here are a couple notes if you want to build this kernel from source:

Jellybean kernel branch is android-2.6.38-incredikernel-jb.

ICS kernel branch is android-2.6.38-incredikernel-ics.

Gingerbread kernel branch is android-2.6.38-incredikernel.

The config for the kernel is in arch/arm/configs/incrediblec-incredikernel_defconfig. If you want to switch branches I recommend doing a make incrediblec-incredikernel_defconfig after checking out that branch.

I use the GCC 4.4.3 toolchain for this kernel due to GCC 4.6 causing build issues.