Search This thread

faux123

Senior Member
Dec 16, 2010
8,536
34,426
West Los Angeles
www.canonspike.com
Kernel Files:

Change Log: http://faux.androidro.ms/pyramid/ics/changelog.txt

******* LATEST BETA By YANK555 with AROMA! Ice Cream Sandwich (Android 4.0.x) ******* (Linux 3.0.37)
[ CFS ] (Ultimate Edition)

http://forum.xda-developers.com/showpost.php?p=29072369&postcount=7579

******* Ice Cream Sandwich (Android 4.0.x) ******* (Linux 3.0.42)
[ CFS ] (Ultimate Edition)

The File ==> Sensation Kernel (1.73 GHz, GPU @ 320MHz, ZRAM) <==

******* Gingerbread (Android 2.3.x) ******* (Linux 2.6.35.14)
[ CFS ] (Mainline Edition)
The File ==> Sensation Kernel 029 (1.73 GHz, ZRAM) <==

[ CFS ] (Ultimate Edition - should work with most phones but NOT GUARANTEED!)
The File ==> Sensation kernel 029 (1.73 GHz, ZRAM, ZCACHE, GPU @ 320MHz) <==

[ Optional: ]

[ For Kernel Devlopers ONLY: ]

The File ==> My Global VDD_TABLE for under volt patch <==
The File ==> KGSL Ring Buffer Power Management Patch for Cordy and Ninja Jump <==


Optional Under voltage: Version 0.1.4+ ONLY

Code:
[ to over volt ALL frequencies by 25000 uv (microvolts) ]
echo "+25000" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
[ to under volt ALL frequencies by 25000 uv (microvolts) ]
echo "-25000" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels

[ to set a specific frequency (ie 1.18 GHz) 
  with a specific voltage (ie 1.0875 volts) ]
echo "1188000 1087500" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
CPU Frequency Voltage Table Example
Code:
  192000:   812500
  310500:   812500
  384000:   812500
  432000:   812500
  486000:   837500
  540000:   850000
  594000:   862500
  648000:   875000
  702000:   900000
  756000:   925000
  810000:   937500
  864000:   962500
  918000:   962500
  972000:   962500
 1026000:   975000
 1080000:   987500
 1134000:  1000000
 1188000:  1012500
 1242000:  1025000
 1296000:  1050000
 1350000:  1075000
 1404000:  1100000
 1458000:  1112500
 1512000:  1125000
 1566000:  1150000

Optional: Stock Clock Frequencies for Dual CPUs
Code:
su
echo 192000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo 1188000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

echo 1 > /sys/devices/system/cpu/cpu1/cpufreq/online
echo 192000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo 1188000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq

Optional: ZRAM (Compressed RAM swap space :D )
Code:
su
mkswap /dev/block/zram0
swapon /dev/block/zram0

Low Voltage - Under Volt the processor, therefore uses Less Battery, but NOT ALL CHIPS can handle Under Volt.. If you experience instability, try the Stock Voltage Version.

Stock Voltage - Uses the voltage values from ORIGINAL HTC Kernel Source.

There are NO PERFORMANCE DIFFERENCE between the Under Volted and Stock Voltage versions!

Installation Instructions:

Here's a step by step instruction to install this kernel:

1. download the above file (via phone directly or to a PC)
2. copy the downloaded zip file to /sdcard/download/
3. Open ROM Manager and select "Reboot into Recovery" and select "OK"
4. Once in recovery, select "wipe cache partition", select "Yes", then select "advanced", then select "Wipe Dalvik Cache", then select "Yes" again. Once finished, click the back button to go back to the main recovery menu. On that menu, select "Install Zip From SDCad", then select "Choose zip from SDCard", then go to /sdcard/download and select the downloaded zip file and let it run its script.
5. Once the script is done, select "reboot system now"

Note: After FLASHING, the first reboot may take longer than usual, please be patient... After the first reboot, it may lag during initial load (let everything finish loading). Once everything is loaded and phone is ready for use, reboot the phone a 2nd time and the lag will be gone and everything should be silky smooth...


Standard Disclaimer: Not responsible for bricking your phone, voiding your warranty, or any other pain or suffering you may feel as result of using this kernel!!!

My Github Complying with GPL and XDA rulez :D

Follow me on :

If you find this Kernel useful, feel free to hit the [Thanks] button below

androidrevteam1faux123.png
SfL1q.png
 

Attachments

  • snap20111023_223318.jpg
    snap20111023_223318.jpg
    68.4 KB · Views: 38,567
  • snap20111024_022109.jpg
    snap20111024_022109.jpg
    76.5 KB · Views: 36,093
  • snap20111026_072020.jpg
    snap20111026_072020.jpg
    88.9 KB · Views: 35,521
  • snap20111026_072035.jpg
    snap20111026_072035.jpg
    88.4 KB · Views: 34,392
Last edited:

faux123

Senior Member
Dec 16, 2010
8,536
34,426
West Los Angeles
www.canonspike.com
FauxClock App recommended Settings"

CPU Control
  • Max clock - GHz 1.72 GHz for performance, 1.2 GHz for battery
  • Min clock - MHz 192 MHz for both
  • CPU Governor - Ondemand for performance, Intellidemand for battery
  • mpdecision - Off
  • Set On Boot - On

SOC Control
  • Set On Boot - On
  • C0 - On
  • C1 - On
  • C2 - On

Voltage Control
  • Set On Boot -
  • Global CPU Voltage - Your preference

intellidemand gov control
  • Up Threshold - 90 for both
  • Two Phase Freq - 1134000 for both
  • Limit Max Freq - 1728000 for performance, 1512000 for battery
  • Sampling Rate - 30000 for both
  • Set On Boot - On

GPU Control
  • GPU Governor - ondemand for both
  • GPU Clock - 300Mhz for performance and 266Mhz for battery
  • GPU Vsync Toggle - On for both
  • Set On Boot - On for both

I/O Scheduler Control
  • I/O Scheduler (eMMC) - SIO for both
  • Readhead Size (eMMC) - 384 for both
  • Set On Boot - On for both

Misc Control
  • Dynamic File Sync - On for both
  • TCP Congestion Control - Westwood for both

Vibration Control
  • Set On Boot - On for both
  • Vibration Control - Your own Preference

Z-Control
  • Set On Boot - On for both
  • ZRAM Disk size - 150~200 Megabytes (or 50 MB when disabled)
  • ZRAM Enable/Disable - Enable if you mult-task often
  • Clear VFS Cache After Boot - On
  • Auto FS Writeback Delay Mode - On
  • Swappiness - 100% if ZRAM enabled, 0% if disabled
  • VFS Cache Pressure - 100% if ZRAM enabled, 150% if disabled
  • Dirty Ratio - 20% for both
  • Dirty Background Ratio - 5% for both

Above is what I use personally. MAY NOT be optimal for all :fingers-crossed:
 
Last edited:

faux123

Senior Member
Dec 16, 2010
8,536
34,426
West Los Angeles
www.canonspike.com
Gingerbread Version History

Version 001 (deprecated)

- Based on 100% HTC source code!
- EXT 4 Support, CIFS + UTF-8 (NLS Support)
- Kineto_gan Support (WiFi Calling)
- CFQ I/O Scheduler default
- CPU Min/Max Frequency Enabled
- SmartAss 384MHz~1188MHz Default, Screen Off 594MHz
- SmartAss, MinMax, and Interactive Governors Added
- SmartAss Governor Set as Default for CFS
- TUN VPN support added
- SLQB memory allocator added and made default
- BFQ I/O scheduler added and made default

Version 002 (deprecated)

- Fixed SmartAss Governor
- Added NEON and other Snapdragon Compiler optimizations

Version 003 (deprecated)

Patched kernel to version 2.6.35.14

Version 005 (deprecated)

Added OC capability up to 1.512 GHz
Tweaked Voltage Table for more stability
Added REAL SmartAss Governor
(I was contacted by Erasmux's friend who informed me about the kang hax smartass I had!
I don't know where I got it from :p )
Patched BFS (step 1, not working yet)
Allowed unaligned memory access

Version 006 (deprecated)

Reverted CPU Clock Table back to CAF version
OC up to 1.512 GHz CAF Fast Version
Added CAF Patches to msm/cpufreq

Version 007 (Long Term Stable Release, Official GB2.3.3 )

The File ==> Sensation Kernel 0.0.7 <==

OC CPU up to 1.782 GHz, L2 Cache up to 1.512 GHz
Added CAF Patch to force max frequency for all cores via sysfs mfreq
Added Bluetooth BNEP support

Version 008 (deprecated, GB2.3.4)

Applied CAF USB Composite Patch
Removed USB Switch Mute conditions

Version 009 (deprecated, Hacked GB2.3.4)

Introducing Synchronous L2 Cache (1.56 GHz version ONLY)
Introducing L2 Cache Bandwidth Boost (from max 310MHz to 360MHz)
Introducing SmartAssV2 Official Version directly from Erasmux's Commits (Major props to Erasmux)

Version 010 (Short Term Release, Hacked GB2.3.4)

The File ==> Sensation kernel 0.1.0 (1.78 GHz) <==
The File ==> Sensation Kernel 0.1.0 (1.56 GHz Sync L2) <==

CAF Patch msm: acpuclock: Subscribe to _FROZEN CPU notifiers
CAF Patch msm: pm-8x60: Remove redundant code for restoring ACPU Clock Rate
CAF Patch msm: acpuclock-8x60: Use hotplug notifications for CPU, L2, BUS, voltage
SmartAssV2 is removed (temporary until I fix it)
Added back Scaling_Available_Frequecies sysfs entries (For Mike1986 and other ROM devs)
Introducing GPU 2D/3D Overclocking :D
2D Engine from 228.5 MHz to 266.6 MHz (this one is CPU limited, so will only see benefit with faster CPU clock such as my 1.78 GHz kernel variant)
3D Engine from 266.6 MHz to 320 MHz (both versions will benefit from this boost)

Version 012 (deprecated, Official GB2.3.4)

Re-Based on HTC MR release! (new baseline)
Introducing Joe's RCU ;) (Performance boost, designed for aSMP architecture, garbage collection limited to master CPU, slave CPU only need to do what it needs to do)
Fast NoHz RCU (An RCU designed for Tickless kernel, which is our kernel)
Re-patched HTC MR release 2.6.35.13 to kernel.org 2.6.35.14
GPU 2D/3D is now same as stock (Due to screen tearing issues experienced by some users)
CAF msm: clock-8x60: Refresh PDM and TSSC halt bits at boot (Bug Fix)
CAF msm: 8660: Add barriers to SMP boot code (Stability patch)
CAF msm: clock-local: Add memory barriers for later move to _relaxed accessors (Stability patch)
CAF ARM: SMP: Make resched-ipi-while-offline warning less verbose (Slight performance tweak)
CAF msm: clock-8x60: Vote for mmfpb_a_clk at 64MHz (Bug fix)
CAF mmc: core: put eMMC in sleep (cmd5) mode before suspend (Power Saving)
CAF msm: clock-8x60: Don't disable clocks in reg_init (Bug fix)

Version 013 (deprecated, Official GB2.3.4)

Introducing GPU Turbo Boost (Max GPU clock from 266MHz to 320MHz, increased bandwidth from 2.48GHz to 2.87GHz)
KGSL Patch: Fixed Sleep Issue (Bug fix to actually allow GPU to go to sleep when it is idling)
KGSL Patch: Allow Large memory buffer request from User land (Let apps allocate large GPU memory buffer)
KGSL Patch: Save more GPU registers (Avoid register corruption due to context switches)
KGSL Patch: Check for Null Pointer (Safety precaution to avoid null pointer exception in kernel)
KGSL Patch: Do not trash general work queue (bug fix, work queue was corrupted)
KGSL Patch: Make GPU governors visible via sysfs interface

Version 014 (deprecated, Official GB2.3.4)

Introducing Global CPU Voltage Table (Under volt capability via sysfs interface, inspired by snq adapted for Snapdragon Dual-Core by me :D )
Re-coded GPU Turbo Boost. Fixed GPU Scaling governor (scaling was disabled)
Joe's RCU option is deprecated (based on download stats)

Version 015 (deprecated, Official GB2.3.4)

Added 1.674 GHz option (L2 Freq up to 1.566 GHz)
Applied many FrameBuffer patches from CAF
Applied couple more KGSL patches from CAF

Version 016 (deprecated, Official GB2.3.4)

Revenge of CFS, CFS Enhancement ;) (Interactive latency greatly reduced, make it BFS like)

Version 017 (deprecated, Official GB2.3.4)

Fixed the derp that was 0.1.6 :p
Applied many FrameBuffer patches from CAF yet again

Version 018 (deprecated, Official GB2.3.4)

Added New Early suspend drivers for 2D and 3D GPU engines
Re-Enabled KGSL Ringbuffer Power Management Overrides
Updated to JHash3
Updated Cpufreq to copy policy from siblings
Fixed memory leak in cpufreq stats
Removed CPU from NoHz Idle fair cgroup
Shorten 1080P start up latency
Fixed USB Gadget Serial Crash
Applied more MSM FrameBuffer updates from CAF

Version 019 (deprecated, Official GB2.3.4)

Fixed random SPI Operational State Invalid error
Added histogram capability for MSM video
Added lock/unlock for KGSL Early Suspend Drivers
Updated KGSL power level change
Revert Reg Init Patch from earlier (cause of instability)
Optimized memcpy and memmove for string library calls (real working version ;) )
fixed audio unmapped memory crash
fixed inaccurate D-Cache size Macro

Version 020 (deprecated, Official GB2.3.4)

CFS Autogroup Version 2.0 :D (Super Charged CFS)
Fixed Kernel/Timekeeping issue
Fixed Full / Stretched Screen issue for Video Player :eek:
Patched FB and KGSL :)
Fixed Random Reboot issue :p (took me a week to verify this fix :p )
Revenge of JRCU ;) (JRCU tweaked for better performance and battery savings)
Removed ALWAYS ON ADM Clock to save battery
Moved Data Mover to early suspend for cleaner exit

Version 021 (Deprecated, Official GB2.3.4)

Added XZ Compression support to 2.6.35 kernel
Added XZ Compression support for kernel image
Added XZ Compression RAMDisk support (boot time)
Added SquashFS support based on new XZ Compression (very high compression ratio File System)
Updated Camera Driver FPS to 120 (mdeejay ;) )
Used the git implementation of SHA-1 to reduce boot time by 11%
Updated qdsp6v2 to block write until buffer is full
Updated trivial bug fix for SMP macro
Introducing ZRAM (compressed RAM == MOAR RAM ;) )
I have successfully back ported ZRAM from 2.6.38 kernel to our older 2.6.35.xx kernel :D This should alleviate the memory pressure introduced by Sense UI.
ZRAM bug fixes and latest patches (up to latest greatest beyond Linux Kernel 3.1-rc8) :p

Version 022 (deprecated, Official GB2.3.4)

Increased ZRAM allocation for even MORE data in RAM :D
Added newly optimized CRC32 Improves EVERYTHING that uses it including TCP/IP, File Systems etc... :eek:
Added newly optimized CRC32c improves EXT4 metadata performance and anything else which uses CRC32c :eek:
Patched msm_serial_hs_lite (better battery life)
Patched qdsp6v2 to fix unexpected power consumption (better battery life)
Patched mdp4_overlay to flush RGB pipe when solid fill mode is used (better battery life)
Patched clock-8x60 to add a lower gsbi_uart_clk entry to save power (better battery life)
Lowered Camera Flash limit from 30% to 10% :p
Tweaked conservative governor for better interactive performance
Enabled Deep Power Management Options (better battery life)
Lowered CPU Minimum Voltage (better battery life)
Gate smi_2x_axi_clk off when smi_clk is disabled (better battery life)
Fixed performance level computation for VCD (better performance)
Added local control of vpe_axi_clk and rot_axi_clk (better battery life)
Removed unnecessary checks from DMA engine :D (more efficient DMA Engine == performance)
CleanCache(using Zcache)+FrontSwap optimizations :D (this concludes the ZRAM/Swap optimization)

Version 023 (deprecated, Official GB2.3.4)

CleanCache (zcache disabled due to incompatibility with mpdecision, blame HTC :( )
ARM Patch: Use CTR for the I-cache line size on ARMv7 (better performance)
lowmemkiller: make it swap friendly (better performance)
Enabled inline locks for ARM (performance)
ZSL Driver backport (part 2, CODE ONLY, not enabled)
CPU workqueue optimization (limit some workqueues to single thread)
Conservative Governor minor tweak
patched qdsp6v2 to Set tx and rx flags based on current device
patched display to avoid staging up two pipes at same mixer_stage
patched display to avoid staging up two pipes at same mixer_stage
Added GPU slumber (whenever screen is off, GPU is set to sleep)
Added idle wait support for SMP
Fixed AXI clock bug in GPU
Fixed L2 Cache Synchro bug (better performance)
Updated spin lock code (better performance)
Reduced WiFi voltage to min recommended by datasheet (better battery)
Reduced other sub-system voltages by 5~10% (better battery)
Eliminated unnecessary macro from decompressors (code clean up)
Wind down GPU turbo mode if idling (better battery)
compiled with latest code sourcery (better performance)
Fixed Power Management memory leak :eek:
Added 2 way call record capability (thanks to mdeejay!) :D
Patched wakelock to latest AOSP
Patched audio DSPs
Patched Ondemand Governor for better power savings.

Version 024 (deprecated, Official GB2.3.4)

NoHz RCU set as default
Disable BCM4329 wake irq when stopped (battery saving fix)
Re-order PPP packets in PPPoLAC and PPPoPNS (VPN bug fix)
PLL clock training with higher frequencies for better stability (stability enhancements)
mfd - Fix memory leak in debug probe
Introducing GPU 2D scaling governor (Enabled, completely original coding from me)
-- now it will scale from 145.455MHz~200 MHz depending on usage (this should save additional battery while screen is on).
Introducing IntelliDemand CPU governor
-- Built-in Screen Off profile (like SmartAss)
-- Built-in Browsing detection (enabled, completely original coding from me)
(this will limit cpu clock to max 1.0 GHz while browsing web, book, email etc)
Adjusted 3D and 2D GPU scaling and initial states for better compatibility with Rosie

Version 025 (deprecated, Official GB2.3.4)

msm72k_udc: Replace dma_coherent_pre/post_ops with mb/rmb
nfs: writeback pages wait queue
block: limit default readahead size for small devices
make default readahead size a kernel parameter
smd_pkt: Extend read operation to receive data larger than SMD FIFO
pet watchdog from console driver
Correct the number of slave ports in the system
watchdog: increase pet time to ten seconds
led: enable dynamic LED brightness
mm/vmalloc.c: eliminate extra loop in pcpu_get_vm_areas error path
Revert "qup_i2c: Calculate combined write length for multiple write transactions" (broke Sensors )
restart: call secure code to disable arbiter
restart: Handle reset interrupt from pmic
pmic8058-xoadc: request's done late into suspend
pmic8058-xoadc: Add mpp_config call on configure
Remove pm_runtime_suspended() from __pm_generic_call
HDMI: Support for 480p 16:9 in HDMI Driver
qdsp6v2: Reduce the pcm write timeout value
enable ldo's in PHY resume path (usb)
Add suspend/resume for TSENS (thermal sensor)
While powering down flush all the rpcrouter workqueues (rpc)
Reader thread to allocate memory without holding a spinlock (rpc)
Reorganize the usage of spinlocks in RPC Router reader thread
Update RPC client's cb_list_lock to use spinlocks
Retry callback registration on timeout (rpc)
Add smd_tiocmset api without spinlocks
Close smd ports upon failure to open.
print lock name for lockdep_init_error
execute lockdep_init as early as possible
board:clocks: add comments to make trouble shooting easier
smd_tty: restrict DS port platform driver
smd: add closing state to subsystem restart
smd_pkt: add subsystem restart loopback server reinit
smd_tty: add subsystem restart loopback server reinit
smd: add check for LOOPBACK_TTY platform device
Add 10 microsec delay before fetching setup_data (usb)
Simplify ACA state machine to support standard ACA (usb)
Recovery point SEI support for ISDB-Tmm (vidc)
Copy the End of Sequence flag (vidc)
Fix H.263 30fps standard resolution encoding.
Override SP profile to ASP for MPEG4 decoding.
Remove check for allocation of sequence buffer size. (vidc)
Update firmware memory size. (vidc)
Fix GOB Header for H.263 encoding.
Increase the decoder input buffer size.
Return the correct error code for IOCTL. (vidc)
Set correct divx codec type.
Handle b-frame not supported error.
Increase the kernel SMI memory size. (vidc)
Report bitstream errors to driver client.
add change to print MFC firmware version
Removed check for comparing DPB Size
add Check for infinite intraperiod configuration.
Fix to handle non-fatal sequence header errors. (vidc)
Fix not coded vop handling in decode order.
add mdp revision number
increase mdp max burst size
Calculate combined write length for multiple write transactions (i2c)
Fix input handler crash (ondemand, intellidemenad)
Add htc off-alarm support from XE source
updated sii9234 tpi driver from XE source code
USB misc code updates from XE source
enable android USB gadget projector support
Added thermal trip critical retry from XE source
updated DMA engine from XE source
fixed minor HTC battery driver coding derp
Added HTC Beats headset support from XE source
kernel:sched: avoids loadavg Moire
don't call task_group() many times in set_task_rq()
block level disk cache target for device mapper
Do not destroy old sched domain on cpu_up
Do not block when waiting to free old root domain
Check for extended quiescent state at start of gp (rcu)
Don't allow cpu to get console lock during hotplugging (printk)
Add the function 'cpu_hotplug_inprogress'
Remove extraneous boot_secondary delay

Version 026 (deprecated)

PM / Sleep: fixed coding derp from "Drop pm_op() and pm_noirq_op()"
mfd: timpani-codec: Handle register write for numbers more than cached one
mfd: timpani-codec: Write register defaults when disabling devices
msm_fb: Remove Audio Packet Control Register setup
mfd: timpani: Retry upon I2C failure.
msm_fb: Check for ACP and ACFG register before reset core.
msm_serial: add PM_RUNTIME code from CAF
mm: retry page fault when blocking on disk transfer
msm: kgsl: Do not allow SLUMBER from INIT
PM / Sleep: Drop pm_op() and pm_noirq_op()
PM / Sleep: Unify diagnostic messages from device suspend/resume
sched/rt: code cleanup, remove a redundant function call
ARM: Add optimised swahb32() byteswap helper for v6 and above
hugetlb: Replace BUG() with BUILD_BUG() for dummy definitions.
kernel.h: Add BUILD_BUG() macro.
msm: kgsl: New low power level
msm: vidc: print message as kernel info instead of error
camera:gemini: update gemini engine from hTc Ruby
battery: battery driver and charging driver update
mm: Android Ashmem update from hTc Ruby
misc: android pmem update from hTc Ruby source code
mfd: marimba core update from hTc Ruby
board: ARM kernel update from Ruby source code
cpufreq: add two-phase to ondemand and intellidemand

Version 027 (deprecated)

input/misc/gpio: update input GPIO driver from PyramidLE source
vidc: 1080p: Override profile to ASP for XVid/Divx456
Re-enabled ZRAM

Version 028 (deprecated)

Updated Zcache and ZRAM to latest Linux-next patches
Added Google's Snappy Compression for ZRAM

Version 029 (Current, Official GB2.3.4)

Init: Multithread initcalls to auto-resolve ordering issues.*
memcg: let css_get_next() rely upon rcu_read_lock()*
idr: make idr_get_next() good for rcu_read_lock()*
mm: implement WasActive page flag (for improving cleancache)*
zcache: fix deadlock condition*
Revert "msm: kgsl: Clocks should be set to the active level during NAP"*
Revert "partition_sched_domains: Do not destroy old sched domain on c…*
mmc: core: Prevent too long response times for suspend*

androidrevteam1faux123.png
SfL1q.png
 
Last edited:

GideonX

Senior Member
Jun 10, 2010
3,489
3,754
NYC
www.droidhype.com
Flashing as I type :)

Edit: So far so good, booted back up in about three minutes. Speeds aren't autodetected by setcpu yet, but I assume that'll come when oc comes.
 
Last edited:

Lakeshow423

Senior Member
Nov 14, 2010
2,383
275
SoCal
Finally Fauxy! This is gonna be a real treat having your kernels for the S4G! Thank you!
 
Last edited:

mrpanic7

Senior Member
Apr 18, 2010
554
28
nice to see you on the sensation faux love your work! can we expect to see some of your AOSP work and kernel support for 2.3.4 ROMs as well?
 
  • Like
Reactions: Mesaman2012

xtcislove

Senior Member
Jan 17, 2010
1,078
184
Gummersbach
OnePlus 8 Pro
You mention its for 2.3.4 Builds but if it is based on htc sources this cant be? They only released 2.3.3 Kernel sources...?

Or did you hacked it to work with 2.3.4?
 
Last edited:

Scoop24

Senior Member
Apr 14, 2010
865
31
NY
Glad your finally here faux..

Sent from my HTC Sensation Z710e using XDA Premium App
 

Namit1994

Senior Member
May 26, 2010
408
226
Corona, NY
NOTICE: This is COMPATIBLE with ALL Sensations Rooted Stock and Custom ROMs
(Except the new 2.3.4 ROMs)


Hi XDA members and fellow Sensation users:

This is my tenth kernel hack. I want to thank Erasmux, and several others I cannot recall for inspiring me to venture into this unfamiliar territory for me.

What is a Kernel? The Kernel is the Foundation in which everything else builds upon in any software system.
[Car Analogy]: Kernel is like the Engine, Electrical system and the Transmission to a car. The Library, Framework and the Apps [AKA ROM] are the body frame and the rest of the Car.




THIS KERNEL is BASED ON HTC Source Code. So it is COMPATIBLE ONLY WITH HTC Gingerbread Sensation Builds.

Please DO NOT use any task killers, they DO NOT improve performance nor battery life. They INTERFERE with your phone's stability (more crashes) and App compatibilities (Forced Close).


MinMax Governor (Battery Saver)

This governor will try to minimize the frequency jumps/changes which cause voltage spikes/changes which supposedly drains more battery life... Supposedly designed to work with SetCPU... so give it a whirl...

SmartAss Governor (Balanced)

This governor has a built-in "profile" similar to SetCPU, so screen off will use lower clock rate thus conserve more battery, but it also has a fast wake up feature so that user interaction will not see the lag when switching from Sleep to Wake state.... (So SetCPU Profiles are sorta redundant when using this governor, you can still use SetCPU to OC to higher than default Clock frequency).

Interactive Governor (Performance)

This governor is designed to put more priority to User Interface (UI aka Apps) tasks, therefore appears more responsive then the traditional OnDemand governor. So if you want the smoothest UI interaction, this governor is for you...

Brain F*ck Scheduler - (BFS)

This scheduler is designed to be simple and speedy tailor specifically for user interface type systems such as desktop/smart phone devices where user interaction is MORE important than serving 1 million web requests (CFS, the default scheduler) at the same time (think of nimble desktop workstations vs large corporate servers).

SLQB - (SLAB allocator with Queue)

This memory allocator is designed for small number of CPUs system (such as desktop or smart phone devices). This allocator is design to be simple and it is optimized for using order-0 pages as much as possible (order-0 pages are the simplest therefore quickest type of memory in a Linux system to allocate). Not all kernels are using SLQB including CM7 main line...

Fair Budget Queue (BFQ I/O scheduler)

This I/O scheduler is an improvement on top of Completely Fair Queue (CFQ). CFQ is fair in terms of time but not in terms of throughput / bandwidth, so BFQ make sure that both time and throughput / bandwidth are balanced across all requests.

Installation Instructions:

Here's a step by step instruction to install this kernel:

[ CFS-Smartass ] (Mainline)
The File ==> Coming Soon <==
The File ==> Sensation Kernel 0.0.1 CFS Stock Voltage <==

[ BFS-Interactive ] (Enthusiast Edition)
The File ==> Coming Later <==
The File ==> Coming Later <==


Low Voltage - Under Volt the processor, therefore uses Less Battery, but NOT ALL CHIPS can handle Under Volt.. If you experience instability, try the Stock Voltage Version.

Stock Voltage - Uses the voltage values from ORIGINAL HTC Kernel Source.

There are NO PERFORMANCE DIFFERENCE between the 2 versions!


1. download the above file (via phone directly or to a PC)
2. copy the downloaded zip file to /sdcard/download/
3. Open ROM Manager and select "Reboot into Recovery" and select "OK"
4. Once in recovery, select "wipe cache partition", select "Yes", then select "advanced", then select "Wipe Dalvik Cache", then select "Yes" again. Once finished, click the back button to go back to the main recovery menu. On that menu, select "Install Zip From SDCad", then select "Choose zip from SDCard", then go to /sdcard/download and select the downloaded zip file and let it run its script.
5. Once the script is done, select "reboot system now"

Note: After FLASHING, the first reboot may take longer than usual, please be patient... After the first reboot, it may lag during initial load (let everything finish loading). Once everything is loaded and phone is ready for use, reboot the phone a 2nd time and the lag will be gone and everything should be silky smooth...


NEWS BULLETIN:

Version 0.0.1 is OUT!
1. Initial Kernel (no overclocking / undervolting yet)


Please don't hesitate to talk among yourselves and help each other out... The MT4G/XDA community is what inspired me to hack kernels for everyone since everyone here is nice and helpful to each other... Keep helping each other.... Famous proverb: It's better to give than to receive...

BUGS:


Not All CHIPS ARE CREATED EQUAL


TO DO:

version 1.x.x -- Haven't thought about it yet...

History:

See Post below...

Standard Disclaimer: Not responsible for bricking your phone, voiding your warranty, or any other pain or suffering you may feel as result of using this kernel!!!

My Github Complying with GPL :D

Follow me on :

If you find this Kernel useful, feel free to hit the [Thanks] button below

Thanks for all that information, very useful.
 
  • Like
Reactions: fegerman

kirdroid

Senior Member
Feb 21, 2011
2,551
382
Seattle
One more great dev...welcome to sensation :) ... can't wait for stupid htc to release the updated kernel sources for 2.3.4.

Sent from my HTC Sensation Z710e using XDA Premium App
 

Top Liked Posts

  • There are no posts matching your filters.
  • 724
    Kernel Files:

    Change Log: http://faux.androidro.ms/pyramid/ics/changelog.txt

    ******* LATEST BETA By YANK555 with AROMA! Ice Cream Sandwich (Android 4.0.x) ******* (Linux 3.0.37)
    [ CFS ] (Ultimate Edition)

    http://forum.xda-developers.com/showpost.php?p=29072369&postcount=7579

    ******* Ice Cream Sandwich (Android 4.0.x) ******* (Linux 3.0.42)
    [ CFS ] (Ultimate Edition)

    The File ==> Sensation Kernel (1.73 GHz, GPU @ 320MHz, ZRAM) <==

    ******* Gingerbread (Android 2.3.x) ******* (Linux 2.6.35.14)
    [ CFS ] (Mainline Edition)
    The File ==> Sensation Kernel 029 (1.73 GHz, ZRAM) <==

    [ CFS ] (Ultimate Edition - should work with most phones but NOT GUARANTEED!)
    The File ==> Sensation kernel 029 (1.73 GHz, ZRAM, ZCACHE, GPU @ 320MHz) <==

    [ Optional: ]

    [ For Kernel Devlopers ONLY: ]

    The File ==> My Global VDD_TABLE for under volt patch <==
    The File ==> KGSL Ring Buffer Power Management Patch for Cordy and Ninja Jump <==


    Optional Under voltage: Version 0.1.4+ ONLY

    Code:
    [ to over volt ALL frequencies by 25000 uv (microvolts) ]
    echo "+25000" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
    [ to under volt ALL frequencies by 25000 uv (microvolts) ]
    echo "-25000" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
    
    [ to set a specific frequency (ie 1.18 GHz) 
      with a specific voltage (ie 1.0875 volts) ]
    echo "1188000 1087500" > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels
    CPU Frequency Voltage Table Example
    Code:
      192000:   812500
      310500:   812500
      384000:   812500
      432000:   812500
      486000:   837500
      540000:   850000
      594000:   862500
      648000:   875000
      702000:   900000
      756000:   925000
      810000:   937500
      864000:   962500
      918000:   962500
      972000:   962500
     1026000:   975000
     1080000:   987500
     1134000:  1000000
     1188000:  1012500
     1242000:  1025000
     1296000:  1050000
     1350000:  1075000
     1404000:  1100000
     1458000:  1112500
     1512000:  1125000
     1566000:  1150000

    Optional: Stock Clock Frequencies for Dual CPUs
    Code:
    su
    echo 192000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
    echo 1188000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
    
    echo 1 > /sys/devices/system/cpu/cpu1/cpufreq/online
    echo 192000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
    echo 1188000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq

    Optional: ZRAM (Compressed RAM swap space :D )
    Code:
    su
    mkswap /dev/block/zram0
    swapon /dev/block/zram0

    Low Voltage - Under Volt the processor, therefore uses Less Battery, but NOT ALL CHIPS can handle Under Volt.. If you experience instability, try the Stock Voltage Version.

    Stock Voltage - Uses the voltage values from ORIGINAL HTC Kernel Source.

    There are NO PERFORMANCE DIFFERENCE between the Under Volted and Stock Voltage versions!

    Installation Instructions:

    Here's a step by step instruction to install this kernel:

    1. download the above file (via phone directly or to a PC)
    2. copy the downloaded zip file to /sdcard/download/
    3. Open ROM Manager and select "Reboot into Recovery" and select "OK"
    4. Once in recovery, select "wipe cache partition", select "Yes", then select "advanced", then select "Wipe Dalvik Cache", then select "Yes" again. Once finished, click the back button to go back to the main recovery menu. On that menu, select "Install Zip From SDCad", then select "Choose zip from SDCard", then go to /sdcard/download and select the downloaded zip file and let it run its script.
    5. Once the script is done, select "reboot system now"

    Note: After FLASHING, the first reboot may take longer than usual, please be patient... After the first reboot, it may lag during initial load (let everything finish loading). Once everything is loaded and phone is ready for use, reboot the phone a 2nd time and the lag will be gone and everything should be silky smooth...


    Standard Disclaimer: Not responsible for bricking your phone, voiding your warranty, or any other pain or suffering you may feel as result of using this kernel!!!

    My Github Complying with GPL and XDA rulez :D

    Follow me on :

    If you find this Kernel useful, feel free to hit the [Thanks] button below

    androidrevteam1faux123.png
    SfL1q.png
    170
    FauxClock App recommended Settings"

    CPU Control
    • Max clock - GHz 1.72 GHz for performance, 1.2 GHz for battery
    • Min clock - MHz 192 MHz for both
    • CPU Governor - Ondemand for performance, Intellidemand for battery
    • mpdecision - Off
    • Set On Boot - On

    SOC Control
    • Set On Boot - On
    • C0 - On
    • C1 - On
    • C2 - On

    Voltage Control
    • Set On Boot -
    • Global CPU Voltage - Your preference

    intellidemand gov control
    • Up Threshold - 90 for both
    • Two Phase Freq - 1134000 for both
    • Limit Max Freq - 1728000 for performance, 1512000 for battery
    • Sampling Rate - 30000 for both
    • Set On Boot - On

    GPU Control
    • GPU Governor - ondemand for both
    • GPU Clock - 300Mhz for performance and 266Mhz for battery
    • GPU Vsync Toggle - On for both
    • Set On Boot - On for both

    I/O Scheduler Control
    • I/O Scheduler (eMMC) - SIO for both
    • Readhead Size (eMMC) - 384 for both
    • Set On Boot - On for both

    Misc Control
    • Dynamic File Sync - On for both
    • TCP Congestion Control - Westwood for both

    Vibration Control
    • Set On Boot - On for both
    • Vibration Control - Your own Preference

    Z-Control
    • Set On Boot - On for both
    • ZRAM Disk size - 150~200 Megabytes (or 50 MB when disabled)
    • ZRAM Enable/Disable - Enable if you mult-task often
    • Clear VFS Cache After Boot - On
    • Auto FS Writeback Delay Mode - On
    • Swappiness - 100% if ZRAM enabled, 0% if disabled
    • VFS Cache Pressure - 100% if ZRAM enabled, 150% if disabled
    • Dirty Ratio - 20% for both
    • Dirty Background Ratio - 5% for both

    Above is what I use personally. MAY NOT be optimal for all :fingers-crossed:
    145
    Hi Guys !

    Ok, eventually I got home after work so I could start testing faux's latest 008b6 kernel on the ROM I use with stock htc Adreno drivers.

    So here's a little goodie for you, I've repacked the kernel into Aroma Installer, so if you'd like to test the kernel and customize it while installing, here you go :D



    013u Download link

    • Changelog since 012u :
      • updated to kernel.org 3.0.79



    012u Download link

    • Changelog since 011u :
      • added overall statistics (count cpu freq usage for both cores)
      • added dynamic fsync optimizations
      • updated to kernel.org 3.0.75
      • revert my MSM Thermal hack
      • added back thermald modified (hacked binary)



    011u Download link

    • Changelog since 010u :
      • updated FauxSound to version 2.1
      • updated to Linux 3.0.71



    010u Download link

    • Changelog since 010b10 :
      • added sound control for TPA amp (use fauxsound available in Play Store to control it)
      • updated to Linux 3.0.70



    010b11 Download link

    • Changelog since 010b10 :
      • updated to Linux 3.0.62



    010b10 Download link

    • Changelog since 010b9 :
      • updated to Linux 3.0.61
      • updated LMK to 3.4



    010b9 Download link

    • Changelog since 010b8 :
      • updated to Linux 3.0.60
      • added SIO scheduler



    010b8 Download link

    • Changelog since 010b7 :
      • updated to Linux 3.0.56
      • Switched to use SLAB instead of SLUB
      • Enabled MM compaction and KSM



    010b7 Download link

    • Changelog since 010b6 :
      • updated to Linux 3.0.49



    010b6 Download link

    • Changelog since 010b4 :
      • updated to Linux 3.0.46



    010b4 Download link

    • Changelog since 010b2 :
      • updated to Linux 3.0.44
      • added "Vsync enable/disable" in Aroma menu
      • added "leave LMK settings unchanged" as option in Aroma menu



    010b2 Download link

    • Changelog since 010b1 :
      • new dynamic sync control



    010b1 Download link

    • Changelog since 009u :
      • updated to Linux 3.0.43



    009b4 Download link (= 009u)

    • Changelog since 009b3 :
      • reverted to 009b1
      • fix auto merge error from .38 to .39 (Thanks to klothius for reviewing the code)



    009b3 Download link

    • Changelog since 009b2 :
      • Fix auto merge error from .38 to .39 (Thanks to klothius for reviewing the code)



    009b2 Download link

    • Changelog since 009b1 :
      • Hack to validate a fix for lag on Sense 4 ROMs mainly (thanks to klothius for pointing in the right direction)



    009b1 Download link

    • Changelog since 008u :
      • updated to Linux 3.0.42



    008u Download link

    • Changelog since 008b13 :
      • kernel out of beta (same as 008b13)
      • added Android low memory killer settings option in Aroma



    008b13 Download link

    • Changelog since 008b12 :
      • Updated to Linux 3.0.41
      • added bfq i/o scheduler
      • added ARM AES/SHA1
      • added TCP congestion control
      • updated forced fast charge



    008b12 Download link

    • Changelog since 008b11 :
      • Proportional Rate Reduction for TCP
      • Swtiched to westwood+ tcp congestion
      • removed inactive_max setting in Aroma menu (will be set to CPU_max)



    008b11 Download link

    • Changelog since 008b10 :
      • New lzo compression (supposedly 2x faster)
      • Modded stock init.post_boot.sh (instead of ARHD's)



    008b10 Download link

    • Changelog since 008b9 :
      • Updated to Linux 3.0.40
      • Native AES/ASH1 support for improved performance in IPsec/TCP tunnels (VPN)



    008b9 Download link

    • Changelog since 008b8 :
      • Updated to Linux 3.0.39
      • Added Yank555's new LED time adjustment support



    008b8 Download link

    • Changelog since 008b7 :
      • WiFi & WiFi Tether for Sense 4 ROMs (ported from htc One V)
      • changed AROMA defaults, my settings were too unconventional, this is safer
        (zRam is now active by default, HardSwap disabled by defaut, softforced fast charge enabled by default instead of always)



    008b7 Download link

    • Changelog since 008b6 :
      • kernel rebased to Linux 3.0.38
      • Governor fix included



    008b6 Download link

    • If you're having the issue that the default governor after boot is set to ondemand, flash the governor fix (click here to download) ! More detailed explanations can be found here.



    Issue Reporting tool by TheUntouchable

    To help you reporting problems, TheUntouchable has created a very comprehensive reporting tool, which you can run from your PC when connecting your Sensation to it.

    If you run into a problem (like lag), connect your phone to your PC, and run the tool, it will generate a zip file containing everything we can hope for to find out where the problem comes from !

    So when reporting your issue, you can simply attach the generated zip file.

    http://d-h.st/users/TheUntouchable/?fld_id=4736#files

    Thanx a lot for that, it will make reporting and debugging a lot easier !



    Enjoy, JP.

    Yank555.lu kernel git repository on github.
    90
    would you like to see some sound enhancements for this phone? I don't know how many of you are still holding on to this....

    Use the thank button if you want sound enhancement for this phone..
    69
    Gingerbread Version History

    Version 001 (deprecated)

    - Based on 100% HTC source code!
    - EXT 4 Support, CIFS + UTF-8 (NLS Support)
    - Kineto_gan Support (WiFi Calling)
    - CFQ I/O Scheduler default
    - CPU Min/Max Frequency Enabled
    - SmartAss 384MHz~1188MHz Default, Screen Off 594MHz
    - SmartAss, MinMax, and Interactive Governors Added
    - SmartAss Governor Set as Default for CFS
    - TUN VPN support added
    - SLQB memory allocator added and made default
    - BFQ I/O scheduler added and made default

    Version 002 (deprecated)

    - Fixed SmartAss Governor
    - Added NEON and other Snapdragon Compiler optimizations

    Version 003 (deprecated)

    Patched kernel to version 2.6.35.14

    Version 005 (deprecated)

    Added OC capability up to 1.512 GHz
    Tweaked Voltage Table for more stability
    Added REAL SmartAss Governor
    (I was contacted by Erasmux's friend who informed me about the kang hax smartass I had!
    I don't know where I got it from :p )
    Patched BFS (step 1, not working yet)
    Allowed unaligned memory access

    Version 006 (deprecated)

    Reverted CPU Clock Table back to CAF version
    OC up to 1.512 GHz CAF Fast Version
    Added CAF Patches to msm/cpufreq

    Version 007 (Long Term Stable Release, Official GB2.3.3 )

    The File ==> Sensation Kernel 0.0.7 <==

    OC CPU up to 1.782 GHz, L2 Cache up to 1.512 GHz
    Added CAF Patch to force max frequency for all cores via sysfs mfreq
    Added Bluetooth BNEP support

    Version 008 (deprecated, GB2.3.4)

    Applied CAF USB Composite Patch
    Removed USB Switch Mute conditions

    Version 009 (deprecated, Hacked GB2.3.4)

    Introducing Synchronous L2 Cache (1.56 GHz version ONLY)
    Introducing L2 Cache Bandwidth Boost (from max 310MHz to 360MHz)
    Introducing SmartAssV2 Official Version directly from Erasmux's Commits (Major props to Erasmux)

    Version 010 (Short Term Release, Hacked GB2.3.4)

    The File ==> Sensation kernel 0.1.0 (1.78 GHz) <==
    The File ==> Sensation Kernel 0.1.0 (1.56 GHz Sync L2) <==

    CAF Patch msm: acpuclock: Subscribe to _FROZEN CPU notifiers
    CAF Patch msm: pm-8x60: Remove redundant code for restoring ACPU Clock Rate
    CAF Patch msm: acpuclock-8x60: Use hotplug notifications for CPU, L2, BUS, voltage
    SmartAssV2 is removed (temporary until I fix it)
    Added back Scaling_Available_Frequecies sysfs entries (For Mike1986 and other ROM devs)
    Introducing GPU 2D/3D Overclocking :D
    2D Engine from 228.5 MHz to 266.6 MHz (this one is CPU limited, so will only see benefit with faster CPU clock such as my 1.78 GHz kernel variant)
    3D Engine from 266.6 MHz to 320 MHz (both versions will benefit from this boost)

    Version 012 (deprecated, Official GB2.3.4)

    Re-Based on HTC MR release! (new baseline)
    Introducing Joe's RCU ;) (Performance boost, designed for aSMP architecture, garbage collection limited to master CPU, slave CPU only need to do what it needs to do)
    Fast NoHz RCU (An RCU designed for Tickless kernel, which is our kernel)
    Re-patched HTC MR release 2.6.35.13 to kernel.org 2.6.35.14
    GPU 2D/3D is now same as stock (Due to screen tearing issues experienced by some users)
    CAF msm: clock-8x60: Refresh PDM and TSSC halt bits at boot (Bug Fix)
    CAF msm: 8660: Add barriers to SMP boot code (Stability patch)
    CAF msm: clock-local: Add memory barriers for later move to _relaxed accessors (Stability patch)
    CAF ARM: SMP: Make resched-ipi-while-offline warning less verbose (Slight performance tweak)
    CAF msm: clock-8x60: Vote for mmfpb_a_clk at 64MHz (Bug fix)
    CAF mmc: core: put eMMC in sleep (cmd5) mode before suspend (Power Saving)
    CAF msm: clock-8x60: Don't disable clocks in reg_init (Bug fix)

    Version 013 (deprecated, Official GB2.3.4)

    Introducing GPU Turbo Boost (Max GPU clock from 266MHz to 320MHz, increased bandwidth from 2.48GHz to 2.87GHz)
    KGSL Patch: Fixed Sleep Issue (Bug fix to actually allow GPU to go to sleep when it is idling)
    KGSL Patch: Allow Large memory buffer request from User land (Let apps allocate large GPU memory buffer)
    KGSL Patch: Save more GPU registers (Avoid register corruption due to context switches)
    KGSL Patch: Check for Null Pointer (Safety precaution to avoid null pointer exception in kernel)
    KGSL Patch: Do not trash general work queue (bug fix, work queue was corrupted)
    KGSL Patch: Make GPU governors visible via sysfs interface

    Version 014 (deprecated, Official GB2.3.4)

    Introducing Global CPU Voltage Table (Under volt capability via sysfs interface, inspired by snq adapted for Snapdragon Dual-Core by me :D )
    Re-coded GPU Turbo Boost. Fixed GPU Scaling governor (scaling was disabled)
    Joe's RCU option is deprecated (based on download stats)

    Version 015 (deprecated, Official GB2.3.4)

    Added 1.674 GHz option (L2 Freq up to 1.566 GHz)
    Applied many FrameBuffer patches from CAF
    Applied couple more KGSL patches from CAF

    Version 016 (deprecated, Official GB2.3.4)

    Revenge of CFS, CFS Enhancement ;) (Interactive latency greatly reduced, make it BFS like)

    Version 017 (deprecated, Official GB2.3.4)

    Fixed the derp that was 0.1.6 :p
    Applied many FrameBuffer patches from CAF yet again

    Version 018 (deprecated, Official GB2.3.4)

    Added New Early suspend drivers for 2D and 3D GPU engines
    Re-Enabled KGSL Ringbuffer Power Management Overrides
    Updated to JHash3
    Updated Cpufreq to copy policy from siblings
    Fixed memory leak in cpufreq stats
    Removed CPU from NoHz Idle fair cgroup
    Shorten 1080P start up latency
    Fixed USB Gadget Serial Crash
    Applied more MSM FrameBuffer updates from CAF

    Version 019 (deprecated, Official GB2.3.4)

    Fixed random SPI Operational State Invalid error
    Added histogram capability for MSM video
    Added lock/unlock for KGSL Early Suspend Drivers
    Updated KGSL power level change
    Revert Reg Init Patch from earlier (cause of instability)
    Optimized memcpy and memmove for string library calls (real working version ;) )
    fixed audio unmapped memory crash
    fixed inaccurate D-Cache size Macro

    Version 020 (deprecated, Official GB2.3.4)

    CFS Autogroup Version 2.0 :D (Super Charged CFS)
    Fixed Kernel/Timekeeping issue
    Fixed Full / Stretched Screen issue for Video Player :eek:
    Patched FB and KGSL :)
    Fixed Random Reboot issue :p (took me a week to verify this fix :p )
    Revenge of JRCU ;) (JRCU tweaked for better performance and battery savings)
    Removed ALWAYS ON ADM Clock to save battery
    Moved Data Mover to early suspend for cleaner exit

    Version 021 (Deprecated, Official GB2.3.4)

    Added XZ Compression support to 2.6.35 kernel
    Added XZ Compression support for kernel image
    Added XZ Compression RAMDisk support (boot time)
    Added SquashFS support based on new XZ Compression (very high compression ratio File System)
    Updated Camera Driver FPS to 120 (mdeejay ;) )
    Used the git implementation of SHA-1 to reduce boot time by 11%
    Updated qdsp6v2 to block write until buffer is full
    Updated trivial bug fix for SMP macro
    Introducing ZRAM (compressed RAM == MOAR RAM ;) )
    I have successfully back ported ZRAM from 2.6.38 kernel to our older 2.6.35.xx kernel :D This should alleviate the memory pressure introduced by Sense UI.
    ZRAM bug fixes and latest patches (up to latest greatest beyond Linux Kernel 3.1-rc8) :p

    Version 022 (deprecated, Official GB2.3.4)

    Increased ZRAM allocation for even MORE data in RAM :D
    Added newly optimized CRC32 Improves EVERYTHING that uses it including TCP/IP, File Systems etc... :eek:
    Added newly optimized CRC32c improves EXT4 metadata performance and anything else which uses CRC32c :eek:
    Patched msm_serial_hs_lite (better battery life)
    Patched qdsp6v2 to fix unexpected power consumption (better battery life)
    Patched mdp4_overlay to flush RGB pipe when solid fill mode is used (better battery life)
    Patched clock-8x60 to add a lower gsbi_uart_clk entry to save power (better battery life)
    Lowered Camera Flash limit from 30% to 10% :p
    Tweaked conservative governor for better interactive performance
    Enabled Deep Power Management Options (better battery life)
    Lowered CPU Minimum Voltage (better battery life)
    Gate smi_2x_axi_clk off when smi_clk is disabled (better battery life)
    Fixed performance level computation for VCD (better performance)
    Added local control of vpe_axi_clk and rot_axi_clk (better battery life)
    Removed unnecessary checks from DMA engine :D (more efficient DMA Engine == performance)
    CleanCache(using Zcache)+FrontSwap optimizations :D (this concludes the ZRAM/Swap optimization)

    Version 023 (deprecated, Official GB2.3.4)

    CleanCache (zcache disabled due to incompatibility with mpdecision, blame HTC :( )
    ARM Patch: Use CTR for the I-cache line size on ARMv7 (better performance)
    lowmemkiller: make it swap friendly (better performance)
    Enabled inline locks for ARM (performance)
    ZSL Driver backport (part 2, CODE ONLY, not enabled)
    CPU workqueue optimization (limit some workqueues to single thread)
    Conservative Governor minor tweak
    patched qdsp6v2 to Set tx and rx flags based on current device
    patched display to avoid staging up two pipes at same mixer_stage
    patched display to avoid staging up two pipes at same mixer_stage
    Added GPU slumber (whenever screen is off, GPU is set to sleep)
    Added idle wait support for SMP
    Fixed AXI clock bug in GPU
    Fixed L2 Cache Synchro bug (better performance)
    Updated spin lock code (better performance)
    Reduced WiFi voltage to min recommended by datasheet (better battery)
    Reduced other sub-system voltages by 5~10% (better battery)
    Eliminated unnecessary macro from decompressors (code clean up)
    Wind down GPU turbo mode if idling (better battery)
    compiled with latest code sourcery (better performance)
    Fixed Power Management memory leak :eek:
    Added 2 way call record capability (thanks to mdeejay!) :D
    Patched wakelock to latest AOSP
    Patched audio DSPs
    Patched Ondemand Governor for better power savings.

    Version 024 (deprecated, Official GB2.3.4)

    NoHz RCU set as default
    Disable BCM4329 wake irq when stopped (battery saving fix)
    Re-order PPP packets in PPPoLAC and PPPoPNS (VPN bug fix)
    PLL clock training with higher frequencies for better stability (stability enhancements)
    mfd - Fix memory leak in debug probe
    Introducing GPU 2D scaling governor (Enabled, completely original coding from me)
    -- now it will scale from 145.455MHz~200 MHz depending on usage (this should save additional battery while screen is on).
    Introducing IntelliDemand CPU governor
    -- Built-in Screen Off profile (like SmartAss)
    -- Built-in Browsing detection (enabled, completely original coding from me)
    (this will limit cpu clock to max 1.0 GHz while browsing web, book, email etc)
    Adjusted 3D and 2D GPU scaling and initial states for better compatibility with Rosie

    Version 025 (deprecated, Official GB2.3.4)

    msm72k_udc: Replace dma_coherent_pre/post_ops with mb/rmb
    nfs: writeback pages wait queue
    block: limit default readahead size for small devices
    make default readahead size a kernel parameter
    smd_pkt: Extend read operation to receive data larger than SMD FIFO
    pet watchdog from console driver
    Correct the number of slave ports in the system
    watchdog: increase pet time to ten seconds
    led: enable dynamic LED brightness
    mm/vmalloc.c: eliminate extra loop in pcpu_get_vm_areas error path
    Revert "qup_i2c: Calculate combined write length for multiple write transactions" (broke Sensors )
    restart: call secure code to disable arbiter
    restart: Handle reset interrupt from pmic
    pmic8058-xoadc: request's done late into suspend
    pmic8058-xoadc: Add mpp_config call on configure
    Remove pm_runtime_suspended() from __pm_generic_call
    HDMI: Support for 480p 16:9 in HDMI Driver
    qdsp6v2: Reduce the pcm write timeout value
    enable ldo's in PHY resume path (usb)
    Add suspend/resume for TSENS (thermal sensor)
    While powering down flush all the rpcrouter workqueues (rpc)
    Reader thread to allocate memory without holding a spinlock (rpc)
    Reorganize the usage of spinlocks in RPC Router reader thread
    Update RPC client's cb_list_lock to use spinlocks
    Retry callback registration on timeout (rpc)
    Add smd_tiocmset api without spinlocks
    Close smd ports upon failure to open.
    print lock name for lockdep_init_error
    execute lockdep_init as early as possible
    board:clocks: add comments to make trouble shooting easier
    smd_tty: restrict DS port platform driver
    smd: add closing state to subsystem restart
    smd_pkt: add subsystem restart loopback server reinit
    smd_tty: add subsystem restart loopback server reinit
    smd: add check for LOOPBACK_TTY platform device
    Add 10 microsec delay before fetching setup_data (usb)
    Simplify ACA state machine to support standard ACA (usb)
    Recovery point SEI support for ISDB-Tmm (vidc)
    Copy the End of Sequence flag (vidc)
    Fix H.263 30fps standard resolution encoding.
    Override SP profile to ASP for MPEG4 decoding.
    Remove check for allocation of sequence buffer size. (vidc)
    Update firmware memory size. (vidc)
    Fix GOB Header for H.263 encoding.
    Increase the decoder input buffer size.
    Return the correct error code for IOCTL. (vidc)
    Set correct divx codec type.
    Handle b-frame not supported error.
    Increase the kernel SMI memory size. (vidc)
    Report bitstream errors to driver client.
    add change to print MFC firmware version
    Removed check for comparing DPB Size
    add Check for infinite intraperiod configuration.
    Fix to handle non-fatal sequence header errors. (vidc)
    Fix not coded vop handling in decode order.
    add mdp revision number
    increase mdp max burst size
    Calculate combined write length for multiple write transactions (i2c)
    Fix input handler crash (ondemand, intellidemenad)
    Add htc off-alarm support from XE source
    updated sii9234 tpi driver from XE source code
    USB misc code updates from XE source
    enable android USB gadget projector support
    Added thermal trip critical retry from XE source
    updated DMA engine from XE source
    fixed minor HTC battery driver coding derp
    Added HTC Beats headset support from XE source
    kernel:sched: avoids loadavg Moire
    don't call task_group() many times in set_task_rq()
    block level disk cache target for device mapper
    Do not destroy old sched domain on cpu_up
    Do not block when waiting to free old root domain
    Check for extended quiescent state at start of gp (rcu)
    Don't allow cpu to get console lock during hotplugging (printk)
    Add the function 'cpu_hotplug_inprogress'
    Remove extraneous boot_secondary delay

    Version 026 (deprecated)

    PM / Sleep: fixed coding derp from "Drop pm_op() and pm_noirq_op()"
    mfd: timpani-codec: Handle register write for numbers more than cached one
    mfd: timpani-codec: Write register defaults when disabling devices
    msm_fb: Remove Audio Packet Control Register setup
    mfd: timpani: Retry upon I2C failure.
    msm_fb: Check for ACP and ACFG register before reset core.
    msm_serial: add PM_RUNTIME code from CAF
    mm: retry page fault when blocking on disk transfer
    msm: kgsl: Do not allow SLUMBER from INIT
    PM / Sleep: Drop pm_op() and pm_noirq_op()
    PM / Sleep: Unify diagnostic messages from device suspend/resume
    sched/rt: code cleanup, remove a redundant function call
    ARM: Add optimised swahb32() byteswap helper for v6 and above
    hugetlb: Replace BUG() with BUILD_BUG() for dummy definitions.
    kernel.h: Add BUILD_BUG() macro.
    msm: kgsl: New low power level
    msm: vidc: print message as kernel info instead of error
    camera:gemini: update gemini engine from hTc Ruby
    battery: battery driver and charging driver update
    mm: Android Ashmem update from hTc Ruby
    misc: android pmem update from hTc Ruby source code
    mfd: marimba core update from hTc Ruby
    board: ARM kernel update from Ruby source code
    cpufreq: add two-phase to ondemand and intellidemand

    Version 027 (deprecated)

    input/misc/gpio: update input GPIO driver from PyramidLE source
    vidc: 1080p: Override profile to ASP for XVid/Divx456
    Re-enabled ZRAM

    Version 028 (deprecated)

    Updated Zcache and ZRAM to latest Linux-next patches
    Added Google's Snappy Compression for ZRAM

    Version 029 (Current, Official GB2.3.4)

    Init: Multithread initcalls to auto-resolve ordering issues.*
    memcg: let css_get_next() rely upon rcu_read_lock()*
    idr: make idr_get_next() good for rcu_read_lock()*
    mm: implement WasActive page flag (for improving cleancache)*
    zcache: fix deadlock condition*
    Revert "msm: kgsl: Clocks should be set to the active level during NAP"*
    Revert "partition_sched_domains: Do not destroy old sched domain on c…*
    mmc: core: Prevent too long response times for suspend*

    androidrevteam1faux123.png
    SfL1q.png