[KERNEL][JUL.17]Bricked-3.0|3.0.36|v1.4|cmdline|Sweep2Wake|mpdecision|bad ass - HTC Sensation

SENSE Bricked-Kernel-3.0 Sensation (pyramid)
The first kernel with kernel mpdecision & 3-phase kernel thermal control
no need for those binaries anymore ​
Highlights:
Default clocks: 1566Mhz max / 192Mhz min
OverClockable till 1944Mhz !NOT ALL DEVICES CAN HANDLE THIS!
3D GPU Overclock @ 320Mhz (if selected during install)
2D GPU Overclock @ 266.667Mhz (if selected during install)
5 Stages 3D GPU scaling, variable io_fraction
3 Stages 2D GPU scaling, io_fraction 100
Increased bus bandwidth
L2 Performance Boost
cmdline options!
maximum screen off frequency
(configurable through cmdline options)
Sweep2Wake! (if selected during install)
>badass governor<
3-phase kernel cpu thermal control
>100% kernel based mpdecision<
The first kernel with interactive install using Aroma Installer by amarullz
with more customizations than you can dream of on any other kernel!​
Features:
Code:
[U]* CM (AOSP) compatible version: See below![/U]
* 3.0.36
* based on HTCs-3.0.16-Sources
* Tested with Sense 3.6 ICS (no known problems)
* Tested with Sense 4 ICS (animations work, thx to virtuous)
* Command Line Options - innovative!
__ Rename the zip to change your settings!
* Sweep2Wake
* badass governor
* 3-phase kernel cpu thermal control
* 100% kernel based mpdecision
* Optimized
* Built with highest Optimization Level (O3)
* Strongly improved UI-performance
* KGSL Early Suspend GPU slumber
* Increased 3D/2D-Performance (GPUOC)
* CAF Bluetooth stack (newer) - faux123
* CIFS
* UTF8 encoding (included for CIFS)
* wifi pm=fast
* Tweaked ondemand governor
* Undervoltage
* Overclocking to 1566Mhz default
* Min Clock @ 192Mhz default
* Boot time optimization. CPU will have 1566Mhz clocks during boot to ensure a fast bootup
* Flashlight and Camera-Flash will now be useable until battery reaches 5%
* Tree-based preemptible RCU
* Fast scheduler for CPU hotplug
* optimized preemptive settings
* basic NTFS support
* Userspace driven configuration filesystem
* Allow CPU-supported unaligned accesses
* Global CPU Voltage table used for adjusting voltage table for SnapDragon Dual Core. Inspired by Snq- modified by faux123 for SnapDragon fixed by show-p1984
* Improved Mobile Connection (fixed possible freezes introduced by HTC)
* ~8% Undervolted till 1566Mhz
* L2 Performance Push
* 3D GPU Overclock @ 320Mhz
* 2D GPU Overclock @ 266.667Mhz
* 6 Stages 3D GPU scaling, variable io_fraction
* 3 Stages 2D GPU scaling, io_fraction 100
* Tweaked ondemand to raise frequencies with higher load only (should contribute to battery life)
* Increased writing performance (lowers that annoying lag when updating 2 apps at the same time)
* Git's Sha1 implementation significantly decreases boot time
* CRC-optimizations
* ZRAM
* Fudgeswap
* PPP over standard asynchronous serial ports
* PPP over synchronous (HDLC) tty devices
* [URL="http://dl.dropbox.com/u/44206202/CallRecorder_v.1.0.20_alpha_2.apk"]Two-Way-Call-Recording[/URL]
* basic NTFS support
* increased bus frequency
* Improved WIFI - WLAN detection
* Automatic process group scheduling
* Lowered wifi-voltage
* cleaned code, improved performance
* Dropped debug code, was slowing things down
Changelog @ bricked.dehttp://bricked.de/compat.php?action=changelogs&device=pyramid&type=sense
What is sweep2wake?
Since this function collides with HTC's screenshot function (PWR+HOME) it will be disabled. Use the AOSP screenshot instead. (PWR+VOL.DOWN at the same time and hold it for about a sec)
This has a few advantages, one is a nice animation the second would be that it is hardcoded by google into any ICS firmware you can find. That means: no matter which device you will pick up, as long as it has ICS this function should work out of the box.​
How to change your frequency/governor before flashing?
That's new. Sounds strange, but it works. I am proud to present a truly innovative concept:
cmdline_khz / cmdline_gov / cmdline_maxscroff
What does this do for you?
Have you ever wished you could set the default min/max/gov/scroff frequency on your own?
Without having to rely on the dev to recompile?
Or doing it yourself?
Or even bothering to learn how to do that?
Or using OC apps that are just in the way?
(governor set able in setup from version 1.0)
Well, your prayers have been heard!
It simplifies any kernel install to the bare minimum. You download the zip, and just change the values to your liking. The kernel will obey you, it's magic!
you will download this file for example:
Bricked-3.0-v0.61-ics-maxkhz=1566000-minkhz=192000-maxscroff=432000.zip
now it is possible that you don't want to oc to 1566Mhz, or your preferred min freq is higher, or or or...
Just rename the file!
Bricked-3.0-v0.61-ics-maxkhz=1188000-minkhz=384000-maxscroff=540000.zip
The kernel will now boot from second 0 with this settings:
Max freq: 1188Mhz
Min freq: 384Mhz
maxscroff: 540Mhz
Cool, isn't it?
Now one could say, hell that's too dangerous, what if I write something wrong in there? No problem, your show-p1984 thought of everything. I have built in that much security measures that it is not even remotely imaginable that something could go wrong. I am serious. Whoever manages to break it gets a golden pile of **** from me.
Now what does it "autocorrect" exactly?
It corrects mhz instead of khz values for you, so you can actually flash this:
Code:
Bricked-3.0-v0.61-ics-maxkhz=1188-minkhz=384-maxscroff=540.zip
and it will still work.
Or it corrects wrong acpu frequencies. You can find a table @ the second post, but if you mistype sth, no fear, it will still work!
Code:
Bricked-3.0-v0.61-ics-maxkhz=1190-minkhz=390-maxscroff=545.zip
for example will let the kernel boot with 1188Mhz max and 384Mhz min (maximum screen off frequency 540Mhz). It always falls back to the next lower step. Actually you won't need to bother for the acpu table anymore, just type anything in there, it will automatically correct it for you! If you still want to enter the correct values, just look in the second post
Now what if you write a letter in there? Like this:
Code:
Bricked-3.0-v0.61-ics-maxkhz=II88000-minkhz=38A000-maxscroff=5A0O00.zip
Well, the kernel will detect that and fall back to default settings read out of my .config. Which means the kernel will boot @ 1566Mhz max and 192Mhz min and maxscroff will be set to 1566Mhz (=disabled).
What to do if you just want to change your clocks?
Rename the zip file, boot into recovery, flash, and enjoy
There is also a sysfs interface for the maxscroff frequency, for simplicity I kept the common name for it.
/sys/devices/system/cpu/cpu0/cpufreq/screen_off_max_freq
Currently there is only one limitation:
You can't have two files with the same base on your scard. that means:
Code:
Bricked-3.0-v0.61-ics-maxkhz=1566000-minkhz=192000-maxscroff=432000.zip
Bricked-3.0-v0.61-ics-maxkhz=1188000-minkhz=384000-maxscroff=540000.zip
are not allowed to be on the sdcard at the same time, the kernel would boot with defaults: 1566/192 if you flash either one of those files.
The "base" of the filename is this: Bricked-3.0-v0.61-ics-
So you can have 2 files (or more) on the sdcard with names like this:
Bricked-3.0-v0.55-b4-ics-****
Bricked-3.0-v0.7-ics-****
Bricked-3.0-v0.8-ics-****
(****=etc etc etc etc)
Furthermore it must be followed by maxkhz=VALUE-minkhz=VALUE-maxscroff=VALUE.zip It is not possible to switch the positions of the options. But you can leave them out of there completely, the kernel will then boot with 1566/192/1566.
Ah btw: We now see our set max mhz under Settings->About Phone->HW->Cpu (it actually changes when you change your maxkhz)
This is genuine innovative code from me. I didn't even occasional glance at someone elses work. So if sth like this is already out there, SCREW THE DEV because I did not see it and wrote it from scratch!
And since 0.6 comes with the awesome Aroma installer you can now choose from 3 gpuoc versions!
GPU OC disabled, [email protected] & [email protected]
GPU low overclock, [email protected] & [email protected]
GPU high overclock, [email protected] & [email protected] + Bandwidth push
The source for this is split into two parts, Kernel & bash script. The script finds the zip on your sdcard, parses the filename and modifies the kernels cmdline inside the boot.img. The Kernel is parsing the cmdline, checking if everything is valid and setting your options.​
How to install?
Just flash from recovery. Because it creates a boot.img out of the one on your phone while flashing, it should work with the majority of ROMs out there.
Interactive install, enjoy the ride! ​
Where to complain about errors/bugs?
Please use the Issuetracker for bugs/errors/feature wishes!
Issuetracker @ https://code.google.com/p/bricked/issues/entry
[email protected]
IRC Chat: Freenode IRC #bricked​
Download:
No Guarantees! If it kills your grandmother or your device, I am NOT responsible! If you understand this:
(If you download, please hit Thanks below my post! Thank you!)
>>> DOWNLOAD <<<
XDA Discussion/Download for AOSP (ICS): Click me
Old Downloads (gcode): Click Me
​
Use System Tuner to undervolt!
Setting min/max frequencies should be done over the zips name instead.
​
Donor List:​
> Hall of fame <
With special thanks to all piggy bank donators!
Thank you very much!​
Source:
​

Changelog moved to bricked.dehttp://bricked.de/index.php?action=changelogs&device=pyramid&type=sense
What does PREEMPTIBLE mean?
Preemptive built kernels are favoring the userinterface over everything else! That means: An app in the background is using 50% of you CPU to spy on you. You want to move fast through the user interface/watch a video, whatever. The kernel will now favor your action over the app in the background. That's all the magic that's happening ​What is badass?
Well good question. With ICS I decided to rework my gb badass which never got released because it was always pushed aside. To break down what it is:
Badass removes all of this "fast peaking" to the max frequency. On a typical system the cpu won't go above 918Mhz and therefore stay cool and will use less power. To trigger a frequency increase, the system must run a bit @ 918Mhz with high load, then the frequency is bumped to 1188Mhz. If that is still not enough the governor gives you full throttle. (this transition should not take longer than 1-2 seconds, depending on the load your system is experiencing)
Badass will also take the gpu load into consideration. If the gpu is moderately busy it will bypass the above check and clock the cpu with 1188Mhz. If the gpu is crushed under load, badass will lift the restrictions to the cpu.
Please remember: Due to it's nature, this is not a benchmark governor. It is meant as a governor that gives you a smooth experience while saving battery, lots of it ​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)
If you want to see the mpdecision magic happening:
Code:
adb shell
cat /proc/kmsg | grep 'MPDEC'
Frequency/Voltage Table:
192000: 800000
310500: 825000
384000: 825000
432000: 850000
486000: 850000
540000: 875000
594000: 875000
648000: 900000
702000: 900000
756000: 925000
810000: 950000
864000: 975000
918000: 975000
972000: 1000000
1026000: 1000000
1080000: 1025000
1134000: 1025000
1188000: 1050000
1242000: 1075000
1296000: 1100000
1350000: 1125000
1404000: 1150000
1458000: 1150000
1512000: 1175000
1566000: 1175000
1620000: 1200000
1674000: 1225000
1728000: 1250000
1782000: 1275000
1836000: 1300000
1890000: 1325000
1944000: 1350000​Available CPU governors:
badass <-- !recommended!
lazy
interactive
lagfree
conservative
userspace
powersave
ondemand
performance​
Stock Kernel for ICS. Unsecured boot.img.

Want a beer?

Znuff said:
Want a beer?
Click to expand...
Click to collapse
two, at least! xD

show-p1984 said:
77 virgins? I would rather have 77 *****es who know what the **** to do!
Click to expand...
Click to collapse
hahaha that made my morning
Sent from my HTC Sensation 4G using XDA App

I have a couple questions, why still use governors or give options when ondemand is the only one that works properly on aSMP?
Or have you found a way to make governors still on both cores?
And this line:
Code:
Synchronous Multicore Threading
Android itself doesn't support true Multi threading at the core OS level, though it allows for apps to be multi-threaded.
What changes have you made to make this statement true.

BrokenWall said:
I have a couple questions, why still use governors or give options when ondemand is the only one that works properly on aSMP?
Or have you found a way to make governors still on both cores?
Android itself doesn't support true Multi threading at the core OS level, though it allows for apps to be multi-threaded.
Click to expand...
Click to collapse
1. Because ppl asked me to include Smartassv2. (ppl = baadnwz xD)
2. Android 2.3.4 has a bit of Honeycomb in it. It supports Multithreading.

Smartass doesn't seem to work as well as it used to on Bravo. Ondemand seems to be the way forward, plus CPU load balancing once threshold is reached. IMHO.
Sent from my HTC Sensation Z710e using XDA App

Re. your post in IC thread. With 0.2 I was getting 13k+, and other values higher than yours, just can't remember what they were exactly. How do I revert to 0.2, just flash it on top? Just for test purpose.
Again. No UI improvement over stock with either of them.
Sent from my HTC Sensation Z710e using XDA App

tinky1 said:
Re. your post in IC thread. With 0.2 I was getting 13k+, and other values higher than yours, just can't remember what they were exactly. How do I revert to 0.2, just flash it on top? Just for test purpose.
Again. No UI improvement over stock with either of them.
Sent from my HTC Sensation Z710e using XDA App
Click to expand...
Click to collapse
Yes, just flash it on top.

tinky1 said:
Re. your post in IC thread. With 0.2 I was getting 11k+, and other values higher than yours, just can't remember what they were exactly. How do I revert to 0.2, just flash it on top? Just for test purpose.
Again. No UI improvement over stock with either of them.
Edited, sorry, typo.
Sent from my HTC Sensation Z710e using XDA App
Click to expand...
Click to collapse
Oh crap, why do i keep quoting myself when I want edit. 11k+ that was.
Sent from my HTC Sensation Z710e using XDA App

Ok.
v0.2
ondemand 11568,1946(???),5794 (392-1.5); 11744,1982,5886 (1.3-1.5)
performance 11621,3368,6669 (1.3-1.5) 11399,3010,6365 (392-1.5)
BTW, System Tuner is able to adjust frequency
Damn, Cf is killing my battery. Mind you, been flashing, benchmarking, xda-ing etc since 7am, so 10.5h in and i'm still at 21%.

tinky1 said:
Ok.
v0.2
ondemand 11568,1946(???),5794 (392-1.5); 11744,1982,5886 (1.3-1.5)
performance 11621,3368,6669 (1.3-1.5) 11399,3010,6365 (392-1.5)
BTW, System Tuner is able to adjust frequency
Damn, Cf is killing my battery. Mind you, been flashing, benchmarking, xda-ing etc since 7am, so 10.5h in and i'm still at 21%.
Click to expand...
Click to collapse
i feel advertising for IC :B

Great job on the kernel, I just wanted to ask if you can include call recording maybe in the next release? That would be nice. Thanks and keep up the great work!
Sent from my HTC Sensation Z710e using xda premium

baadnewz said:
i feel advertising for IC :B
Click to expand...
Click to collapse
Well, score maniacs are going to jump the wagon lol.
IC 2.2.5 remember?

tinky1 said:
Well, score maniacs are going to jump the wagon lol.
IC 2.2.5 remember?
Click to expand...
Click to collapse
well 2.2.5 is still IC )

baadnewz said:
well 2.2.5 is still IC )
Click to expand...
Click to collapse
Baad, seriously, revert to 2.2.5 and close the thread LOL
Just ran bench on v0.2 with 2.2.5 again
noooooow, i'm shocked actually.
ondemand, (392-1.5 default freq) 11662,3376,6690
Will run it for few days, and if battery is close to stock (which it should be) it's a keeper for me, will replace my current stable nandroid

smartassv2 is working good

show-p1984 said:
1. Because ppl asked me to include Smartassv2. (ppl = baadnwz xD)
2. Android 2.3.4 has a bit of Honeycomb in it. It supports Multithreading.
Click to expand...
Click to collapse
it added features for better support, but the OS is still not anything close to what Honeycomb can do with multiple cores. 2.3.4 mainly improved support for multithreaded apps.

vladnosferatu said:
smartassv2 is working good
Click to expand...
Click to collapse
set the governor and then run a bench like cf-bench then in adb shell type this:
cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
it should return the set governor if it still says ondemand then its not setting it for both cores. Also if you change cpu1 to cpu0 it will show you what the primary core is doing.

Related

[KERNEL][JUN.24]Bricked-3.0-AOSP|3.0.36|v1.31|cmdline|Sweep2Wake|mpdecision|ba dass

AOSP Bricked-Kernel-3.0 Sensation (pyramid)
The first kernel with kernel mpdecision & 3-phase kernel thermal control
no need for those binaries anymore ​
Highlights:
Default clocks: 1566Mhz max / 192Mhz min
OverClockable till 1944Mhz !NOT ALL DEVICES CAN HANDLE THIS!
3D GPU Overclock @ 320Mhz (if selected during install)
2D GPU Overclock @ 266.667Mhz (if selected during install)
5 Stages 3D GPU scaling, variable io_fraction
3 Stages 2D GPU scaling, io_fraction 100
Increased bus bandwidth
L2 Performance Boost
cmdline options!
maximum screen off frequency
(configurable through cmdline options)
Sweep2Wake! (if selected during install)
>badass governor<
3-phase kernel cpu thermal control
>100% kernel based mpdecision<
The first kernel with interactive install using Aroma Installer by amarullz!
and more customizations than you can dream of on any other kernel!​
Features:
Code:
* 3.0.36
* based on HTCs-3.0.16-Sources
* Command Line Options - innovative!
__ Rename the zip to change your settings!
* Sweep2Wake
* badass governor
* phase kernel cpu thermal control
* 100% kernel based mpdecision
* KSM support
* Optimized
* Built with highest Optimization Level (O3)
* Strongly improved UI-performance
* KGSL Early Suspend GPU slumber
* Increased 3D/2D-Performance (GPUOC)
* CAF Bluetooth stack (newer) - faux123
* CIFS
* UTF8 encoding (included for CIFS)
* wifi pm=fast
* Tweaked ondemand governor
* Undervoltage
* Overclocking to 1566Mhz default
* Min Clock @ 192Mhz default
* Boot time optimization. CPU will have 1566Mhz clocks during boot to ensure a fast bootup
* Flashlight and Camera-Flash will now be useable until battery reaches 5%
* Tree-based preemptible RCU
* Fast scheduler for CPU hotplug
* optimized preemptive settings
* basic NTFS support
* Userspace driven configuration filesystem
* Allow CPU-supported unaligned accesses
* Global CPU Voltage table used for adjusting voltage table for SnapDragon Dual Core. Inspired by Snq- modified by faux123 for SnapDragon fixed by show-p1984
* Improved Mobile Connection (fixed possible freezes introduced by HTC)
* ~8% Undervolted till 1566Mhz
* L2 Performance Push
* 3D GPU Overclock @ 320Mhz
* 2D GPU Overclock @ 266.667Mhz
* 6 Stages 3D GPU scaling, variable io_fraction
* 3 Stages 2D GPU scaling, io_fraction 100
* Tweaked ondemand to raise frequencies with higher load only (should contribute to battery life)
* Increased writing performance (lowers that annoying lag when updating 2 apps at the same time)
* Git's Sha1 implementation significantly decreases boot time
* CRC-optimizations
* ZRAM
* Fudgeswap
* [URL="http://dl.dropbox.com/u/44206202/CallRecorder_v.1.0.20_alpha_2.apk"]Two-Way-Call-Recording[/URL]
* basic NTFS support
* increased bus frequency
* Improved WIFI - WLAN detection
* Automatic process group scheduling
* Lowered wifi-voltage
* cleaned code, improved performance
* Dropped debug code, was slowing things down
Changelog @ bricked.dehttp://bricked.de/compat.php?action=changelogs&device=pyramid&type=aosp
What is sweep2wake?
How to change your frequency/governor before flashing?
!!!! READ THIS !!!!​
That's new. Sounds strange, but it works. I am proud to present a truly innovative concept:
cmdline_khz / cmdline_gov / cmdline_maxscroff
What does this do for you?
Have you ever wished you could set the default min/max/gov/scroff frequency on your own?
Without having to rely on the dev to recompile?
Or doing it yourself?
Or even bothering to learn how to do that?
Or using OC apps that are just in the way?
(governor set able in setup from version 1.0)
Well, your prayers have been heard!
It simplifies any kernel install to the bare minimum. You download the zip, and just change the values to your liking. The kernel will obey you, it's magic!
you will download this file for example:
Bricked-3.0-v0.61-ics-maxkhz=1566000-minkhz=192000-maxscroff=432000.zip
now it is possible that you don't want to oc to 1566Mhz, or your preferred min freq is higher, or or or...
Just rename the file!
Bricked-3.0-v0.61-ics-maxkhz=1188000-minkhz=384000-maxscroff=540000.zip
The kernel will now boot from second 0 with this settings:
Max freq: 1188Mhz
Min freq: 384Mhz
maxscroff: 540Mhz
Cool, isn't it?
Now one could say, hell that's too dangerous, what if I write something wrong in there? No problem, your show-p1984 thought of everything. I have built in that much security measures that it is not even remotely imaginable that something could go wrong. I am serious. Whoever manages to break it gets a golden pile of **** from me.
Now what does it "autocorrect" exactly?
It corrects mhz instead of khz values for you, so you can actually flash this:
Code:
Bricked-3.0-v0.61-ics-maxkhz=1188-minkhz=384-maxscroff=540.zip
and it will still work.
Or it corrects wrong acpu frequencies. You can find a table @ the second post, but if you mistype sth, no fear, it will still work!
Code:
Bricked-3.0-v0.61-ics-maxkhz=1190-minkhz=390-maxscroff=545.zip
for example will let the kernel boot with 1188Mhz max and 384Mhz min (maximum screen off frequency 540Mhz). It always falls back to the next lower step. Actually you won't need to bother for the acpu table anymore, just type anything in there, it will automatically correct it for you! If you still want to enter the correct values, just look in the second post
Now what if you write a letter in there? Like this:
Code:
Bricked-3.0-v0.61-ics-maxkhz=II88000-minkhz=38A000-maxscroff=5A0O00.zip
Well, the kernel will detect that and fall back to default settings read out of my .config. Which means the kernel will boot @ 1566Mhz max and 192Mhz min and maxscroff will be set to 1566Mhz (=disabled).
What to do if you just want to change your clocks?
Rename the zip file, boot into recovery, flash, and enjoy
There is also a sysfs interface for the maxscroff frequency, for simplicity I kept the common name for it.
/sys/devices/system/cpu/cpu0/cpufreq/screen_off_max_freq
Currently there is only one limitation:
You can't have two files with the same base on your scard. that means:
Code:
Bricked-3.0-v0.61-ics-maxkhz=1566000-minkhz=192000-maxscroff=432000.zip
Bricked-3.0-v0.61-ics-maxkhz=1188000-minkhz=384000-maxscroff=540000.zip
are not allowed to be on the sdcard at the same time, the kernel would boot with defaults: 1566/192 if you flash either one of those files.
The "base" of the filename is this: Bricked-3.0-v0.61-ics-
So you can have 2 files (or more) on the sdcard with names like this:
Bricked-3.0-v0.55-b4-ics-****
Bricked-3.0-v0.7-ics-****
Bricked-3.0-v0.8-ics-****
(****=etc etc etc etc)
Furthermore it must be followed by maxkhz=VALUE-minkhz=VALUE-maxscroff=VALUE.zip It is not possible to switch the positions of the options. But you can leave them out of there completely, the kernel will then boot with 1566/192/1566.
Ah btw: We now see our set max mhz under Settings->About Phone->HW->Cpu (it actually changes when you change your maxkhz)
And since 0.6 comes with the awesome Aroma installer you can now choose from 3 gpuoc versions!
GPU OC disabled, [email protected] & [email protected]
GPU low overclock, [email protected] & [email protected]
GPU high overclock, [email protected] & [email protected] + Bandwidth push
The source for this is split into two parts, Kernel & bash script. The script finds the zip on your sdcard, parses the filename and modifies the kernels cmdline inside the boot.img. The Kernel is parsing the cmdline, checking if everything is valid and setting your options.​
How to install?
Just flash from recovery. Because it creates a boot.img out of the one on your phone while flashing, it should work with the majority of ROMs out there.
Interactive install, enjoy the ride! ​
Where to complain about errors/bugs?
Please use the Issuetracker for bugs/errors/feature wishes!
Issuetracker @ https://code.google.com/p/bricked/issues/entry
[email protected]
IRC Chat: Freenode IRC #bricked​
Download:
No Guarantees! If it kills your grandmother or your device, I am NOT responsible! If you understand this:
(If you download, please hit Thanks below my post! Thank you!)
>>> DOWNLOAD <<<
Old Downloads (gcode): Click Me​
Use System Tuner to undervolt!
Setting min/max frequencies should be done over the zips name instead.
​
Donor List:​
> Hall of fame <
With special thanks to all piggy bank donators!
Thank you very much!​
Source:
​
Some more information @ http://forum.xda-developers.com/showpost.php?p=17430308&postcount=2
Thanks, WORKS AWESOME!
Still works pretty good, makes my battery drain even less on CM9 while using no S2W!
#reserved
10chars
You stole my second post!
Thank you
Show, i don't really know about all and i think i mght be a "noob" user compared to you or lot of members here but well i'm not blonde
Could you please explain the difference beetween CM7 kernel and the V0.86 ? i don't get what CM7 is and if it's better than the V 0.86 v on our other post ?
Catpoule said:
Show, i don't really know about all and i think i mght be a "noob" user compared to you or lot of members here but well i'm not blonde
Could you please explain the difference beetween CM7 kernel and the V0.86 ? i don't get what CM7 is and if it's better than the V 0.86 v on our other post ?
Click to expand...
Click to collapse
CM7 is CayanogenMod 7 = AOSP kind of Android.
You can download it here: Sensation CM7 SelfKang Alphafied
man, sounds awesome! i'll give it a go... thanks
edit:
very very nice! super smooth man... great job!
edit 2:
BT no workie for me at least, can't even get it to turn on.
May be alpha but it flies - no glitches so far.
mweulink said:
Thanks, WORKS AWESOME!
Good job!
Click to expand...
Click to collapse
+1 to that.
I've done the run of the ROMS last 6 weeks and it's been fun so I decided to try CM7 again (MyTouch4G) and boy am I reminded of what smooth and simple feels like!
and that was before flashing shows kernel.
Now? Wow!
Yup it flies! and the scores below were taken without using a daemon or app to overclock - only the Alpha V0.1 kernel doing its thing.
Nice work. One thing I notice right off the bat is BT is totally killed with this kernel.
Sent from my Sensation using XDA App
Have a St. Pauli Girl or two
Hey man enjoy the beers 54S273734X9251808 and thanks again...
-Punisher- said:
Hey man enjoy the beers 54S273734X9251808 and thanks again...
Click to expand...
Click to collapse
Thank you very much!
Sleepytime28 said:
Nice work. One thing I notice right off the bat is BT is totally killed with this kernel.
Sent from my Sensation using XDA App
Click to expand...
Click to collapse
Can you pair with bt and there is just no audio or can you not pair and its completely non functional? The only reason I ask is my bt has always worked with cm7 even though there are reports it doesn't. I guess I have a lucky bt headset.
Sent from my Sensation 4G
BT is not working at all, can not even turn it on.
Overall this kernel is very fast and very smooth.
Downloading. will report back .. nice work mate.
been one day since i asked about cm7 version and you already smoked one out... excellent work!
You are the man show! If this is anything like your sense kernels we are all in for a treat. You def. are great adittion to our Sensation Community! Thank you again, bro!
Does this work with the leastest cm7 alpha3???
DroidRC1 said:
Does this work with the leastest cm7 alpha3???
Click to expand...
Click to collapse
I'm using it on alpha 3, no problems yet.
Sent from my Sensation using Tapatalk
quierotacobell said:
I'm using it on alpha 3, no problems yet.
Sent from my Sensation using Tapatalk
Click to expand...
Click to collapse
Thanks! Downloading now
Nice work. Ever since I've started running OC'd kernels I just can't stand going back to normal.Even just at your default speeds the whole UI experience just feels snappier. Thanks!
--edit-- I can verify that bt will not power up anymore. With the oe kernel it used to start (hands free calling didn't work with my car), but it started lol. Now I got zip...
Anyone here able to compare this to fauxs cm7 kernels? I am on cm7 version 1 with fauxs kernel.
Matt

[KERNEL][GB SENSE][05/10-2011]tristan202-gb-desire v05 (OC/UV/HAVS/BFS/CFS/V(R))

This is my personal kernel, that I decided to release now. It is extremely lean to minimize memory footprint and optimize perfomance. It is built from HTC official GB sources, with some of bananacakes, siberes, snq-s and my own patches. I intend to keep it at 2.6.35.10, as I see more problems than advantages in upstreaming to newer revisions.
Features:
-Hybrid adaptive voltage scaling (HAVS)
-V(R) i/o scheduler
-TinyRCU
-Overclock up to 1190
-Undervolt
-Ondemand, Virtuous and SmartassV2 governors (I use Virtuous for wake and Ondemand for sleep)
-AXI
-Lowered WiFi voltage
-EXT4 support
-snq-'s Autobrightnessmod (Enable all 10 levels)
-sibere's Battfix
-USB fast charge
-Optional 2 way call recording
-Hardcoded SD Speed Patch to 2048. No need for init script anymore
-Hardcoded highly tweaked Lowmemkiller (3584,4096,8192,20992,23040,25088). Throw away Autokiller and/or init scripts.
To make it more lean, I have disabled EXT2 support. SWAP isn't supported either, as I find it completely useless.
I have added CIFS and TUN as modules. To install, download and extract the file and push it to /system/lib/modules like so:
Code:
adb remount
adb push cifs.ko /system/lib/modules/cifs.ko
adb push tun.ko /system/lib/modules/tun.ko
And add the following line to your modules init script:
Code:
insmod /system/lib/modules/cifs.ko
insmod /system/lib/modules/tun.ko
The kernel comes in 2 flavors. BFS and CFS. Differences between them are here:
BFS - Brain F**k Scheduler
The scheduler essentially handles CPU resource allocation. It controls how the CPU ramps up in frequency and down again when not needed. The BFS version is generally very snappy (possibly more so than CFS) but is an older scheduler. It is designed to minimise latency on low spec'd machines (desktops generally)
Further details here:
http://en.wikipedia.org/wiki/Brain_****_Scheduler
CFS - Completely Fair Scheduler
This particular scheduler is newer than BFS. It is designed to make the best of High end machines (desktops again). In the early days, CFS seemed much laggier than BFS but now there is not too much in it. I am quite happily running a modern CFS kernel and I don't experience any lag issues.
Further details here:
http://en.wikipedia.org/wiki/Completely_Fair_Scheduler
I am aware that the BFS version throws some errors about 'bad cgroup data' in logcat, I haven't been able to get rid of them. I have disabled everything cgroup related in the kernel, but vm still throws the errors. Don't know why. Doesn't seem to impact performance.
I personally use the BFS version, as I find it somewhat faster than the CFS one. I have absolutely no wake lag, and I get good battery time.
Thanks go out to: snq-, bananacakes, sibere, tobi01001, thalamus, eviollet. If I forgot anyone, pls inform me.
CHANGELOG:
V05:
XZ compression
Fixed Wifi sleep
Tweaked OJ settings for better responsiveness (bananacakes)
Changed ramdisk compression method to gzip.
Rebuilt tun.ko and cifs.ko
v04b:
Fixed WIFI. (My bad. Forgot to adapt install script after including new ramdisk.)
v04:
Added Lowmemkiller tweak to ramdisk (3584,4096,8192,20992,23040,25088) No need for Autokiller or init scripts anymore. Over time I will move more tweaks into the ramdisk to minimize the need for init scripts.
Updated BFS to 0.406
Reverted battery gauge polling to 60 secs.
Added Virtuous governor. Virtuous is a highly tweaked SmartassV2.
Removed Lagfree governor again, as I found OndemandX better.
v03:
Hardcoded SD Speed Tweak to 2048. No need for init script anymore
Made 2-way call recording optional. Check downloads
Reduced battery gauge polling from 60 to 5 secs. (Untested)
A few bits more, can't remember it all.
v02:
Added Lagfree governor. Gives me a wee bit better battery, but sometimes lags when listening to music. Maybe I'll remove it again. Tell me what you think.
Added a minor change from tobi01001 to the lightsensor driver. Details here
Hopefully fixed USB fast charge.
Compiler optimizations
Link to my github: https://github.com/tristan202
Earlier i heard lot's of people complaining about reboots / hang up's when browsing internet with lowered WIFI voltages, i will give it a try today anyway thanks.
k3lcior said:
Earlier i heard lot's of people complaining about reboots / hang up's when browsing internet with lowered WIFI voltages, i will give it a try today anyway thanks.
Click to expand...
Click to collapse
I have been running with lowered wifi voltage for a few days without any problems at all. Doesn't browse much though, but market another wifi stuff have been working fine.
I'll give you feedback soon.
Thx and congratz.
Tapatalking.
tristan202 said:
I have been running with lowered wifi voltage for a few days without any problems at all. Doesn't browse much though, but market another wifi stuff have been working fine.
Click to expand...
Click to collapse
I've been using your kernel for several weeks now (tried all the rest) is this the same as your other one or have you tweaked it some more? and is there any chance you can add Sib's battfix?
Thanks a lot mate the combination of HAVS, BFS, 1190 OC with UV to 825 working very nicely for me
beanbean50 said:
is this the same as your other one or have you tweaked it some more? and is there any chance you can add Sib's battfix?
Click to expand...
Click to collapse
Just ask HTC they know everything about your phone
beanbean50 said:
I've been using your kernel for several weeks now (tried all the rest) is this the same as your other one or have you tweaked it some more? and is there any chance you can add Sib's battfix?
Click to expand...
Click to collapse
siberes battery fix is included, and I have been making some tweaks to since the last release. Some minor stuff, but still some improvement.
tristan202 said:
siberes battery fix is included, and I have been making some tweaks to since the last release. Some minor stuff, but still some improvement.
Click to expand...
Click to collapse
wow, many thanks....
is there much difference between the 2 governors ondemandx and smartassV2...?
Autobrighness mod is included (10 positions in arrays.xml)???
Tapatalking.
ziggy1001 said:
Thanks a lot mate the combination of HAVS, BFS, 1190 OC with UV to 825 working very nicely for me
Just ask HTC they know everything about your phone
Click to expand...
Click to collapse
haha...!
Yes, HTC, Google and every other Tom, **** and Harry...
beanbean50 said:
wow, many thanks....
is there much difference between the 2 governors ondemandx and smartassV2...?
Click to expand...
Click to collapse
Ondemand:
The ondemand governor is the default option used by Android. It scales the CPU speed between the minimum and maximum speeds depending on CPU load. If the system needs more speed, the kernel will rapidly scale up the CPU speed. This is available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point, ondemand will rapidly scale the CPU up to meet demand, then gradually scale the CPU down when it isn't needed.
Smartass:
This is based on the concept of the interactive governor. This is included in some custom kernels. The smartass governor effectively gives the phone an automatic Screen Off profile, keeping speeds at a minimum when the phone is idle.
Interactive:
The 'interactive' governor has a different approach. Instead of sampling the cpu at a specified rate, the governor will scale the cpu frequency up when coming out of idle. When the cpu comes out of idle, a timer is configured to fire within 1-2 ticks. If the cpu is 100% busy from exiting idle to when the timer fires then we assume the cpu is underpowered and ramp to MAX speed.
If the cpu was not 100% busy, then the governor evaluates the cpu load over the last 'min_sample_rate' (default 50000 uS) to determine the cpu speed to ramp down to.
This is available in newer kernels, and becoming the default scaling option in some official Android kernels. The interactive governor is functionally similar to the ondemand governor with an even greater focus on responsiveness.
ironjon said:
Autobrighness mod is included (10 positions in arrays.xml)???
Tapatalking.
Click to expand...
Click to collapse
tobi's autobrightnessmod is included. Adding to OP.
Thanks, I'll be testing this! I've been using snq-'s kernel builds but since the OC/UV ones have freezing problems, and gingercakes won't work for me without MASSIVE lag, I look forward to seeing how this works out.
ironjon said:
Autobrighness mod is included (10 positions in arrays.xml)???
Tapatalking.
Click to expand...
Click to collapse
It seems to work, yes. I've just pushed my patched framework-res.apk, and auto-brightness seems to do exactly what it did on snq-'s patched kernel.
EDIT: Ah, ninja'd. Well, there you have it then.
tristan202 said:
Ondemand:
The ondemand governor is the default option used by Android. It scales the CPU speed between the minimum and maximum speeds depending on CPU load. If the system needs more speed, the kernel will rapidly scale up the CPU speed. This is available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point, ondemand will rapidly scale the CPU up to meet demand, then gradually scale the CPU down when it isn't needed.
Smartass:
This is based on the concept of the interactive governor. This is included in some custom kernels. The smartass governor effectively gives the phone an automatic Screen Off profile, keeping speeds at a minimum when the phone is idle.
Interactive:
The 'interactive' governor has a different approach. Instead of sampling the cpu at a specified rate, the governor will scale the cpu frequency up when coming out of idle. When the cpu comes out of idle, a timer is configured to fire within 1-2 ticks. If the cpu is 100% busy from exiting idle to when the timer fires then we assume the cpu is underpowered and ramp to MAX speed.
If the cpu was not 100% busy, then the governor evaluates the cpu load over the last 'min_sample_rate' (default 50000 uS) to determine the cpu speed to ramp down to.
This is available in newer kernels, and becoming the default scaling option in some official Android kernels. The interactive governor is functionally similar to the ondemand governor with an even greater focus on responsiveness.
Click to expand...
Click to collapse
but we only have the first two governors to choose from, Interactive is not an option (in setcpu) or am I being stupid as per usual ...?
is usb fast charge enabled?
ZeGuitarist said:
Thanks, I'll be testing this! I've been using snq-'s kernel builds but since the OC/UV ones have freezing problems, and gingercakes won't work for me without MASSIVE lag, I look forward to seeing how this works out.
It seems to work, yes. I've just pushed my patched framework-res.apk, and auto-brightness seems to do exactly what it did on snq-'s patched kernel.
EDIT: Ah, ninja'd. Well, there you have it then.
Click to expand...
Click to collapse
where can I find the patched framework ?
beanbean50 said:
where can I find the patched framework ?
Click to expand...
Click to collapse
You have to patch your own framework-res
Tapatalking.
ironjon said:
You have to patch your own framework-res
Tapatalking.
Click to expand...
Click to collapse
can you guess my next question ...? hehe
Here you go i like helping the aged especially when, poor eyesight, liver damage, and tropical diseases have taken their toll
[How to] Adjust auto-brightness on GB Sense ROM
beanbean50 said:
where can I find the patched framework ?
Click to expand...
Click to collapse
You can't find it anywhere, you need to patch your own framework. The framework apk differs for each ROM, and contains each individual user's UOT kitchen mods too... So to be safe, you really shouldn't use someone else's framework.
Anyway, here's how to do it:
http://forum.xda-developers.com/showthread.php?p=17713587
It's pretty easy, as long as you know where your ROM's framework apk is (in internal /system, or in /sd-ext). Also, the thread suggest you put your framework mod in a flashable zip, but it's easier to just boot in recovery, and use adb to remove your old framework and push the new one.

[KERNEL][S4][CM9] Fusion Ultimate v1.1 ***OBSOLETE*** No longer supported.

Fusion Ultimate Kernel for AOSP-based ICS ROMs
Latest Version: v1.1 (8/9/12)​
This kernel is no longer supported due to the lack of interest in CM9 now that CM10 is out. Check out my new CM10 based Fusion Ultimate Kernel.
Thanks for all the support!!
Disclaimer:
Code:
#include
/*
* Your warranty is now void.
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed.
* YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you. :P
* blah blah blah you get the point.
*/
As I promised, this is the Fusion Ulitmate Kernel for ICS AOSP-based ROMs. I forked intervigilium's repo and then incorporated all the changes from my other Sense-based kernel. Thank you for your patience; I was working on fixing things up before finally releasing an AOSP version. I decided to create a separate thread so it would be easier to report issues without the thread getting messy.
Click to expand...
Click to collapse
Post #1: Release, Features, and Downloads
Post #2: Changelog
Post #3: How to compile from source
Post #4: Frequently Asked Questions
This kernel is only compatible with CM9 and other AOSP ICS based ROMs. Sorry, no Jellybean support for now. I will wait until CM10 is a bit more stable.
Features
[*]CPU frequency control from 192Mhz <---> 1.89Ghz
[*]kernel defaults to min 192Mhz and max 1.5Ghz
[*]voltage control (use System Tuner Lite/Pro)
[*]SmartassV2, Interactive, Conservative, LagFree, and Lionheart CPU governors added
[*]Simple IO (SIO) and V(R) scheduler added
[*]capacitive LED lights dimmed to 2mA
[*]improved media scanning times (increased readahead buffer)
[*]changed minfree and ADJ values for good multitasking and performance
[*]zip package with modified init.qcom.post_boot.sh and thermald.conf
[*]enabled zRam (see FAQ for a detailed explanation of what it does)
[*]overall good battery life and performance
[*]optimized and tweaked
[*]much more; check the changlog or my GitHub if you want to know the specifics
Click to expand...
Click to collapse
Downloads
v1.0 (boot-080212.zip): http://d-h.st/f5F
v1.1 (boot-080912.zip): http://d-h.st/IjB
How to Install
For hboot 1.09 and below:
Just flash the zip in TWRP recovery. It will automatically flash the boot.img for you.
For hboot 1.13 and up:
you have two options
Option #1
Use TWRP's HTC Dumlock feature. It is a pretty neat workaround that allows you to flash boot.imgs in recovery even on a higher hboot.
Look here for instructions from TeamWin. If you are not comfortable with this method, then follow option #2 to manually flash in fastboot.
Option #2
In addition to flashing the zip, you will have to extract the boot.img from the package and flash it manually with fastboot. Blame HTC for the half-assed 'unlock bootloader' offering they give us. Hopefully we will get S-OFF soon...
Code:
adb reboot bootloader
fastboot flash boot boot.img
fastboot erase cache
fastboot reboot
Look here for a guide.
Sources
initramfs: https://github.com/klin1344/initramfs_ville_cm9
kernel: https://github.com/klin1344/android_kernel_htc_msm8960
*special thanks to intervigil and xkonni for their awesome work on CyanogenMod! Seriously, without them we wouldn't have any AOSP ROMs!*
Enjoy
Changelog/Complete Feature List
Changelog
v1.0 (Initial Release 8/2/12)
re-wrote overclock code
completely re-based on the TMOUS source
init.d scripts support with Busybox run-parts
overclocked up to 1.89Ghz
added 192Mhz step
added SmartassV2 CPU governor (still finicky; needs more testing)
enabled Conservative and Interactive CPU governors
added SIO scheduler and enabled as default
increased readahead buffer
various tweaks for UI responsiveness
stable
v1.0
cleaned up CPU code (all frequency issues should be gone by now; check github for full details)
added LionHeart CPU governor
added LagFree CPU governor
reduced capacitive LED brightness to 2mA (looks better)
tuned Interactive CPU governor parameters
many optimizations; check github for more details if you want
v1.0
added voltage control capabilities (use SetCPU or similar app to UV)
cleaned up CPU code again to try to get frequencies to stick
v1.0
added V(R) IO scheduler
change to a zip package
modified init.qcom.post_boot.sh and thermald.conf
added modules in the zip so it shouldn't break WiFi on EU ROMs anymore
allowed undervolting minimum of 400mV
tweaked minfree and ADJ values for multitasking and performance; the used values were from the V6 OOM Calculator
Conservative CPU governor as default for battery life (use an app to change it if you want)
defaulted CPU frequencies to 192Mhz 1.5Ghz on boot
v1.0
enabled zRam
adjusted VM ratios
added NEON and Snapdragon optimizations
v1.1 (8/9/12)
updated modules; hopefully fixes WiFi issues
Click to expand...
Click to collapse
basically has all features of the latest Sense version.
For Developers
How to build this kernel from source:
This is assuming you already have your Linux environment setup and installed the required packages for compiling a kernel. Make sure mkbootimg is installed your /bin/ directory.
1. Clone my initramfs and kernel sources.
Code:
git clone git://github.com/klin1344/android_kernel_htc_msm8960.git
git clone git://github.com/klin1344/initramfs_ville_cm9.git
2. Compress the ramdisk into a gzipped archive. First navigate to the initramfs_ville_cm9 directory, then:
Code:
find . | cpio -o -H newc | gzip > ../ramdisk.gz
3. Grab the toolchain from DoomLord's handy repo:
Code:
git clone git://github.com/DooMLoRD/android_prebuilt_toolchains.git toolchains
4. I have created an easy build script. Modify the top four lines to be applicable to your setup. Make sure CROSS_COMPILE is set to the directory of the toolchain we just downloaded earlier (there are two; not the Linaro one). And change INITRAMFS_DIR to the directory of the ramdisk.gz you created earlier.
5. Build. First navigate to the android_kernel_htc_msm8960 directory.
Code:
./build.sh ville_defconfig
The script will detect the number of cores of your CPU and automatically make with the optimal -j#.
6. If all goes well you should end up with a boot.img in the android_kernel_htc_msm8960 directory.
FAQ.... Please read this before posting questions!!!
FAQ​
Frequently asked questions. Please read all of this first, and then if it doesn't answer your question, feel free to ask in the thread. I just don't want to have to keep answering Is this kernel SENSE based? or How do I jailbreak my HTC One S??? type of questions. Lol. :silly: Thank you.
Click to expand...
Click to collapse
What ROMs is this kernel compatible with?
As stated in the OP, this kernel is compatible with all S4 devices running an AOSP-based ICS ROM (CM9, AOKP, ParanoidAndroid). Will probably work with MIUI AOSP-based as well.
What is the best governor for me to use?
It really depends on what you're looking for. If you want performance, go with Lionheart or Ondemand. If you want battery life, go with Conservative. And if you are looking for a balance between battery life and performance, then use either SmartassV2, Interactive, or LagFree. These are just my opinions. Look here for a great reference of all the CPU governors. Test them out and decide which works best for you.
Which I/O scheduler is the best?
I personally use SIO, but you can test and decide which is the best for you. Read here to find the pros and cons of each one.
How do I overclock?
The kernel should default at 192Mhz 1.5Ghz CPU clocks. You can overclock directly from Performance Settings in CyanogenMod. Additionally, you can use SetCPU, No-Frills CPU, System Tuner Lite/Pro, or any similar CPU control app. However, be aware some apps don't allow the settings to stick properly.
How do I undervolt?
Right now, the only app that works for voltage control is System Tuner. Both the Lite and Pro versions allow you to change the voltages. Do not use SetCPU as it doesn't work.
Here is the voltage table I am currently using:
Code:
1890mhz: 1250 mV
1809mhz: 1225 mV
1728mhz: 1200 mV
1674mhz: 1175 mV
1512mhz: 1150 mV
1458mhz: 1137 mV
1404mhz: 1125 mV
1350mhz: 1125 mV
1296mhz: 1100 mV
1242mhz: 1100 mV
1188mhz: 1075 mV
1134mhz: 1075 mV
1080mhz: 1025 mV
1026mhz: 1000 mV
972mhz: 1000 mV
918mhz: 975 mV
864mhz: 975 mV
810mhz: 950 mV
756mhz: 950 mV
702mhz: 900 mV
648mhz: 900 mV
594mhz: 875 mV
540mhz: 850 mV
486mhz: 800 mV
384mhz: 725 mV
192mhz: 650 mV
Please just take these as a grain of salt; not all chips are created equal! Some devices can become an ass when it comes to undervolting, while others can starve the CPU to death and still run fine. Experiment little by little until you find your perfect voltages.
What is zRam and how does it work?
Originally Posted by faux123
ZRAM (aka CompCache aka RAMZSwap)
ZRAM is an updated version formally known as CompCache and RAMZSwap. It was originally designed for 2.6.38.xx kernels, I have backported to our 2.6.35.xx kernel. ZRAM allows real-time compression of memory objects in RAM thus reducing memory pressure for the Linux kernel and can keep more apps in memory longer (more apps in RAM == better performance, less fetching from slower MMC or SDCard). Compression, however, is not Free. Some CPU cycles are required to do the compress/decompression, so there's a slight penalty for it. The original CompCache / RAMZSwap required a user space binary to control its behavior which adds additional penalty to performance, but the new version ZRAM eliminated the need for a separate dedicated daemon, thus reducing the overhead and increased performance from the old CompCache by 20%. Therefore, with the newer implementation of ZRAM interface, the performance penalty is almost negligible.
Click to expand...
Click to collapse
Something doesn't work???
Please reproduce the error a couple of times and include a logcat.
Code:
adb logcat > logcat.txt
It will say "waiting for device", but it is actually recording a logcat. Reproduce the issue several times, and then you can close the Terminal or Command Prompt window. The logcat.txt will be in the directory you opened the Terminal/Command Prompt in.
Cool. Gonna try this out too.
Sent from my HTC VLE_U using Tapatalk 2
Thank you for the aosp love
Sent from my Nexus 7 using XDA Premium HD app
mteezey said:
Cool. Gonna try this out too.
Sent from my HTC VLE_U using Tapatalk 2
Click to expand...
Click to collapse
blackhartct said:
Thank you for the aosp love
Sent from my Nexus 7 using XDA Premium HD app
Click to expand...
Click to collapse
No problem.
Sent using Tapatalk
Don't think undervolting is working. I can set everything to ridiculously lowl value and it would still work.
c19932 said:
Don't think undervolting is working. I can set everything to ridiculously lowl value and it would still work.
Click to expand...
Click to collapse
SetCPU? If so, wont work as stated in the FAQ.
Is this working on CM10? I know that is ics based but has someone tested?
c19932 said:
Don't think undervolting is working. I can set everything to ridiculously lowl value and it would still work.
Click to expand...
Click to collapse
phoenixita said:
Is this working on CM10? I know that is ics based but has someone tested?
Click to expand...
Click to collapse
Are you guys trying to test my patience or what? Both your questions are clearly answered multiple times in the OP and FAQ.
If I spend countless hours developing for you guys, wouldn't it be more fair if everyone could just take a few minutes to thoroughly read through my posts? If you can't do that, then maybe xda isn't for you. I post stuff for people to actually read, you know.
It's because of one after another of redundant questions like these that devs lose their patience and leave. Thats how the galaxy player community lost every single dev they had.
Sent using Tapatalk
Pheroh said:
SetCPU? If so, wont work as stated in the FAQ.
Click to expand...
Click to collapse
No I'm using system tuner pro
i love you for this man thanks a lot!
Sent from my HTC One S
Thanks Klin!
Sent from my HTC VLE_U using Tapatalk 2
I know using the minmax gov has fallen out of favor a bit, but I'm still a big fan of it; would it be terrrible if I asked if you could incorporate it?
blinksilver said:
I know using the minmax gov has fallen out of favor a bit, but I'm still a big fan of it; would it be terrrible if I asked if you could incorporate it?
Click to expand...
Click to collapse
Sure I'll add in the next release.
Sent using Tapatalk
c19932 said:
No I'm using system tuner pro
Click to expand...
Click to collapse
I have tested it out more, and it seems like changing the voltage in system tuner pro doesnt take immediate effect after you changed it. For example, I can change the voltage to a really, really low value (lets say 500mV for all frequencies) and the phone would still work. Then after I browse around on the phone for 1-2 min the phone would reboot. When I use system tuner on my HTC Sensation I dont have that issue. only in this kernel. Hope I'm explaining it clear enough
c19932 said:
I have tested it out more, and it seems like changing the voltage in system tuner pro doesnt take immediate effect after you changed it. For example, I can change the voltage to a really, really low value (lets say 500mV for all frequencies) and the phone would still work. Then after I browse around on the phone for 1-2 min the phone would reboot. When I use system tuner on my HTC Sensation I dont have that issue. only in this kernel. Hope I'm explaining it clear enough
Click to expand...
Click to collapse
Ok thanks for explaining the issue in more detail. Do any other apps (e.g. voltage control, setcpu) work?
Wifi Broken After Flashing
I noticed that wifi wasn't working after flashing, so checked the zip for modules. They're not there.
kundica said:
I noticed that wifi wasn't working after flashing, so checked the zip for modules. They're not there.
Click to expand...
Click to collapse
I will try to address the problem tomorrow.
Sent using Tapatalk

[KERNEL][S4][SENSE][4.0.4] Fusion Ultimate v2.1 | CPU Settings Fixed! | (9/2/12)

Fusion Ultimate Kernel for all Sense-based 4.0.4 ROMs (Yes, including ViperOneS)
Latest Version: v2.1 (9/2/12)​
Disclaimer:
Code:
#include
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed.
* YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you. :P
* blah blah blah you get the point.
*/
This kernel is built from the new HTC RUU 2.31 kernel sources, which means it's compatible with any Sense 4.0.4 ROM (including ViperOneS). This is the kernel everybody has been asking for!! :victory:
Click to expand...
Click to collapse
CPU settings now stick! Use SetCPU for CPU settings and System Tuner for voltage settings. The settings WILL stick!
Features
init.d scripts support
CPU frequency control from 192Mhz 1.89Ghz
voltage control (use System Tuner Lite/Pro)
SmartassV2, Interactive, Conservative, LagFree, Lionheart, Brazilianwax, Intellidemand, Interactivex, SavagedZen, Smartass(V1) CPU governors added
Simple IO (SIO) and V(R) scheduler added
capacitive LED lights dimmed to 2mA
improved media scanning times (increased readahead buffer)
good multitasking
enabled zRam
greatly improved I/O performance (disabled fsync() )
overall good battery life and performance
XZ kernel compression
optimized and tweaked
much more; check the changlog or my GitHub if you want to know the specifics
Click to expand...
Click to collapse
Downloads
All downloads are HERE
How to Install
For hboot 1.09 and below:
1. Download the .7z package.
2. In it you will see a "stock" and an "overclock folder". Extract the boot-xxxxxx.zip you want.
3. Then flash the zip in TWRP recovery. It will automatically flash the boot.img for you.
For hboot 1.13 and up:
1. Download the .7z package.
2. In it you will see a "stock" and an "overclock folder". Extract the boot-xxxxxx.zip you want.
3. You have two options:
Option #1
Use TWRP's HTC Dumlock feature. It is a pretty neat workaround that allows you to flash boot.imgs in recovery even on a higher hboot.
Look here for instructions from TeamWin. If you are not comfortable with this method, then follow option #2 to manually flash in fastboot.
Option #2
In addition to flashing the zip, you will have to extract the boot.img from the package and flash it manually with fastboot. Blame HTC for the half-assed 'unlock bootloader' offering they give us. Hopefully we will get S-OFF soon...
Code:
adb reboot bootloader
fastboot flash boot boot.img
fastboot erase cache
fastboot reboot
Look here for a guide.
Sources
kernel: https://github.com/klin1344/kernel_ville_2.21
Enjoy
Changelog/Complete Feature List
Changelog
v1.0 (Initial Release 8/24/12)
based on HTC RUU 2.21 kernel source code
overclock and stock options
enabled overclocking up to 1.89Ghz
added CPU 192Mhz step
added LionHeart, Conservative, Interactive, LagFree, and SmartassV2 CPUfreq governors
implemented adjustable voltage table via sysfs and allow controlling through CPU apps
tweaked CPUfreq governors
disabled GENTLE_FAIR_SLEEPERS
disabled fsync() calls
added vR and SIO schedulers
adjusted VM ratios
enabled zRam
compiled with NEON and Snapdragon optimizations
reduced capacitive LED lights to 2mA
increased readahead buffer
much more...
v2.0 (9/1/12)
added BrazilianWax, Intellidemand, InteractiveX, SavagedZen, and Smartass (V1) governors
XZ kernel compression
optimized SmartassV2 CPU governor
tun.ko and cifs.ko now built into kernel
tweaked deadline I/O scheduler for better performance
make kernel use AC charging mode for unknown chargers
various lowmemorykiller fixes
fixed and tweaked a few other things
v2.1 (9/2/12)
updated to the latest HTC RUU 2.31 kernel sources
includes many performance and stability changes
Click to expand...
Click to collapse
need this too..
FAQ
Frequently Asked Questions​
What ROMs is this kernel compatible with?
As stated in the OP, this kernel is compatible with all S4 devices running a 4.0.4 Sense-based ROM. It is 100% compatible with ViperOneS even though that uses the 2.31 RUU base. I'm betting that there were no changes in the kernel source for 2.21 and 2.31.
What is the best governor for me to use?
It really depends on what you're looking for. If you want performance, go with Lionheart or Ondemand. If you want battery life, go with Conservative. And if you are looking for a balance between battery life and performance, then use either SmartassV2, Interactive, or LagFree. These are just my opinions. Look here for a great reference of all the CPU governors. Test them out and decide which works best for you.
Which I/O scheduler is the best?
I personally use SIO, but you can test and decide which is the best for you. Read here to find the pros and cons of each one.
How do I overclock?
The kernel should default at 192Mhz 1.5Ghz CPU clocks. To overclock, use SetCPU, No-Frills CPU, System Tuner Lite/Pro, or any similar CPU control app. Some apps don't allow the settings to stick properly. I recommend using No-Frills or System Tuner.
CPU govenors won't stick/CPU0 stuck at max frequency????
Yes, that is a known issue with the non-default governors. I have worked hard on a fix, but I still can't figure out the problem. So basically, if you want to use a governor other than the defaults ones from a stock kernel, make sure you check up on it and make sure the settings stuck and CPU0 isn't locked at max frequency.
How do I undervolt?
Right now, the only app that works for voltage control is System Tuner. Both the Lite and Pro versions allow you to change the voltages. Do not use SetCPU as it doesn't work.
Here is the voltage table I am currently using:
Code:
1890mhz: 1250 mV
1809mhz: 1225 mV
1728mhz: 1200 mV
1674mhz: 1175 mV
1512mhz: 1150 mV
1458mhz: 1137 mV
1404mhz: 1125 mV
1350mhz: 1125 mV
1296mhz: 1100 mV
1242mhz: 1100 mV
1188mhz: 1075 mV
1134mhz: 1075 mV
1080mhz: 1025 mV
1026mhz: 1000 mV
972mhz: 1000 mV
918mhz: 975 mV
864mhz: 975 mV
810mhz: 950 mV
756mhz: 950 mV
702mhz: 900 mV
648mhz: 900 mV
594mhz: 875 mV
540mhz: 850 mV
486mhz: 800 mV
384mhz: 725 mV
192mhz: 650 mV
Please just take these as a grain of salt; not all chips are created equal! Some devices can become an ass when it comes to undervolting, while others can starve the CPU to death and still run fine. Experiment little by little until you find your perfect voltages.
What is zRam and how does it work?
Originally Posted by faux123
ZRAM (aka CompCache aka RAMZSwap)
ZRAM is an updated version formally known as CompCache and RAMZSwap. It was originally designed for 2.6.38.xx kernels, I have backported to our 2.6.35.xx kernel. ZRAM allows real-time compression of memory objects in RAM thus reducing memory pressure for the Linux kernel and can keep more apps in memory longer (more apps in RAM == better performance, less fetching from slower MMC or SDCard). Compression, however, is not Free. Some CPU cycles are required to do the compress/decompression, so there's a slight penalty for it. The original CompCache / RAMZSwap required a user space binary to control its behavior which adds additional penalty to performance, but the new version ZRAM eliminated the need for a separate dedicated daemon, thus reducing the overhead and increased performance from the old CompCache by 20%. Therefore, with the newer implementation of ZRAM interface, the performance penalty is almost negligible.
Click to expand...
Click to collapse
Sweet! Trying on Viper, will report back in a few days.
Sent from my HTC One S using Xparent Blue Tapatalk 2
I installed it on Viper as well. UV settings were applied as set on 3.2 for 4.0.3 kernel.
I'll report back
invasion2 said:
Sweet! Trying on Viper, will report back in a few days.
Sent from my HTC One S using Xparent Blue Tapatalk 2
Click to expand...
Click to collapse
Let us know the results, lab rat!
Bitten by One S Viper...
Nice job. I didn't think this Rom could get any better. I haven't even oc or uv yet and I can feel a big difference. Curious to see how it effects battery life.
Sent from my ViperOneS using Tapatalk 2
I hit my Thanks Limit for the day Klin
So, :good:
Seems to work OK on Viper, however still having problems with Smartass as on Axiom... config folder in sys/devices/system/cpu/cpufreq is sometimes not created (no smartass folder) or randomly gets deleted, so CPU0 gets locked at max freq
SnowToad said:
Seems to work OK on Viper, however still having problems with Smartass as on Axiom... config folder in sys/devices/system/cpu/cpufreq is sometimes not created (no smartass folder) or randomly gets deleted, so CPU0 gets locked at max freq
Click to expand...
Click to collapse
Ahh...so that is the source of the issue. I will have to take a look at my code then. Also, it seems to happen regardless of any governor, especially during the first few minutes after startup.
Sent from my HTC One S using Tapatalk 2
runs fine here klin
smartass folder created on reboot
smoooth
will test for a couple days
klin1344 said:
Ahh...so that is the source of the issue. I will have to take a look at my code then. Also, it seems to happen regardless of any governor, especially during the first few minutes after startup.
Sent from my HTC One S using Tapatalk 2
Click to expand...
Click to collapse
Klin is the best. Thanks for all your work man.
Sent from my HTC VLE_U using Tapatalk 2
Set to smartass, rebooted, folders were there and worked fine.. but then randomly the whole folder was deleted again and cpu is locked at max all the time. Would like smartass working!
SnowToad said:
Set to smartass, rebooted, folders were there and worked fine.. but then randomly the whole folder was deleted again and cpu is locked at max all the time. Would like smartass working!
Click to expand...
Click to collapse
Same here, on Viper Rom right now. Can set everything but smartass.
SmartassV2 works great for me...
same here--ok
flashed thru fastboot and erased cache
then rebooted
Hmm...I think the issue with smartassv2 is only with the first few minutes of booting. After that, it seems to work fine and not only stick to 1.5Ghz. Can anyone confirm?
klin1344 said:
Hmm...I think the issue with smartassv2 is only with the first few minutes of booting. After that, it seems to work fine and not only stick to 1.5Ghz. Can anyone confirm?
Click to expand...
Click to collapse
I can. My frequencies are 384MHz and 1670GHz. They stay like that and my smartassV2 governor stays.
invasion2 said:
I can. My frequencies are 384MHz and 1670GHz. They stay like that and my smartassV2 governor stays.
Click to expand...
Click to collapse
What app are you using?

[KERNEL][3.0.31][HDMI][FULL HD][GUIDE 1.8]JBX-Kernel Hybrid [1,5ghz]

/// JellyBeanX-kernel ///​
DISCLAIMER
Me, XDA-Developers.com and anyone else doesn't take any repsonsibilty for damages on your device!
Rooting your device will void your warranty!
Don't play with settings you aren't familiar with, you could burn your device!!
Click to expand...
Click to collapse
READ THIS: I added almost all important topics which have been discussed around the kernel thread to the OP and wrote this FAQ just that you guys don't have to browse through 100+ pages of the thread. READ BEFORE YOU ASK and HELP TO KEEP THIS THREAD MORE CLEAN! BUT ALSO BETTER ASK ONCE MORE BEFORE YOU MESS UP YOUR PHONE! If you find something missing in this OP/FAQ, please PM me and I will add it. Thank you!
You can find the FAQ at the bottom of this post!
This is a direct port of my RAZR-JBX-Kernel Hybrid for Motorola Razr!
This kernel is built of the Kexec Project which was initiated first by Kholk & [mbm] and finished by the STS-Dev-Team (Hashcode, Dhacker). Using this kernel will provide addtional features to your ATRIX 2.
LATEST CHANGES (for latest release and NIGHTLIES)
--> DETAILED CHANGELOG JBX-kernel Hybrid <--
Kernel Guide by Placca 1.8!!
Check the FAQ section at the bottom of this post to download it! It will make many things easier for you and help you to understand the kernel and its features!
FEATURES
JBX-Kernel Hybrid
Battery Friend toggle (a battery friendly mode)
Intelli-Plug (Kernel side replacement for msm MPDecisions) by Faux123 + patches by me (no hotplugging when screen is ON)
Dynamic Hotplug: Second core will be turned off ONLY while screen is off - independent from selected governor. (Not needed when using Intelli-Plug)
Optimized OPP Table for smooth CPU scaling
Frequencies: 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300
Modifed Smartreflex driver (Custom Sensor for detecting n-Value).
Smartreflex Tuning Interface: Set min/max calibrated voltage
Overclocking using Live OC (mine runs stable at a maximum frequency of 1,498ghz!)
hwmod, uart, IRQs - cleanups from pre-kexec config to safe power
CPU: lower voltages for CORE and IVA. Give CORE the abbility to scale up to higher voltage if needed
Added IVA_NITROSB
Dynamic fsync control: FSYNC interval is dynamic depending on screen state (SCREEN OFF: synchronous, SCREEN ON: asynchronous)
HTC's Asynchronous Fsync port - read explanation below*
Dynamic page-writeback: Page writeback interval is dynamic depending on screen state.
Frandom v2
JRCU / Tiny RCU (currently JRCU in use)
Raised voltage limits for mpu a bit
Raised the temperature limits from 64c* to 74c* (degrees)
optimized CRC32 algorithm (better code generation)
RW Readahead dynamically depending on storage device (automatic detection of the best value)
zRAM support
GPU has 4 scaling steps and OC to 384mhz (Base freq: 102 mhz --> 154 mhz, 307 mhz, 384 mhz)
GPU C4 states / GPU Control (Governors, Frequencies)
Multicore Power Saving Mode Control
ARCH Dependant Power feature
Gamma Control
Front Buffer Delay Control (draw in x msecs on early suspend)
Screen/Display: Modified OMAPDSS for sharpness and lightning colors
OMAPDSS: Added variable clock rate and OPP - allows the screen to scale down power and voltage
lowmemkiller: Heavy modified for R/W Speed and efficient performance
ZCACHE, ZSMALLOC, XVMALLOC backported from 3.4, 3.7 and 3.10 (ZCACHE currently not in use)
Custom Voltage Support
IO-Schedulers: SIOPlus, Fifo, Row, VR, Noop, Deadline, CFQ, BFQ
ROW Scheduler is heavily tweaked to be the fastest scheduler ever!
CPU: More Governors
Deep Idle
ARM Topology
Many improvements in overall OMAP PM
SELinux permissive
GREAT performance!
battery life!
Support for Trickster Mod Kernel Control App (Download from Gplay)
*]Too much stuff to list here. See "Sources" below and check my Github
* HTC's Asynchronous Fsync and Dynamic Fsync:
Asynchronous fsync (called "afsync" or "async fsync") from HTC is ported into this kernel. By default it's enabled and dynamic fsync is disabled (and as well it isn't needed anymore).
The dynamic fsync toggle in Trickster Mod is now serving both functions - the dynamic fsync AND the asynchronous fsync! How? By default Dynamic Fsync is disabled, and Afsync is enabled. If you now enable Dynamic fsync using the toggle, Afsync will be automatically disabled, so both functions are not conflicting each other - and this way we have a working toggle for both of them.
CAUTION
This is a work in progress! Some of the current features are still not in final stat. If you are facing issues report back here and DON'T spam the threads of the rom you're using!
Be careful with some settings such like Voltage and Overclocking!!! If you aren't experienced with these things, dont play with 'em!
Click to expand...
Click to collapse
REQUIREMENTS
Rooted device
Must use a Kexec Rom (CM, AOKP, AOSP)
Recovery (BMM, SS)
REMOVE any kernel modules you used before
DEACTIVATE ANY CPU tweaks, onboot settings etc otherwise your phone may not boot!
CAUTION: The kernel needs a clean setup related to CPU tweaks / Settings, etc...Keep your device as clean as possible regarding to Tweaks, CPU special settings, etc. The Kernel brings its own CPU settings and after you can boot it succesfully, you can set it like you want!
Some roms may use CPU tweaks. This can cause issues like reboots and freezes. Check the init.d folder for any CPU related stuff and Kernel modules - then remove it. E.g. Remove any scripts which include "insmod" commands.
The best setting is to have stock CPU settings set
This kernel may not work on all roms! Check and report.
TO DO LIST
- Fix bugs
- Fix compile warnings
- More features.
INSTRUCTIONS
NOTE: CLICK here for a detailled Installation Guide (about the Aroma Installer, the features to select and more)
Download zip file from below
Reboot into recovery
Flash the kernel (BMM users: DON'T use the "Flash Kernel" Option! This is a usual zip file!)
Reboot
Download Trickster Mod App from Gplay! Read the FAQ to learn about playing with kernel features!
Enjoy!
EMERGENCY RESTORE
If you have tried a Nightly build and you phone is acting crazy, you can follow these steps:
Check the thread or ask for the latest stable kernel build
NO WIPES!
Flash the Rom (Yes, again! That one you're currently using.)
Flash Gapps
Flash Kernel
Reboot
DOWNLOAD
JBX-Kernel 3.0.8 Versions:
0.8.x ==> Android 4.2.2
1.x == > Android 4.3
2.x == > Android 4.4
JBX-Kernel 3.0.31 Versions:
3.x == > Android 4.4
TEST BUILDs
Test builds are potential prerelease builds which need some more testing before pushing to all users.
CAUTION: Should be stable mostly! But use at your own risk though!!
---> TEST BUILDS [CF] <---
XPERIMENTAL BUILDs
These builds include features without promises to work.
CAUTION: There is no promise that these version are stable/working/whatever! Use at your own risk!!
---> XPERIMENTAL Builds [Dev-Host] <---
---> XPERIMENTAL Builds [CF] <---
Click to expand...
Click to collapse
Something went wrong?
If you think you have set wrong "on-boot-values" in Trickster Mod flash this:
TRICKSTER RESET: http://dtrailer.de/kernel/trickster_reset.zip
FAQ
CAUTION: This FAQ and the whole OP, additional informations about Governors, IO Schedulers and detailed informations about the usage of Trickster Mod and this kernel can be viewed in the awesome Kernel Guide by Placca!
Kernel Guide 1.8
PDF: http://www.mediafire.com/download/7zaddcmvtxfk9ry/JBX+Kernel+Guide_v1.8.pdf
CHM: http://www.mediafire.com/download/g3ck1bf1k3a3j38/JBX+Kernel+Guide_v1.8.chm
CLICK HERE TO OPEN THE FAQ
Please check the following points if you don't know how to use the features of the kernel or you are facing any kind of issues.
INDEX
1. Kernel Features
1.1 Smartreflex (Turn ON/OFF, adjust min/max range)
1.2 Live OC (Realtime Overclocking)
1.3 Custom Voltage (EMIF)
1.4 GPU Overclock
1.5 Gamma Control
1.6 Battery Friend
1.8 IVA Overclock
1.9 DPLL Cascading (Currently not in use)
1.10 HDMI toggle
1.11 Intelli-Plug
2. Issues
1.1 How can I change the smartreflex minimum/maximum voltage
What is Smartreflex?
SR is compareable with an CPU governor but not for scaling frequencies but for voltages. That means SR has a fixed range of voltage (min/max) and calculates the optimal voltage for each CPU frequency. In example on light use of the CPU it scales down to lower voltage - on heavy use it can sclae to higher voltage. This is an efficient system to save power! Compared to EMIF which uses the hardcoded voltages it saves more power because it's variable. EMIF cannot vary between the values.
This interface has a hardcoded range of 830mV min to 1450mV max. Usually there is no need to adjust these values but irt can be usefull in example when using high overclocked frequencies above 1,5ghz! Usually SR cannot handle frequencies above 1,5ghz and I have hardcoded the maximum range of 1,45mV which should allow SR to handle it. In prior times the users had to turn off SR when OCing above 1,5ghz which causes the CPU to eat more power. But you can try around and report your results.
CAUTION: Don't raise the maximum SR voltage too high! It can burn your board = no phone anymore! I recommend to not use higher values than 1490mV! As already mentioned: THe default value should be enough!
ANd also: USUALLY THERE IS NO NEED TO CHANGE ANYTHING ON SR! IF YOU DON'T KNOW WHAT YOU'RE DOING, PLEASE LEAVE IT ALONE!
Ok, now let's see how to do this:
Turn ON/OFF SR
1. Open Trickster Mod
2. Head to the "Specific section"
3. Scroll down to "Smartreflex"
4. You can toggle ON/OFF SR for each component (IVA, CORE, MPU)
Usually I recommend to keep SR ON because it saves power! But in some cases when overclocking the CPU (MPU) the device could freeze - whether you OCed too much or SR couldn't handle the frequency! In this case you can try to raise the vmax value of SR a little bit (CAREFULLY!) and try again. If it sitll freezes and you're sure that you didn't OC too much, turn SR OFF at least for MPU!
Maximum Voltage
Currently there is no app which supports the feature of adjusting the SR vmax value, because I wrote this feature some days ago.
But in the next Trickster Mod version this option will be supported!
example:
# To read the current vmax value. Replace XXX with one of the following:
sc_core - for core max sr voltage
sr_iva - for iva max sr voltage
sr_mpu - for mpu max sr voltage (mpu is most related for CPU scaling)
cat /sys/kernel/debug/smartreflex/XXX/vmax
# You will get an output, e.g. for mpu = 1450000 (1450mV)
# To set a new value, do the following command (replace XXX with a value like above - BE CAREFUL! USUALLY THE DEFAULT VALUE ENOUGH AND YOU CAN LEAVE IT UNTOUCHED!)
echo XXX > /sys/kernel/debug/smartreflex/XXX/vmax
Minimum Voltage
It's easy because Trickster Mod supports it!
1. Open Trickster Mod
2. Head to the "Specific section"
3. Scroll down to "Smartreflex"
4. Below each SR component (IVA, CORE, MPU) there is displayed a value (usually 830 default) which means this is the lowest scalable voltage for this component. You can try to decrease this value for the case you want to UV a bit more - or raise it a bit for the case you think that the set range is too low and causes freezes on your device.
1.2 How do I use Live OC (Live OVerclock)?
This feature allows you to overclock the CPU in realtime. It works with a multiplier value set by the user. The default multplier value is "100", which means: No OC! If you want to raise the OC frerquency, just raise this value step by step.
FOr my device the maximum working OC value is "111" which means the maximum frequency is running at 1498mhz!
NOTE: Keep in mind that you tunr Smartreflex OFF for higher freqs than 1500mhz - or raise the maximum SR voltage range for "MPU" a little bit and test if it works.
Ok, how to use Live oC in action:
Open Trickster Mod App and swipe to the tab "Specific". There you will find something like this:
Code:
MPU OC [100]
DON'T TOUCH THE "CORE OC" SECTION, IT WILL CAUSE FREEZES!
Now slowly increase the value "100" to something higher, e.g. "105". Tap the hook in the right upper corner to confirm. To see your new set of frequencies you can now whether close and restart Trickster Mod or just use any monitoring app like Cool Tool which will show your frequencies in real time. That's it!
CAUTION: You can damage your phone forever!!!! This feature allows you to set very high frequencies (also up to 2,0ghz...) - That DOESN'T mean that your phone can run these frequencies!
If your phone freezes or crashes you have probably set too high OC - or your voltage is too low.
1.3 How do I use Custom Voltage (EMIF)?
NOTE: This only adjusts the fixed voltage! When you have Smartreflex ON it can still vary! You have to see the bigger picture: This voltage value sets the "middle point" for voltages. Smartreflex is still able to increase or decrease the voltage. When Smartreflex is OFF the CPU will stay on this voltage you set here and probably eats also more power.
How does EMIF works together with Smartreflex:
Code:
-------
| CPU |
-------
|
------------------ ------------------
|Voltage 1015 mV | ---->| SMARTREFLEX ON| = 1015mV +/- "vmax"/"vmin"
------------------ -------------------
|
--------------------
|SMARTREFLEX OFF| ----> 1015mV FIXED! No changes!
-------------------
Thi smeans if you change the voltage for a scaling step (OPP) while SR is ON, SR will adjust the voltage from this value, means: mV-Value +/- SR vmin/vmax. WHen SR is OFF it will stay on this mV as a fixed value.
How to adjust the voltage?
Well, this feature can be used with all generic apps which are supporting voltage settings. But we are prepared well, you can adjust voltages also with the "Trickster Mod App".
When you open the app, head to the tab "Specific" and below the "Live OC Section" you will find your voltage table, which looks like this:
Code:
<-->
1200 [1398]
1000 [1388]
900 [1371]
...
..
..
Now just tap the arrows in the right upper above the first voltage value and just type or tap (per direction) a value, e.g. "-25". To apply it, confirm by tapping the hook in the right upper corner of your screen. That's it, your new voltage values are now set and applied. And also mind here: If your phone freezes you porbably have set it too low.
CAUTION: NEVER SET HIGHER VOLTAGE THAN 1490mv here!!!!! Or you might damage your phone FOREVER!
This voltage is not the same like Smartreflex! But it's still voltage! Just be carefull!!
1.4 How can I use GPU OC and GPU Governor?
GPU Overclock doesn't work like Live OC! You cannot really set custom frequencies for the GPU, but you can select and set the maximum frequency from a hardcoded range!
For the GPU there are the following available frequencies:
154mhz (FIXED!)
307mhz
384mhz
416mhz
The minimum frequency of 154 is FIXED! This means you cannot change it because the GPU needs a minimum speed to run with. But the kernel allows you to select the maximum speed. This can be usefull for playing games and also for saving power . In example when not playing games you don't need the GPU to run at 416mhz! Set it to 307mhz in this case and save power.
When you open Trcikster Mod and head to the "specific section tab", you will find "GPU MAX FREQUENCY" and it's currently set maximum frequency. Tap on it to select your preferred one:
- 154 Mhz
- 307 MHz
- 384 MHz
That's it. The new setting will be your new maximum GPU frequency.
Below there's another option called "GPU Governor". Just tap on it and select your prefered one.
NOTE: If you want to track current GPU frequencies and watch governor's behavior, just switch to Trickster's "Informations" - Tab and watch the frequencies clock.
1.5 How can I use Gamma Control?
What is gamma? The gamma setting sets the color range for the screen. You can compare it to the contrast. We all know that the touchscreen eats most of the power compaerd to all other components in a smartphone! A lower brightness causes less power consumption and a lower gamma or contrast range alos helps a little bit to save power.
In this kernel you can choose from a range of "5 - 10" while "5" is very bright while "10" is very dark. The default setting is "5" BUT CAUTION: Trickster Mod will display a range of "0" to "10" and the default setting will be shown as "0". This is caused by the fact that this feature was ported from the Gnex device where you can choose from a higher range. The only sideeffect is that the values "0" - "5" won't show any difference.
How to set the gamma value?
Well, once again open Trickster Mod and swipe to the tab on the right end. Just select your preferred value by using the slider.
Alternately you can use sysfs by terminal or adb:
OMAP Gamma interface:
echo i > /sys/devices/platform/omapdss/manager0/gamma
Replace i with 0-10 of your choice.
1.6 What is "Battery Friend and how to use it?
Battery Friend is a simple toggle (ON/OFF) which sets your device into a battery friendly mode without the need to play with all settings in Trickster Mod /sysfs until you find a good setting. In fact it does the job for you.
What does it affect?
NOTE: Doesn't lock anyx frequencies anymore!
locks dynamic Fsync enabled
locks Fsync disabled
Doesn't allow any OC (Live OC will not have any effect, Core OC is not allowed in this kernel)
Increases the dirty ratio interval to 90% (starts working at this value)
Enables Dynamic Hotplug: This doesn't allow hotplugging during device is active - and it will always turn CPU1 OFF during suspend! It also prevents from conflicts when user uses a hotplug governor (which isn't a good idea though) - but hotplug governors are causing higher battery drain!
Dynamic Page-writeback always enabled
How to toggle Battery Friend:
For now the only way is via terminal, adb shell or root explorer (text editor)
For terminal and adb:
Code:
echo 1 > sys/kernel/battery_friend/battery_friend_active /* Enable */
echo 0 > sys/kernel/battery_friend/battery_friend_active /* Disable */
For Root Explorer
Open Root Explorer
Navigate to sys/kernel/battery_friend/
Open "battery_friend_active" with Text Editor
Change "0" to "1" and safe the file to enable
Change "1" to "0" and safe the file to disable
1.7 Suspend Governor Control (CURRENTLY DISABLED)
Suspend Governor Control is a kernel module written by me. You can use it to set your preferred Screen-Off-governor.
For now it's only supported by sysfs (Trickster Mod will support all my current and upcoming features as soon as it gets updated with its new UI mode!
How to set suspend governor
Open a terminal or use adb shell
Code:
su
echo "x" > /sys/kernel/suspend_gov/suspend_gov
Replace x with one of these values:
0 = Ondemand
1 = Ktoonservative
2 = Conservative
3 = OndemandX
NOTE: No matter what governor you use for suspend mode, if Battery Friend is enabled the second core will be turned off during suspend!
1.8 IVA Overclock
What is IVA OC?
IVA OPPs are controlling the CPU load for sound events. It could be useful (in some cases) when you get sound related laggs. Just set the maximum frequency to highspeed. This will allow more CPU power for sound events but also will cause higher battery consumption.
How to use IVA OC?
If you want to check the current IVA frequency. Just type in Terminal or ADB:
Code:
cat /sys/devices/system/cpu/cpu0/cpufreq/iva_clock
You will get an output like this:
Code:
132 Mhz
2. You can whether enable IVA highspeed: 130 - 430 Mhz ["1"] or enable IVA normal speed: 130 - 332 Mhz ["0"]
320 Mhz max: echo "0" > sys/devices/system/cpu/cpu0/cpufreq/iva_freq_oc
430 Mhz max: echo "1" > sys/devices/system/cpu/cpu0/cpufreq/iva_freq_oc
1.9 DPLL Cascading
DPLL: Davis–Putnam–Logemann–Loveland (DPLL) algorithm
To get more info about this please see wiki
But to sum it up shortly: It helps to use/stream media (music) in a low power mode.
NOTE: DPLL Cascading will be available to be switched easily via Trickster Mod App soon!
How to switch DPLL?
DPLL is ENABLED by default!
Open Trickster Mod -> Speicific Tab --> DPLL (soon)
sysfs:
Turn off:
Code:
echo 0 > /sys/kernel/dpll/dpll_active
Turn on:
Code:
echo 1 > /sys/kernel/dpll/dpll_active
1.10 HDMI toggle
Some users are facing a RAZR-sepcific problem: HDMI cable is detected, even though there is no cable plugged!
Therefor I included a toggle to switch HDMI wether ON or OFF. Additinally there's an init.d script included within the AROMA Installer you can select during the installation of JBX-Kernel.
To enable/disable HDMI on-the-fy:
sysfs:
Turn off:
Code:
echo 0 > /sys/kernel/hdmi/hdmi_active
Turn on:
Code:
echo 1 > /sys/kernel/hdmi/hdmi_active
1.11 Intelli-Plug
For intelli-plug hotplugging is now only allowed when the device enters sleep.
To enable hotplugging universally just change the value of the following entry whether to 1 (on) or 0 (off):
Code:
sys/module/intelli-plug/parameters/int_hotplug
*Unfortunately I don't have enough space in the OP to write all this into the FAQ, that's why the I only added the sysfs path, but the description is simply here
2. If anyone has the following issues:
Issue
Media Process FC
No SD-Card in File Explorer
My CPU Settings (frequencies, etc) won't be saved (it sets itself back to Kernel default after screen off)
My phone freezes/reboots always when I try to set options in Trickster Mod
The device is lagging very hard
Solution
Media FC: Open App settings, head to "Download Manager" and "Media Storage" and hit the "delete data" button. Reboot. Now it shouldn't give any FCs anymore and after a little bit of waiting it will find all Media (Pictures, Videos, etc..)
No SD-Card: Reboot into recovery, go to "Mounts & Storage", tick "mount int" or "mount ext".
USB: Make sure the screen is ON while plugging the cable in.
CPU Settings: This is a bug which cannot be solved at the moment. Temporary solution: In Trickster Mod just activate the "Frequency Lock" and your settings will persist.
Trickster Mod:: Open App settings, Trickster Mod and select "uninstal updates". Now it should work.
Crashes, Freezes, lagging, something doesn't work, etc
There are too many reasons which could cause crashes! So here is a checklist for you to look for. Check each point and try the following workaround:
- Your rom has CPU tweaks (e.g. Kernel modules, init.d folder, etc)
- You have set custom CPU settings (e.g. custom frequencies with apps like No-Frills CPU Control, Set-CPU, Antutu, etc...)
- You have undervolted too low
- You have overclocked too high
- You have applied higher "Core OC" value in Trickster Mod App
- You are running any other kernel tweaks which are regarding to the CPU and/or performance (e.g. Kernel modules by Whirleyes eventually set by init.d, etc..)
- After setting some settings (e.g. in Trickster Mod) your device doesn't boot anymore
- adb doesn't work / shows only "device offline"
- You are facing hard lagging
If any point here matches your setting, please revert from it:
- Remove any CPU init.d script from /System/etc/init.d
- Uninstall any CPU controling app (e.g. Set-CPU, No-Frills, etc..)
- Remove all extra kernel modules from system/lib/modules (e.g. cpu_control.ko, cpufreq_smartass2.ko, etc..)
- Unset any custom settings from any other kernel / CPU - tweaking app which is NOT Trickster Mod
- Maybe your governor causes issues. Hotplug is know for bugs at the moment...I'm going to fix it..
- NEVER set your CPU Settings (e.g. in Trickster Mod App) on boot!!!! - before you aren't sure that your settings are safe!!!
- You may flash the kernel again after reverting related settings
- to make adb work / show device online, download latest SDK platform-tools and confirm access on device (4.2 security feature of Android)
- Don't use any task killers, memory killers, seeder apps! They may conflict with the kernel/Rom settings.
If none of these suggestions work for you your rom may be incompatible. Please report it here that I can add the rom to the list of imcompatible roms
If you have any issue, please read this:
First check:
- is it really a kernel issue?
- did I see this bug with the roms original kernel?
- what are the people in the rom thread saying?
- what are the people in the kernel thread saying?
- can I find this issue on a bug list?
- how about my settings? Is it my fault it crashed?
- can I find something useful in the kernel FAQ?
- Is it maybe a well known issue and can be solved
withing seconds? Just like wifical.sh?
- Where to repeat that issue? Rom or kernel?
I know it's sometimes difficult to track the issues, and we can't know for sure if it's caused by the rom or by the kernel, but if you try at least to get some information you might find an answer sometimes. If you are able to understand logs, you may report whatever you find.
All this helps to keep the threads more clear. Thank you.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
DONATE
If you like my work and want to support me, I'd enjoy a little beer or coffee. You can find my beer mug below my username
SOURCE
3.0.8 Base:
JBX-Kernel 4.2.2
JBX-Kernel 4.3
CREDITS
Kholk & [mbm] - Kexec inital Release
Hashcode & Dhacker - Making Kexec stable and initiating compatible kernels
Motorola - 3.0.8 Kernel Source
Surdu_Petru - Sharing Knowledge and helping with problems
nithubhaskar - Hints and answering my questions
Ezekeel, Imoseyon - Custom Voltage, Live OC, Temp Control, Gamma Control Source Code
faux123 - Some features, like Intelli-Plug, Intellidemand, Intelliactive
bigeyes0x0 - Trickster Mod App
Team Trickster - Great support and adding new features from my suggestions
Placca - Awesome kernel guide
Click to expand...
Click to collapse
3.0.8 / 3.0.31
There is the classic JBX 3.0.8 Kernel (a hybrid of 3.0.8, 3.0.21, 3.4, 3.7, 3.8, 3.10, 3.11, mostly backports from these versions)
And now there is also JBX 3.0.31 (also a hybrdig including the above backports, but also from 3.0.101)
I won't list the whole version history, too long
3.0.31 first TEST-BUILD now coming!
- also reserved -
And it arrives...
Many thanks man...
Really appreciate you doing this...
---------------------------------------------------
May the -Mass times Acceleration-be with You...
I need the internal storage mount points from someone with stock kernel, please. I saw something about mmcblk0 - int ? Please anyone check the /mnt partitions and tell where the internal and external sdcards are mounted. thx
Edit: nevermind, I didn't know this device doesn't include an internal storage. Now I need to know if USB mount works on Devesh's Rom ports.
Used Stock ICS Based ROM on System 1 with BMM , and Mobile Terminal .
hope its ok .
Wow !
I see some awesomeness coming to our A2s *Respect*
All is set up. Everything works, so I will now build the first test kernel for you guys.
First test kernel in NIGHTLIES folder. Please test and report. Keep in mind that you have to be on one of Devesh's Rom Ports!
Edit: Sorry, forgot something! Please wait 5 mins...
Edit: Done!
Dirty flashed, liquid smooth slot 6 oc1350 running good.
MB865/ATT/BMM
1. Stock 4.0.4
2. Miui 4.0.4
3. Pac man 4.2.2 (6/3)nonkexec
4. Mt
5. MT
6. Cm 10.1 4.2.2 (6/7)kexec
Can I get a wohooo for the A2
JB leak?
Sorry for asking dummy question. Can i flash it on the JB leak because we still need JB leak for installing kexec room right? So if I want to try what possibly would happen?
dtrail1 said:
First test kernel in NIGHTLIES folder. Please test and report. Keep in mind that you have to be on one of Devesh's Rom Ports!
Edit: Sorry, forgot something! Please wait 5 mins...
Edit: Done!
Click to expand...
Click to collapse
Man! You really are damn energetic and enthusiastic, aren't you? Really glad to have you around.. Thanks again.. :thumbup:
Sent from my MB865 using Tapatalk 2
amynjimmy said:
Dirty flashed, liquid smooth slot 6 oc1350 running good.
MB865/ATT/BMM
1. Stock 4.0.4
2. Miui 4.0.4
3. Pac man 4.2.2 (6/3)nonkexec
4. Mt
5. MT
6. Cm 10.1 4.2.2 (6/7)kexec
Can I get a wohooo for the A2
Click to expand...
Click to collapse
How did you OC ? i just can't get the phone to Overclock properly with this trickster app ..
afeeq said:
Sorry for asking dummy question. Can i flash it on the JB leak because we still need JB leak for installing kexec room right? So if I want to try what possibly would happen?
Click to expand...
Click to collapse
You cannot. It needs a kexec Rom. So flash it first
M.o.t.o.r.o.l.a.R.a.z.r - JBX-Kernel 0.6 - Tapatalk4
New nightly online with fixed CPU and live oc! @Brantuck84
Edit: sorry, wrong thread!
But ne nighty comes here too in 5 mins
M.o.t.o.r.o.l.a.R.a.z.r - JBX-Kernel 0.6 - Tapatalk4
So with the current version there is a bug with OC ? ( i don't see TEST2 for Atrix like with the Razr version).
Yes, device starts lagging when OC too high (over oc value of ~107). But new release comes with fixes - OC up to 1,5ghz possible without any problems (Mine crashes when OC higher than 1,498mhz, each silicon is different).
I think I will push it as a release (not NIGHLTY) - only thing left to be fixed is the random black screen while booting. But that's not that important as long as the kernel works well when booted successful.
Edit. done!
Great can't wait to boot 1498mz!
MB865/ATT/BMM
1. Stock 4.0.4
2. Miui 4.0.4
3. Pac man 4.2.2 (6/3)nonkexec
4. Mt
5. MT
6. Cm 10.1 4.2.2 (6/7)kexec
Can I get a wohooo for the A2
Not boot, just set it after boot - and if you're sure you have it running stable, set the "Apply on boot" function in Trickster Mod with a delay of ~90 sec - just to be safe!
RELEASE for Atrix 2
CHANGELOG JBX-kernel 0.6 Hybrid
This version includes fixes for performance and stability
CPU: Set bootup policy to static frequency
CPU: Revert some accidently failed cleanups
CPU: Reset CPU delay on tickless
CPU: Changed margins and sr settings for some OPPs
CPU: Default trimmed dpll mpu
CPU: Added Uilization
SR: Fixed SR return value check
Decreased RCZ_CPU_STALL_TIMEOUT to 60
emif, lpddr: Re-added 466mhz timings
USB: Change ehci performance mode to static scaling freq
Disabled PM_DEBUG for performance
Reduced RW READAHEAD Buffer to 1024
OMAP, CPU, RCU: Re-enabled watchdog
Universal performance invreased
dtrail1 said:
Not boot, just set it after boot - and if you're sure you have it running stable, set the "Apply on boot" function in Trickster Mod with a delay of ~90 sec - just to be safe!
RELEASE for Atrix 2
CHANGELOG JBX-kernel 0.6 Hybrid
This version includes fixes for performance and stability
CPU: Set bootup policy to static frequency
CPU: Revert some accidently failed cleanups
CPU: Reset CPU delay on tickless
CPU: Changed margins and sr settings for some OPPs
CPU: Default trimmed dpll mpu
CPU: Added Uilization
SR: Fixed SR return value check
Decreased RCZ_CPU_STALL_TIMEOUT to 60
emif, lpddr: Re-added 466mhz timings
USB: Change ehci performance mode to static scaling freq
Disabled PM_DEBUG for performance
Reduced RW READAHEAD Buffer to 1024
OMAP, CPU, RCU: Re-enabled watchdog
Universal performance invreased
Click to expand...
Click to collapse
Is his gonna allow then use of 1498 then.
MB865/ATT/BMM
1. Stock 4.0.4
2. Miui 4.0.4
3. Pac man 4.2.2 (6/3)nonkexec
4. Mt
5. MT
6. Cm 10.1 4.2.2 (6/7)kexec
Can I get a wohooo for the A2

Categories

Resources