[HTC One S] thicklizard:
I do not own an HTC ONE S however I have an AOSP kernel for the EVO 4G LTE. Both use CM 8960 kernel source. Even though this will be a first release for the one S it is the 25th release for this kernel so it is heavily modified.

I suggest using the app kernel tuner from the market as this app will really let you unlease this kernels features.

Changelog 2/25/13

Changlelof 2/25/13 rls 28

"msm_fb: display: fix compiler warning for uint64_t format" …

villel: adjust refx100 to 6650. …

msm_fb: display: fix compiler warning for uint64_t format …

video: msm: Remove timeout from wait4vsync …

msm_fb: display: get mipi frame rate from panel file …

msm_fb: display: wait4vsync before set suspend flag …

msm_fb: display: wait4vsync after timing generator is turned off …

msm_fb: display: replace msleep with wait4vsync …

msm_fb: display: check bus scale handler for registration …

msm: msm_bus: Add support for 64-bit bandwidth requests …

add zram using snappy compression support

add frandom number generator support

linux 3.0.66

clean up crc32

update bfq v6

increase capture number of periods

up MDP clocks

tune sched_fair

msm_fb: display: clean pipes from commit queue at suspend …

msm: rotator: Support Fast YUV for 8960, 8064 and 8x30 targets. …

msm: rotator: clear rotator bus scale handler …

forget using aroma to set gpu users can change via app after boot

update usb fastcharge to 3.1

wcnss: Update Riva ramdump segments

update arm topology drivers

add strncpy_from_user

Changlelog 2/16/13

lower max voltage

Linux 3.0.65

Linux 3.0.64

reduce refresh rate

Changelog 2/13/13

fix blk-core error

remove flags

Linux 3.0.63

msm_fb: display: add mdp clock control to histogram enable/disable …

msm_fb: display: keep borderfill pipe's iommu info …

msm: display: Fix blend configuration for video layer with MDP compos… …

msm_fb:display: correct bus bw for downscale case …

add HYPER gov

Changelog 2/11/13

Compiled with -O3 optimization

add build flag and update cm panel refresh rate

msm_fb: display: restore previous mdp bandwidth when resume …

msm: vidc: Add ioctls for MPEG-2 extradata support …

video: msm: Fix copyright attribution. …

msm: kgsl: initialize kgsl_sync_timeline_ops properly …

android, lowmemorykiller: Sync with Google/CAF …

msm: kgsl: Don't wake up gpu on kgsl_ioctl calls if not necessary …

msm: kgsl: Avoid NULL pointer in adreno setstate functions …

msm_fb: Check for panel power on after Unblank. …

compiled with linaro 4.7.3 (1/13) This has all -O3 errors fixed but for now is compiled with -O2s so I know it boots.

Has S2W (thanks to Zarboz and showp)

Fix for headphone detection

kernel based thermal mangement

kernel based mpdecision (this will give you better battery life)

OC to 1.809 (optional)

usb otg

Usb Fast charge(optional off by default)

cpu governeors:wheatly,lionheart,baddass(3 phase),onedemand,performance,conservative,savadgedzen,intellidemand,lagfree,interactive,

IO schedulers: deadline,cfq,bfq,sio,zen,vr,row,fifo,noop

gpu OC (optional)

Linux 3.0.62

user controlled voltage (optional)

dynamic fsync

dynamic readahead

here is a little explanation of kernel based thermal and mpdecision control

What is msm_thermal?

Kernel based 3-phase thermal control!

This replaces your /system/bin/thermald binary which is renamed by the installer to thermald_backup.

Check /sys/kernel/msm_thermal/conf/ for the thermal configuration

allowed_max_high = highest threshold (phase 3)

allowed_max_low = remove the throttling if we cooled down to this (clr_thrshold)

allowed_max_freq = max frequency if throttled (limit)

[...]mid[...] = same as above, just for phase 2

[...]low[...] = Lowest threshold (phase 1)

check_interval_ms = how often shall we check? (sampling rate)

Default: 1000ms (=1sec)

If you want to see msm_thermal doing it's job:

Code:

adb shell cat /proc/kmsg | grep 'msm_thermal'

What is msm_mpdecision?

100% kernel based multi core decision! (should cpu1 be online or not?)

This replaces your /system/bin/mpdecision binary which is renamed by the installer to mpdecision_backup.

Check /sys/kernel/msm_mpdecision/conf/ for the configuration.

startdelay = time until mpdecision starts doing it's magic (70000)

delay = time between checks (500)

pause = if something else plugs in the cpu, fall asleep for 10000

scroff_single_core = if the screen is off, don't plug in cpu1 (1)

nwns_threshold_up = runqueue threshold, if this is reached cpu1 will be hotplugged (35)

nwns_threshold_down = runqueue threshold, if this is reached cpu1 will be unplugged (5)

twts_threshold_up = time threshold, this amount of time must have passed (250)

twts_threshold_down = same as above (250)

enabled = enable(1) or disable(0) mpdecision. This does not affect scroff_single_core!

idle_freq = a value against that will be checked if a core +/- is requested. (486000)

If cpu0 is below that value and a core up of cpu1 is requested, nothing will happen.

If cpu1 is above that value and a core down of cpu1 is requested, nothing will happen. (otherwise it would now put down cpu1 even though it is still working)

(all times are in ms)

My source can be found https://github.com/thicklizard

Normal disclaimer NOT RESPONSIBE IF YOU BRICK,DROP,LOSE YOUR DEVICE. FLASH AT YOUR OWN RISK

downloads

http://d-h.st/hk1

installation instructions

Open zip fastboot flash/flash gui the bootimg

using a file explore replace the modules location in system/lib/modules with the ones in the zip make sure permisions are set correctly

go to system/bin rename mpdecision to mpdecision_backup

go to system/bin rename thermald to thermald_backup

Thanks to

Chad G

intervigil

deck

Showp

Zarboz

Ca1ne