[AT&T Samsung Galaxy S II SGH-I777] Entropy512:
Change Log

3/7/2012 Release:

Default GPU voltages were slightly too high (but not dangerously so) due to misreading some #ifdefs. Adjusted them downwards.

03/05/2012 Release:

3-step GPU voltage control (thanks to gokhanmoral of SiyahKernel)

Extended CPU hotplug tunables (also thanks to gokhanmoral of SiyahKernel) - I didn't bother with Tegrak Second Core support as it offers nothing these tunables don't offer that makes sense

Preliminary support for Xan's ExTweaks tuning app - https://market.android.com/details?id=com.darekxan.extweaks.app (Yes, it currently says SiyahKernel only, but I added support) - use this to tweak the new features

03/04/2012 Release B:

Add GPU voltage control in addition to existing clock control - see http://xdaforums.com/showpost.php?p=23260574&postcount=64 for more

Reduce default sampling_rate of conservative governor from 100ms to 50ms - conservative uses deferred ticks that shouldn't impact cpuidle

03/04/2012 Release:

Readd https://github.com/Entropy512/linux_kernel_sgh-i777/commit/0746aeb285341896877a3adddd79bdaa0cf4a6f6 (disable second core when screen is off)

03/03/2012 Release B:

Readd a couple of cpuidle register restore/saves that were removed by Samsung between the I9100 and Tab 7 Plus sources - Small chance this might be where the SoDs come from.

03/03/2012 Release:

Readd https://github.com/Entropy512/linux_kernel_sgh-i777/commit/373425c3130fbbb67cdae74793bd3df363a5dc04

Remove powersave governor - it's a guaranteed SoD if used and the same results (without SoD) can be achieved by setting conservative with min=max=200 MHz

03/02/2012 Release:

Revert https://github.com/Entropy512/linux_kernel_sgh-i777/commit/3954900055afe0d22a7ce71b50e4a5cb439c24bf - It turns out it's not actually in the mainline tree, and it has had questionable results from users. It may have caused power regressions for shoman94

Readd https://github.com/Entropy512/linux_kernel_sgh-i777/commit/ec9e34085c2e1284b3e30926862161fa63d498ea - Should improve performance a little on devices with "small" memory (compared to PCs, 1GB is "small")

02/28/2012 Release:

Revert https://github.com/Entropy512/linux_kernel_sgh-i777/commit/634b73c2d0b7e156b5c1626fd268662fcaa5fabe again - It was causing severe performance regressions for red5, and was clearly narrowed down to a single patch (red5 swapped between 18B and 26 multiple times, these are adjacent releases that differ by only one patch.)

Readd https://github.com/Entropy512/linux_kernel_sgh-i777/commit/9c10cd423cdcb0039c5f7730076d1f8db9c09442

Reduce minimum polling interval of conservative from 25 msec to 20 msec

Make defaults of conservative governor consistent with battery-optimized tuning - won't affect anyone using SetCPU to tune governors

Initramfs: Clean up cruft that was doing nothing but taking space

Initramfs: Compiled latest CWM 5.0.2.8 from sources - should fix advanced restore

Initramfs: Swap internal/external SD in CWM to be consistent with newer Android standards

02/26/2012 Release:

Readd https://github.com/Entropy512/linux_kernel_sgh-i777/commit/634b73c2d0b7e156b5c1626fd268662fcaa5fabe

02/16/2012 Release B:

PULLED - actual release was identical to 15C due to a mistake in creating the ZIP. - Replaced by 02/18/2012 Release B.

Readd https://github.com/Entropy512/linux_kernel_sgh-i777/commit/3954900055afe0d22a7ce71b50e4a5cb439c24bf (cpuidle: governor: menu: don't use loadavg)

02/16/2012 Release A:

PULLED - actual release was identical to 15C due to a mistake in creating the ZIP. - Replaced by 02/18/2012 Release A. (CWM will report this as 2/17A - ignore this, CPUSpy should report afternoon in 2/18)

Readd https://github.com/Entropy512/linux_kernel_sgh-i777/commit/4d8a7e7834e29cee232d6634454c0c38e9903d49 (Add MSHCI Power Control)

02/15/2012 Release C:

Fixes to multiple drivers that were attempting to lock frequency to certain levels. On an overclock kernel, these were all two frequency steps higher than originally intended:

Application-controlled lock in kernel/power/main.c - Likely this combined with arighi's frequency scaling patch was the cause of most 2/7 stability issues

Camera locking to 1.2 GHz is fixed

Thermal limits (reducing clock frequency while overheating) was broken, should now work properly

02/15/2012 Release B:

Readds the following patches, should be safe:

https://github.com/Entropy512/linux_kernel_sgh-i777/commit/35187426d15d05d465d07b6d743e1eb37c629a24 - small network performance improvement

https://github.com/Entropy512/linux_kernel_sgh-i777/commit/733758d888e4a23d7ae6487de0dbb525e9d7433c - another small network performance improvement

https://github.com/Entropy512/linux_kernel_sgh-i777/commit/325cdbf1b89e7d2138482e76879fabf9a6dac5b7 - Provide a warning when a broken firmware is preventing proper wifi power management

02/15/2012 Release A:

Revert most patches from 1/30 and 2/07 due to stability issues EXCEPT:

BTHID interoperability fix

MFC/new cpuidle interoperability fix

A BCM4330 patch revert (it was a revert to begin with)

There will be a second "B" release containing patches that I think should be safe stability-wise but want to have separated anyway. After that, I will be making releases 1-2 times a day, each with only one new patch. This will allow the offending patches for recently reported stability problems to be identified. As a result, releases will have A/B/C/etc letter codes after the date until I no longer expect multiple releases per day. Until the stability issues are resolved, Experimental releases are suspended.

02/07/2012 Release:

Lock out AFTR during hardware accelerated video playback - should fix issues with hwaccel video that some people had with 1/29 and later

Disables second core when the screen is off (this patch comes from arighi)

A patch from arighi ("smooth scaling") that prevents the performance governor from getting "stuck" at the wrong frequency, and should make ondemand a bit more responsive

Small cpuidle governor fix from mainline

Revert a wifi patch that did nothing at all if you read the code

Print an error in dmesg when suspend handling in the wifi driver is blocked by the system firmware for whatever reason (XXKI3 does this) - System firmwares that do this will make you vulnerable to battery drain on "dirty" networks (ARP spam, broadcast traffic)

Small performance patch by Russell King of ARM (see github for details)

Standard only for now - will release experimental in a day or two

Warning - This doesn't have as much testing as I normally put into a kernel, but I needed to get a cpuidle fix out ASAP in my opinion

1/30/2012 Releases:

Backport Bluetooth HID fixes from Epic 4G Touch EL29 sources - Seems to fix Bluetooth HID on UCKK6, should also fix it on newer I9100 bases

Backport a power management change (MSHCI power control) from E4GT EL29 - Actually, I think this is something that was in the AT&T drop and I9100 Update3 removed

ashmem deadlock fix - might fix nizda1's issue (unknown, I thought I had this in already but I guess I didn't) - found by arighi

Tweak from arighi - set SLUB_MAX_ORDER to 0 since our device doesn't have ginormous amounts of RAM

Increase TCP initial receive and congestion windows - should improve throughput on new TCP connections (such as web page loads)

Remove a small dmesg spam introduced by the cpuidle backport

Add ARM Errata 753970 (bugfix)

1/29/2012 Releases:

Backported cpuidle driver from the Tab 7 Plus - Allows AFTR idle to be entered more often, enables it my default, and permits it to be tracked separately from LPA idle mode.

Reverted some small I9100 changes to GPIO configurations - These changes may do nothing, the functions of these GPIOs are undocumented but appear to be somehow sleep related. See github commit for details

1/24/2012 Releases:

Include tun.ko

The above change is so small I'm removing the 1/23 download

1/23/2012 Releases (Note: Experimental might not actually be posted until 1/24):

Enable building for I9100 targets (source code change only, see github)

Revert some unnecessary patches from arighi's tree, prep for implementing more useful ones

A pile of upstream Linux kernel bugfixes, huge thanks go to myfluxi for finding these and testing them on himself: https://github.com/myfluxi/xxKernel

Bring in two small missing updates from I9100 update3 sources

Enable separate debugging of wake_lock_destroy() to enable diagnosing high deleted_wake_locks time

1/2/2012 Releases:

Road to I9100 Update3: COMPLETE - Video changes, media changes, battery/PMIC changes, Samsung-specific arch/arm changes

Road to I9100 Update3: Revert touchscreen drivers to I777 source codebase. SiyahKernel also did this, it seems to solve the wake lag issues. However those that didn't encounter lag may see reduced responsiveness. There's a possible workaround though.

12/21/2011 Releases:

Road to I9100: USB Host (untested), Touchkey, Broadcom DHD (Bluetooth, WiFi)

Initramfs: Bring in a few updates from UCKK6. Might fix wifi for KK6 people (UCKK6 compatibility UNTESTED.)

12/12/2011 Releases:

Road to I9100: Touchscreen Drivers

Irrelevant Road to I9100: DPRAM, WiMax, staging drivers

12/8/2011 Releases:

Resume dual-release standard (2.6.35.7) and experimental (2.6.35.14) builds - note exp does NOT fix the AOS bug, just hides it - see http://git.kernel.org/?p=linux/kern...it;h=a3fe22ee824895aafdc1b788e19c081a2e6dd9da

Remove some debugging printk()s from the AFTR cpuidle driver for those who enable AFTR deep idle mode (see init.d scripts thread linked below)

More components of I9100 update3 sources - MMC, filesystem, and generic arch/arm changes

Removed filesystem I/O scheduler tweak script from initramfs - this belongs as a separate init.d script. See http://xdaforums.com/showthread.php?t=1378080 for this script's new home along with other scripts

Enable compilation of FUSE module. Combined with an ntfs-3g binary this should allow people who want to mount NTFS drives with OTG cables to do so. I cannot provide any additional support for this though - no OTG cable

12/1/2011 Release:

Disable interactive governor - it was causing kernel panics in LPM (e.g. reboot to normal poweron when power-off charging), too much risk of it causing a panic during normal operation so it's gone

Two small fixes, one to MMC power management and one to cpuidle - see github for details

Per-file fsync disable - see HERE BE DRAGONS post #4 and USE AT YOUR OWN RISK

First step of patching up to Samsung I9100 update3 sources - New sound drivers. Please focus on sound until the next release.

11/23/2011 Release:

BLN from Ninphetamine - WARNING: An active BLN notification WILL drain your battery by holding a wakelock. Also, you need to install a compatible liblights if your ROM doesn't already have it. VillainROM 3.0 has it, I'll try to post a library and installation instructions after the Thanksgiving weekend ends

Permissions changes for /data/misc/wifi that allow tethering settings to persist on Hellraised ROMs (EDIT: Not working for fresh flashes... Maybe not working at all. what the **** is overriding the perms?)

Enabled Interactive governor in defconfig. drowningchild says it's stable - I tend to be paranoid when it comes to governors

11/13/2011 Release:

Upgrade to CWM 5.0.2.7 pulled from Cyanogenmod 7 nightly 12 - adds nandroid backup/restore to external SD - advanced restore from extSD not working yet, also CWM labels external SD as "internal"

11/10/2011 Release:

Removed automatic root injection from the initramfs - It causes too many problems. Flash ChainsDD's Superuser package from CWM instead.

11/03/2011 Release:

Fix for wifi tethering on I9100 ROMs

Bump up TCP buffer sizes in initramfs to match that of the Infuse - may help network performance in some cases

Experimental (2.6.35.14) releases discontinued until further notice - They provided no discernible benefit, and hid the infamous "AOS Bug" making it harder to diagnose. (It did not fix the drain)

10/20/2011 Releases:

Fix for fuel_alerted perma-wakelocks

GPU clock control, same method as Ninphetamine - see Ninphetamine kernel for documentation. Completely untested other than that the default values don't change or break anything. Same rules as for my overclock code... Credit goes to Netarchy for this, it's his git commit 100%

10/16/2011 Releases:

Make root injection script less aggressive

NFS modules in initramfs - note that they must be insmodded in a specific order: sunrpc.ko, lockd.ko, then nfs.ko

Miscellaneous bugfixes, see git

10/13/2011 Releases:

Make root injection script in initramfs less aggressive

10/09/2011 Releases:

Update root injection script to install su-3.0 - Still need work on this to make it more robust when su updates again.

Misc. fixes from codeworkx's CM7 tree and Ninphetamine

Start of Experimental dual-release series - Experimental updates base to 2.6.35.14 using arighi's patches

10/07/2011 Releases: (There were multiple, but as their files are no longer posted I'm merging it into one changelog entry)

Conservative tuning patch no longer considered experimental

/system/etc/init.d support in initramfs

Overclocking/Undervolting implementation by codeworkx - USE AT YOUR OWN RISK. DO NOT REPORT BUGS OR PROBLEMS IF YOU ARE OVERCLOCKING OR UNDERVOLTING. IF YOU EXPERIENCE ANY STABILITY PROBLEMS, DISABLE ALL OC/UV

Standard bootanimation support

10/06/2011 Experimental Release:

netarchy's conservative governor tuning patch - should improve responsiveness of devices when using the conservative governor

10/06/2011 Release:

Automatic root injection in initramfs

Filesystem readahead tweaks in initramfs

netarchy's Sleep of Death fix

Battery charge current monitoring (CurrentWidget) support - only reports charge current and not discharge, and reports a value 2.85 times the actual current. Use CurrentWidget's "operation on value" to divide by 2.85.

Miscellaneous bugfixes pulled from Ninphetamine sources - see github for details

Initial Release: 10/04/2011

codeworkx's cpuidle patch - should improve battery life a bit. In most cases it will likely not improve things much, but in rare cases it will result in significant improvements. (I only have one partially-reproducible test case on the Infuse so far)

JHash 3

BFQ I/O scheduler

CIFS module in initramfs

CWM 5.0.2.3 from Codeworkx's CWM kernel

CPU governor set to Conservative by default to conserve some battery - this will make your device slightly less responsive, use SetCPU or a similar app to return to ondemand if you want it

"Insecure" kernel - ADB sessions ALWAYS have root