[Kernel][3.0.101] Chrono Kernel Refresh R4.6.2 - Galaxy S Advance I9070 Android Development

Custom kernel for Samsung Galaxy S Advance
Code:
/*
* Your (probably expired) 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. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! 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.
*/
​Hi there!
Because of numerous issues found in 3.4.113 kernel, I'm temporarily moving to development on 3.0.101 base.
What is difference between chrono kernel (CK) and CK refresh build? CK was mostly tested on MM-based ROMs, but appeared not to work stably on Android 4.4.x. Aim of this build is to properly enable support for older ROMs (like kitkat), and when done, merge these changes to 3.4.113 kernel.
This build is based upon chrono kernel r4.1 build, so to avoid versions confusion, I'm creating a separate topic.
Features:
CPU, GPU and DDR OC support
more governors and I/O schedulers
Lite kernel - some kernel features moved as modules
F2FS support
ABB-charger tweaks
many others features and tweaks...
Credits:
@dh.harald and @hafidzduddin for contribution on U8500 platform sources
@ Team Canjica for a base for this kernel
@ Nova Fusion for F2FS implementation
@zwliew for contribution on TC kernel
@cocafe for LiveOPP, GPU OC, abbamp and abb-charger tweaks and many cool patches which I've used from his kernel
@faux123 for dynamic Fsync implementation
@Christopher83 for dynamic management of dirty page writebacks implementation
@KINGbabasula for contribution on TC kernel sources
@boype for SIOPlus tweaks and OndemandPlus governor
@Adi_Pat for abbamp, kernel tweaks
@PolishVodka for initramfs scripts for 4.2.x and 5.0.x
@Rox for help in fixing initramfs scripts for 4.1.2
@ace2nutzer for optimization CPU OC and for whatever scripts which I have used in my kernel
@Meticulus for BLN, Sweep2wake and Doubletap2wake
@mkaluza for huge LiveOPP/Mali improvements and Dynamic governor
@yanpol199 for help with F2FS support in TWRP
@ all users who tests this kernel and directs the development along the right path
@ all those users, who I forgot to mention (PM me if so)
Team Win for TWRP recovery
Samsung for opening kernel source
Linus Torvalds for Linux sources
Special Thanks:
@isaak, @enkflr, @Pdevo, @prometej-zg for donating this phone!
[*]@S.AMU for providing FTP-Server
Source Code:
LK 3.0.y based releases
Installation:
Flash temporary kernel (if coming from other recoveries than TWRP 3.1.1)
Reboot recovery
Flash kernel zip
Notice: this kernel is not compatible with NovathorSettings app, be sure to remove it before installing a kernel!
Download:
FTP
XDA:DevDB Information
Chrono Kernel Refresh, Kernel for the Samsung Galaxy S Advance I9070
Contributors
ChronoMonochrome, cocafe, faux123, zwliew, mkaluza, Meticulus, KINGbabasula, ace2nutzer, TeamCanjica
Source Code: https://github.com/ChronoMonochrome/Chrono_Kernel-1/commits/refresh-3.0.101
Kernel Special Features:
Version Information
Status: Testing
Stable Release Date: 1974-11-11
Beta Release Date: 1974-11-11
Created 2018-03-22
Last Updated 2018-03-23

Changelogs
Changelog
R4.6.2
rebased to CM14.1 branch (added support for 6.0.1 and 7.1.2 ROMs)
R4.6.1
fixed CPU OC instabilities
LCDCLK is adjusted to fix tearing issues *
adjusted Dynamic CPU governor tunables for a better battery live
adjusted PowerHAL profiles **
genfstab: storages swap is disabled by default (remove /ramdisk/fstab_specs.txt before flashing to take this change in an effect)
updated temporary kernel zip
* tested with apps like Impossible Game, a display tearings are mostly resolved here. Apps like Youtube, though, might still causing tearings when playing video.
** the minimum CPU freq is set to 400 MHz. I've decided to use it as a default since 200 and 400 MHz CPUfreq steps are anyway using the same voltage, so unless you're undervolting the CPU, there won't be any significant difference in a battery drain.
R4.6
updated to r4.6 LowMemoryKiller implementation - best so far!
Disabled HighMem
removed some CPUfreq steps *
Dynamic governor: parameters are tuned for the better performance (credits: @ace2nutzer)
Added performance profiles (the corresponding parameters can be found in /ramdisk/perf.profiles.rc)
Other updates from r4.6 (various updates from LK 3.4, tweaks etc)
* Avalable CPU frequency steps are: 200, 800, 1000, 1100, 1200, 1215 Mhz. I've decided just to give it a try - this is a necessary part of tuning the CPU governor. If anyone doesn't like that frequencies between 200 and 800 MHz were removed I can add them back, but until performance-related issues are not resolved I'd suggest just leave as it is.
R4.1
Initial build for janice (kernel sources based on Chrono Kernel r4.1)
LiveOPP: updated to r5.7.1 kernel version
Exfat: test fixes for Stock 4.1.2 ROM (not tested)
Enabled CONFIG_STE_TRACE_MODEM (test fix for Stock ROM incoming / outgoing calls)
Kexec: added janice support

Misc
Storages switch
By default, this kernel comes with internal and external storages switched. You can revert this behavior, by changing the line
Code:
use_swap=1
to
Code:
use_swap=0
in file /ramdisk/fstab_specs.txt and flashing the kernel package. This setting will remain until you format /ramdisk partition.

Thank you Chrono again.
So far I am still having issues with calls on 4.1.2 stock, I took another logcat in case would help you, and seems like phone can't enter deepsleep mode, but I will investigate further this issue with some days of usage.
I couldn't get exfat working, I took the exfat-fuse binary from /sbin in TWRP, then ran "exfat-fuse /dev/block/mmcblk1p1 /storage/extSdCard", tryed also with "mount.exfat-fuse etc etc", the fact is the card is correctly mounted and usable from recovery, but this does not matter after all.
The nice thing is I find multitasking working far better, phone seems to be more responsive in situations where more apps are running at the same time, this is very good to me!.
Another big point is installation went fine and recovery is working perfectly, so problems with possible bootloops are solved (and after some more usage I will go further to your more updated roms )
If there is something more to provide you, test or informations missing, please ask me Chrono

I tested chrono kernel r4.1 on Lineage OS 11.
-Compared to the previous chrono_kernel_r5.7.1, this is considerably slow, especially during the opening of apps like Settings, Contacts, Google News, Play store.
-If I set 1000 Mhz as maximum clock of the dynamic governor, the phone becomes slower and a bit hot on the back.
Multitasking is severely affected by that clock. Multitasking is more stable at 800 Mhz, despite it's still slow.
-If I reboot the phone, the maximum clock of 1000 Mhz is automatically resetted at 800 Mhz.
-If I attempt to reboot the phone in recovery mode from Lineage Os 11 ROM with the PC USB charging cable on, phone will shutdown instead. Disconnecting the charging cable before rebooting the phone in recovery mode is the only workaround. It doesn't happen with the Epirex Kernel, so I think it's related to your kernel.
In my attachment there is a meminfo that I took while the phone was under load.
If it isn't enough, I attached a full logcat. There are some errors and crashes.

@Pdevo, @isaak, thanks for testing!
I tested chrono kernel r4.1 on Lineage OS 11.
-Compared to the previous chrono_kernel_r5.7.1, this is considerably slow, especially during the opening of apps like Settings, Contacts, Google News, Play store.
Click to expand...
Click to collapse
Probably I've rushed things, or sort of. I had a hard time trying to find a considerably stable kernel 3.0.101 base (this one appeared to work stably, though not best, in terms of the performance). Nevertheless, the multitasking should already be better (at least better than in r5.7.1, as in this one LowMemoryKiller appeared not to work at all). I'm updating the sources to a new kernel base, r4.6 which should be even better in multitasking term.
-If I reboot the phone, the maximum clock of 1000 Mhz is automatically resetted at 800 Mhz.
Click to expand...
Click to collapse
Should be fixed in upcoming release.
-If I attempt to reboot the phone in recovery mode from Lineage Os 11 ROM with the PC USB charging cable on, phone will shutdown instead. Disconnecting the charging cable before rebooting the phone in recovery mode is the only workaround. It doesn't happen with the Epirex Kernel, so I think it's related to your kernel.
Click to expand...
Click to collapse
It's a bug in CM11 ramdisk, I've took another one from Codina, and now this issue should be resolved as well.
Pdevo said:
So far I am still having issues with calls on 4.1.2 stock, I took another logcat in case would help you, and seems like phone can't enter deepsleep mode, but I will investigate further this issue with some days of usage.
I couldn't get exfat working, I took the exfat-fuse binary from /sbin in TWRP, then ran "exfat-fuse /dev/block/mmcblk1p1 /storage/extSdCard", tryed also with "mount.exfat-fuse etc etc", the fact is the card is correctly mounted and usable from recovery, but this does not matter after all.
Click to expand...
Click to collapse
I'm afraid that exfat driver built in the kernel is not compatible with this userspace mount.exfat-fuse utility. I won't be able to fix it, until I find a time to return to stock & rebuild either mount.exfat-fuse or kernel driver in order to make them compatible each with other.
As for the deepsleep issue, I can say that at least 4.4.4 is not affected by this bug. Try making sure that no apps are preventing deep sleep (Better battery stats or Wakelock detector can help in that).

New build r4.6 is up!
Changelog
updated to r4.6 LowMemoryKiller implementation - best so far!
Disabled HighMem
removed some CPUfreq steps *
Dynamic governor: parameters are tuned for the better performance (credits: @ace2nutzer)
Added performance profiles (the corresponding parameters can be found in /ramdisk/perf.profiles.rc)
Other updates from r4.6 (various updates from LK 3.4, tweaks etc)
* Avalable CPU frequency steps are: 200, 800, 1000, 1100, 1200, 1215 Mhz. I've decided just to give it a try - this is a necessary part of tuning the CPU governor. If anyone doesn't like that frequencies between 200 and 800 MHz were removed I can add them back, but until performance-related issues are not resolved I'd suggest just leave as it is.

ChronoMonochrome said:
Changelog
updated to r4.6 LowMemoryKiller implementation - best so far!
Disabled HighMem
removed some CPUfreq steps *
Dynamic governor: parameters are tuned for the better performance (credits: @ace2nutzer)
Added performance profiles (the corresponding parameters can be found in /ramdisk/perf.profiles.rc)
Other updates from r4.6 (various updates from LK 3.4, tweaks etc)
* Avalable CPU frequency steps are: 200, 800, 1000, 1100, 1200, 1215 Mhz. I've decided just to give it a try - this is a necessary part of tuning the CPU governor. If anyone doesn't like that frequencies between 200 and 800 MHz were removed I can add them back, but until performance-related issues are not resolved I'd suggest just leave as it is.
Click to expand...
Click to collapse
Tested on Lineage Os 11 without CCleaner.
After flashing this new kernel I had to force a Media scan with Fx File Explorer (that detected over 300 changed files) because the phone was really slow. That was sufficient to speed up the multitasking that now it's much better than previous 4.1 build.
Additional observations:
- Do you think it's possible to improve Media scanner reactivity via kernel?
- Fx File Explorer detects my external sd card as Main storage and Media card as internal storage. This doesn't happen on Epirex kernel.
- Battery usage is higher than previous kernel. If I stay on a webpage in idle, after 30 seconds my battery decreases of one percentage point (i.e. from 70% to 69%). I noticed that a simple swipe on the screen jumps the current clock directly to the maximum frequency, this could be one of the reasons.
- There is only FIOPS as I/O Scheduler and I miss all the other schedulers.
I think you're on the right track!

isaak said:
- Do you think it's possible to improve Media scanner reactivity via kernel?
Click to expand...
Click to collapse
I don't think it's possible. The only possible way is to overclock CPU, though it won't help much.
- Fx File Explorer detects my external sd card as Main storage and Media card as internal storage. This doesn't happen on Epirex kernel.
Click to expand...
Click to collapse
This is a default behaviour in Chrono Kernel. Because on codina we have only 4 Gb of available space, it makes sense just to remove internal storage partition and use the external one as primary. If anyone wants, I can revert this behavior. It's possible to switch storages back by editing file /ramdisk/fstab_specs.txt (set use_swap value to 0) and flashing a kernel package.
- Battery usage is higher than previous kernel. If I stay on a webpage in idle, after 30 seconds my battery decreases of one percentage point (i.e. from 70% to 69%). I noticed that a simple swipe on the screen jumps the current clock directly to the maximum frequency, this could be one of the reasons.
Click to expand...
Click to collapse
Ok, I'll consider of tuning CPU governor in order to provide more battery friendly setup. I was afraid that the battery usage might be too high, but that was a necessary evil, I guess. In the meantime, as a temporary workaround, the maximum CPU frequency can even be lowered to 800 MHz, it should be still fast enough.
- There is only FIOPS as I/O Scheduler and I miss all the other schedulers.
I think you're on the right track!
Click to expand...
Click to collapse
To load more I/O schedulers, you can copy (or symlink) a module file to /system/lib/modules/autoload, then reboot the phone. This doesn't seem to work, a script that loads modules, is broken.
Because usually I don't change I/O scheduler, by default, no more I/O scheds are loaded. Do you have any preferred I/O scheds?

ChronoMonochrome said:
I don't think it's possible. The only possible way is to overclock CPU, though it won't help much.
Click to expand...
Click to collapse
Nevermind.
ChronoMonochrome said:
This is a default behaviour in Chrono Kernel. Because on codina we have only 4 Gb of available space, it makes sense just to remove internal storage partition and use the external one as primary. If anyone wants, I can revert this behavior. It's possible to switch storages back by editing file /ramdisk/fstab_specs.txt (set use_swap value to 0) and flashing a kernel package.
Click to expand...
Click to collapse
I'd like to revert the behavior, so I would appreciate If you could provide the same instructions here and in the other kernel thread..
ChronoMonochrome said:
To load more I/O schedulers, you can copy (or symlink) a module file to /system/lib/modules/autoload, then reboot the phone. This doesn't seem to work, a script that loads modules, is broken.
Because usually I don't change I/O scheduler, by default, no more I/O scheds are loaded. Do you have any preferred I/O scheds?
Click to expand...
Click to collapse
I would suggest deadline, noop, sioplus, zen (plus the existent FIOPS).

ChronoMonochrome said:
This is a default behaviour in Chrono Kernel. Because on codina we have only 4 Gb of available space, it makes sense just to remove internal storage partition and use the external one as primary. If anyone wants, I can revert this behavior. It's possible to switch storages back by editing file /ramdisk/fstab_specs.txt (set use_swap value to 0) and flashing a kernel package.
To load more I/O schedulers, you can copy (or symlink) a module file to /system/lib/modules/autoload, then reboot the phone. This doesn't seem to work, a script that loads modules, is broken.
Because usually I don't change I/O scheduler, by default, no more I/O scheds are loaded. Do you have any preferred I/O scheds?
Click to expand...
Click to collapse
Personally I really appreciate and find useful the external sdcard storage as primary one, should be the default behaviour for me, it makes sense and also I never liked to have some files on one unit and some files on another one (download, pictures, recordings on extsdcard, apps folders, screens, other apps downloads etc on internal), I really like the idea of sdcard as main, like the old times of galaxy mini
Fiops to me is a fair good scheduler, maybe also noop would be useful, but I guess having as much things as modules as possible can help load only the strictly necessary, but I say this without dev knowledge.
I will test this build and especially the deepsleep issues, to see if there are apps causing phone not to sleep, the problem is I didn't add any app, just using the same enviroment that with cocore was going to deepsleep. I will report soon, anyway, good job chrono, keep it up

Pdevo said:
Fiops to me is a fair good scheduler, maybe also noop would be useful, but I guess having as much things as modules as possible can help load only the strictly necessary, but I say this without dev knowledge.
Click to expand...
Click to collapse
Yes, FIOPS is good. I just think that having 2 or 3 additional schedulers to select would be better for different uses.
In my previous post I replaced sioplus with zen, according to the conclusions of this guide. There is an useful (up to date) list of recommended IO schedulers, ordered for everyday usage, battery life, heavy multitasking, etc.

New build r4.6.1 is up!
Hey guys and sorry for having to wait that long for a new releases!
I'm still working on 3.4.x kernel - no great news here, but at least I've found a more less stable sources base, so the only what needed now, is a time to bring up some stability fixes and feature changes.
For now releasing a 3.0.101 kernel with some minor changes:
R4.6.1
fixed CPU OC instabilities
LCDCLK is adjusted to fix tearing issues *
adjusted Dynamic CPU governor tunables for a better battery live
adjusted PowerHAL profiles **
genfstab: storages swap is disabled by default (remove /ramdisk/fstab_specs.txt before flashing to take this change in an effect)
updated temporary kernel zip
* tested with apps like Impossible Game, a display tearings are mostly resolved here. Apps like Youtube, though, might still causing tearings when playing video.
** the minimum CPU freq is set to 400 MHz. I've decided to use it as a default since 200 and 400 MHz CPUfreq steps are anyway using the same voltage, so unless you're undervolting the CPU, there won't be any significant difference in a battery drain.

ChronoMonochrome said:
** the minimum CPU freq is set to 400 MHz. I've decided to use it as a default since 200 and 400 MHz CPUfreq steps are anyway using the same voltage
Click to expand...
Click to collapse
On Lineage OS 11:
Using more accurately the Performance function in Lineage Os Settings (an example here), there are different bugs:
1) Minimum CPU freq here is still set at 200 MHz after I flashed chrono kernel 4.6.1.. but this time I forgot to flash the temporary kernel before your kernel.
Anyway chrono kernel 4.6.1 was flashed without issue using TWRP 2.8.7.0.
2) Maximum CPU freq is automatically restored at 1000 Mhz after any reboot, even if I set 1200 Mhz (with any governor).
3) Deadline scheduler is automatically set after any reboot, even if I set FIOPS as default scheduler.
4) Dynamic governor is automatically set after any reboot, even if I set Zenx as default governor.
5) On the Performance UI, performance profile results automatically set on Balanced after any reboot, even if I set Power save as default (it may be reproducible with "Performance" option too, I didn't check).
UPDATE: I've reinstalled chrono kernel again and these behaviors still happen.

For me the minimum freq was correctly 400 mhz as expected, as always running on stock 4.1.2.
After two days of use I can say you are following the right path.
This time I wanted to remove every possible source of doubts and I went for a clean installation, so doing a complete reset and flashing your kernel, of course after the temporary one. I still have the phone not going to deepsleep and the call issues (basically it is impossible to do and receive phone calls on stock rom).
A part from these I can say I didn't noticed any other issue at all, finding memory management a little improved compared to previous release and battery life still good, considering the phone isn't going to sleep mode.
I think this will continue to improve and soon all these glitches will just be gone away, thank you so much chrono also hoping to settle for a bit on your ultimateROM, only waiting for the vibration working, because that is basically the only notification for me

isaak said:
On Lineage OS 11:
Using more accurately the Performance function in Lineage Os Settings (an example here), there are different bugs:
1) Minimum CPU freq here is still set at 200 MHz after I flashed chrono kernel 4.6.1.. but this time I forgot to flash the temporary kernel before your kernel.
Anyway chrono kernel 4.6.1 was flashed without issue using TWRP 2.8.7.0.
2) Maximum CPU freq is automatically restored at 1000 Mhz after any reboot, even if I set 1200 Mhz (with any governor).
3) Deadline scheduler is automatically set after any reboot, even if I set FIOPS as default scheduler.
4) Dynamic governor is automatically set after any reboot, even if I set Zenx as default governor.
5) On the Performance UI, performance profile results automatically set on Balanced after any reboot, even if I set Power save as default (it may be reproducible with "Performance" option too, I didn't check).
UPDATE: I've reinstalled chrono kernel again and these behaviors still happen.
Click to expand...
Click to collapse
1) Isn't an issue here, the showed CPU frequency is 200 MHz, but the actual CPU pll clock set at 400 MHz. Might be confusing, but yet that is better for a battery life.
2) These aren't really bugs, it's how LOS 11.0 performance profiles works. To change min / max CPU freq, you either need to edit /ramdisk/perf.profiles.rc (and set a custom values) or disable perf profiles. Actually there is one more way - to remove CPUfreq adjusting lines completely from that script - would anyone like this change introduced in a new release?
3-4) I've checked it right now - no issues for me... Have you set "apply on boot" checkbox?
5) It's a known bug of CM11 perf profiles. AFAIK, @ace2nutzer fixed this bug in his CM11 builds. @ace2nutzer, can you please remind how this could be worked around?

ChronoMonochrome said:
2) Maximum CPU freq is automatically restored at 1000 Mhz after any reboot, even if I set 1200 Mhz (with any governor).
Click to expand...
Click to collapse
2) These aren't really bugs, it's how LOS 11.0 performance profiles works. To change min / max CPU freq, you either need to edit /ramdisk/perf.profiles.rc (and set a custom values) or disable perf profiles. Actually there is one more way - to remove CPUfreq adjusting lines completely from that script - would anyone like this change introduced in a new release?
Click to expand...
Click to collapse
Honestly I don't know how to disable perf profiles. If it's a simple thing to do (like a command or two to execute), please tell me how to do it because it's enough for me, otherwise I'd like to try the third way and see.
ChronoMonochrome said:
3) Deadline scheduler is automatically set after any reboot, even if I set FIOPS as default scheduler.
4) Dynamic governor is automatically set after any reboot, even if I set Zenx as default governor.
Click to expand...
Click to collapse
3-4) I've checked it right now - no issues for me... Have you set "apply on boot" checkbox?
Click to expand...
Click to collapse
Yes, "Set on boot" options are correctly set for both Processor and I/O Scheduler.
And I keep "Enable per-app profiles" option turned off.
@ChronoMonochrome
UPDATE 1: It occurs only randomly and with particular combinations. The best way to reproduce is to set these, one at a time:
1) Zenx as governor, min. 200 max 800, Noops scheduler. Reboot.
2) Zenx as governor, min. 200 max 800, Fiops scheduler. Reboot.
2) Zenx as governor, min. 200 max 800, Sioplus scheduler. Reboot.
After the first, the second or the third reboot, some of these values you've set will change spontaneously on their own.
UPDATE 2: I've got a screen flicker issue while I was browsing in Naked Browser with the new LCDCLK frequency.
Tried to set echo 1 > /sys/kernel/mcde/lcdclk, it's ok now, but I've noticed that this value is not kept after a reboot.
Do you need a specific log?
In case please write me any command and I'll give you the output.

isaak said:
On Lineage OS 11:
Using more accurately the Performance function in Lineage Os Settings (an example here), there are different bugs: .....
Click to expand...
Click to collapse
I suggest to keep it unchecked, otherwise it'll change the profile randomly, and that's probably not what u want.
ChronoMonochrome said:
....
5) It's a known bug of CM11 perf profiles. AFAIK, @ace2nutzer fixed this bug in his CM11 builds. @ace2nutzer, can you please remind how this could be worked around?
Click to expand...
Click to collapse
There's still no fix ! But what i did is to add the perf. profile in my control app ... that works fully independently.
But that's probably not what u guys want.
My last try was to do that over build.prop .. this works only for around 15 seconds (after wiping dalvik cache it's around 30 sec.) and then it sets back to "balanced" .. so i use it anyway just for speeding up the boot sequence:
Code:
# CM Performance Profiles (only during boot)
# 0= powersave; 1= balanced; 2= performance - default
sys.perf.profile=2
IMO the best way is to add the perf. profiles button to the quick settings, then it's very easy to switch between the 3 profiles.
Using the same profile for everything is for sure not the best option if u want performance + powersave at the same time.
Personally i use performance, and when i read an pdf or watch a YouTube Video then i switch to powersave.
Using powersave or even balanced for normal usage isn't recommended as it can drain even more battery than using performance, because it's slower and the CPU will stay too long on max. freq and the LCD also will stay longer ON, which leads both to increase power consumption.
So the faster the cpu is, the quicker it'll go on idle (min cpu 200) which is powersaving freq and the faster u'll turn OFF the screen, and logical bigger time on suspend --> deep sleep :highfive:

ace2nutzer said:
I suggest to keep it unchecked, otherwise it'll change the profile randomly, and that's probably not what u want.
There's still no fix ! But what i did is to add the perf. profile in my control app ... that works fully independently.
But that's probably not what u guys want.
My last try was to do that over build.prop .. this works only for around 15 seconds (after wiping dalvik cache it's around 30 sec.) and then it sets back to "balanced" .. so i use it anyway just for speeding up the boot sequence:
Code:
# CM Performance Profiles (only during boot)
# 0= powersave; 1= balanced; 2= performance - default
sys.perf.profile=2
IMO the best way is to add the perf. profiles button to the quick settings, then it's very easy to switch between the 3 profiles.
Using the same profile for everything is for sure not the best option if u want performance + powersave at the same time.
Personally i use performance, and when i read an pdf or watch a YouTube Video then i switch to powersave.
Using powersave or even balanced for normal usage isn't recommended as it can drain even more battery than using performance, because it's slower and the CPU will stay too long on max. freq and the LCD also will stay longer ON, which leads both to increase power consumption.
So the faster the cpu is, the quicker it'll go on idle (min cpu 200) which is powersaving freq and the faster u'll turn OFF the screen, and logical bigger time on suspend --> deep sleep :highfive:
Click to expand...
Click to collapse
Sorry for so late response, I had to take a break in a development because suddenly got sick with a flu (I'm fine now, btw) :silly:
I think I've found a temporary solution to this bug, take a look if you're interested:
https://github.com/ChronoMonochrome...mmit/bd0dcce403633543f1bf11e5f8b476a3e88322cb

New build is up!
Changelog
R4.6.2
rebased to CM14.1 branch (added support for 6.0.1 and 7.1.2 ROMs) *
Hey there! I've been testing 6.0.1 / 7.1.2 ROMs and I've recently got some issues with camera on 3.4.x kernel build, so I've decided to release a new refresh build (based on 3.0.101 sources).
I've rebased the most of recent changes to CM14.1 branch in order to support these ROMs (so if you're using older ROMs like stock 4.1.2 then better to use previous release cause some patches might be missing here).

Related

[kernel][2.6.32.24](BFS+HAVS+BFQ+OC+UV+AXI) build on 17.10.2010(evo-v0.1.h/n1-v0.1.d)

I absolutely take no creative credit in making this kernel as all I have done is putting them together and build based on the LEO kernel tree. The real credit goes to them.
I am using a TMobile HD2 / ChuckyDroidROm / Radio 2.12.50. Please note that the HAVS does not work well with interactive governor (but it may still works for you device). If you are experiencing scrolling lag, try the kernel without BFS feature.
I did not go through each one of them. I have only tested the BFQ-OC-UV-AXI-850mv-0.1.e with darkstone's HD, which works fine on my HD2. Its bit slow at start once everything is settle down, its pretty fast and no lag for me. But this might not be the case for you.
In the future, i will only provide the kernels that are popular. Right now, there are just too many combinations and takes really long time to upload them.
feature:
AB: Audio Boost
AXI: AXI frequency tweak
BFQ: BFQ IO scheduler (default CFS)
BFS: BFS cpu scheduler (default CFS)
HAVS: Hybrid Adaptive Voltage Scaling (Static Voltage Scaling - SVS is default)
OC: OverClock
UV: UnderVolt
OC, UV and AXI features are the standard feature for EVO based kernel.
EBAT: Extended battery (please provide feedback to hastarin http://forum.xda-developers.com/showthread.php?t=787588)
By default, the EVO based kernels are not overclocked. Please use setCPU or userinit.sh/user.conf script to enable overclock.
You can choice the combination you want.
EVO based kernel:
version 0.1.h (I will do another kernel update tomorrow as there is a new commit which fixes random ts freeze)
BFQ-OC-UV-AXI_850mv-0.1.h-evo.zip
BFQ-OC-UV-AXI_925mv-0.1.h-evo.zip
BFQ-OC-UV-AXI_1000mv-0.1.h-evo.zip
BFQ-OC-UV-AXI_1050mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-AB_850mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-AB_925mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-AB_1000mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-AB_1050mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-EBAT_850mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-EBAT_925mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-EBAT_1000mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-EBAT_1050mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-EBAT-AB_850mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-EBAT-AB_925mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-EBAT-AB_1000mv-0.1.h-evo.zip
BFQ-OC-UV-AXI-EBAT-AB_1050mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI_850mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI_925mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI_1000mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI_1050mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-AB_850mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-AB_925mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-AB_1000mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-AB_1050mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-EBAT_850mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-EBAT_925mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-EBAT_1000mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-EBAT_1050mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-EBAT-AB_850mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-EBAT-AB_925mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-EBAT-AB_1000mv-0.1.h-evo.zip
BFS-BFQ-OC-UV-AXI-EBAT-AB_1050mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI_850mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI_925mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI_1000mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI_1050mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-AB_850mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-AB_925mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-AB_1000mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-AB_1050mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-EBAT_850mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-EBAT_925mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-EBAT_1000mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-EBAT_1050mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-EBAT-AB_850mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-EBAT-AB_925mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-EBAT-AB_1000mv-0.1.h-evo.zip
BFS-HAVS-BFQ-OC-UV-AXI-EBAT-AB_1050mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX_850mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX_925mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX_1000mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX_1050mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-AB_850mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-AB_925mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-AB_1000mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-AB_1050mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-EBAT_850mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-EBAT_925mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-EBAT_1000mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-EBAT_1050mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-EBAT-AB_850mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-EBAT-AB_925mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-EBAT-AB_1000mv-0.1.h-evo.zip
HAVS-BFQ-OC-UV-AX-EBAT-AB_1050mv-0.1.h-evo.zip
Click to expand...
Click to collapse
if you are experiencing scrolling lag, try the kernel without BFS.
N1/htc-msm-2.6.32.9 based kernel (I tested the BFS-HAVS-BFQ-OC-UV-AXI_850mv-0.1.b kernel works fine so far.):
version 0.1.d
BFQ-OC-UV-AXI_850mv-0.1.d-n1.zip
BFQ-OC-UV-AXI_925mv-0.1.d-n1.zip
BFQ-OC-UV-AXI_1000mv-0.1.d-n1.zip
BFQ-OC-UV-AXI_1050mv-0.1.d-n1.zip
BFS-BFQ-OC-UV-AXI_850mv-0.1.d-n1.zip
BFS-BFQ-OC-UV-AXI_925mv-0.1.d-n1.zip
BFS-BFQ-OC-UV-AXI_1000mv-0.1.d-n1.zip
BFS-BFQ-OC-UV-AXI_1050mv-0.1.d-n1.zip
BFS-HAVS-BFQ-OC-UV-AXI_850mv-0.1.d-n1.zip
BFS-HAVS-BFQ-OC-UV-AXI_925mv-0.1.d-n1.zip
BFS-HAVS-BFQ-OC-UV-AXI_1000mv-0.1.d-n1.zip
BFS-HAVS-BFQ-OC-UV-AXI_1050mv-0.1.d-n1.zip
HAVS-BFQ-OC-UV-AXI_850mv-0.1.d-n1.zip
HAVS-BFQ-OC-UV-AXI_925mv-0.1.d-n1.zip
HAVS-BFQ-OC-UV-AXI_1000mv-0.1.d-n1.zip
HAVS-BFQ-OC-UV-AXI_1050mv-0.1.d-n1.zip
version 0.1.c
BFQ-OC-UV-AXI_925mv-n1-0.1.c.zip (2.21 MB)
version 0.1.b
BFQ-OC-UV-AXI_850mv-0.1.b.zip
BFQ-OC-UV-AXI_925mv-0.1.b.zip
BFQ-OC-UV-AXI_1000mv-0.1.b.zip
BFQ-OC-UV-AXI_1050mv-0.1.b.zip
BFS-BFQ-OC-UV-AXI_850mv-0.1.b.zip
BFS-BFQ-OC-UV-AXI_925mv-0.1.b.zip
BFS-BFQ-OC-UV-AXI_1000mv-0.1.b.zip
BFS-BFQ-OC-UV-AXI_1050mv-0.1.b.zip
BFS-HAVS-BFQ-OC-UV-AXI_850mv-0.1.b.zip
BFS-HAVS-BFQ-OC-UV-AXI_925mv-0.1.b.zip
BFS-HAVS-BFQ-OC-UV-AXI_1000mv-0.1.b.zip
BFS-HAVS-BFQ-OC-UV-AXI_1050mv-0.1.b.zip
HAVS-BFQ-OC-UV-AXI_1000mv-0.1.b.zip
HAVS-BFQ-OC-UV-AXI_1050mv-0.1.b.zip
HAVS-BFQ-OC-UV-AXI_850mv-0.1.b.zip
HAVS-BFQ-OC-UV-AXI_925mv-0.1.b.zip
Click to expand...
Click to collapse
EVO Log:
version 0.1.h
- based on git commit. Check gitorious for detail
* ts improvement (Markinus committed code to improve TS performance, This should reduce/eliminate the scrolling lag)
version 0.1.g
- based on git commit. Check gitorious for detail
- BFS 357
- minor change to BFQ
version 0.1.f
- based on git commit
- patch to 2.6.32.24
version 0.1.e
- based on git commit
* Working compass. A big thanks to Rajko!
- Extended battery support by Hastarin
- Thanks to michyprima's patch to fix issue with Airplane mode freezing the phone
- Memory leak fixed in firmware
- Mutex bug fix
- fix dma_sync_single_range*
- fix incorrect optimization for cpu govenors
- remove rwsem lock from CPUFREQ_GOV_STOP call (second call site) in CPUFREQ
- EXT4
* flush delaloc blocks when space is low
* fix async i/o write beyond 4GB to a sparse file
* correctly calculate number of blocks for fiemap
* prevent creation of files larger than RLIMIT_FSIZE using fallocate
* Ensure zeroout blocks have no dirty metadata
* fix possible lost inode write in journal mode
* fix memory leaks in error path handling of ext4_ext_zeroout()
* fix BUG_ON at fs/buffer in no journal mode
* fix potential quota dealock
- CIFS
* remove bogus frist)time check in NTLMv2 session setup code
* don't attemp busy-file rename unless it's in same directory
* fix malicious redirect problem in DNS lookup code
- CFS cpu scheduler
* fix over scheduling bug
* implement different treatment for idle shares
- fixes voltage table for both HAVS and SVS
Many of these patches are from kernel.git and all credit goes to the linux project
version 0.1.d
base on commit a8211687
- patch by gauner1986
* add video clean up and many twaking by gauner1986
* enable dot11n (gauner1986)
* add INT_AD6_EXT_VFR to fake irq (gaunner1986)
- add hastarin compass offset
make sure you add "nand_boot=0" parameter to kernel cmdline argument in startup.txt. eg.
{{{
set cmdline "rel_path=Android nand_boot=0"
}}}
version 0.1.c
add interactive cpufreq governor (as i forgot to apply the patch in previous versions).
version 0.1.b
disable framefuffer console to reduce wake up delay and high standby power consumption
version 0.1.a (EVO based commit
- BFS version 318
- BFQ I/O scheduler
- msm_kgsl mod
* enable shadow write to improve video performance
* Use writecombine flag to map vmalloced memory (video performance improvement)
- Overclock to 1.152GHz
- Provide four different undervolt versions 850mV, 925mV, 1000mV and 1050mV(default)
- Audio boost
- Interactive governor
- Some minor tweaking to on-demand and conservative governor
- Ext4 is enabled by default
Click to expand...
Click to collapse
N1 Log:
version 0.1.d
- minor BFQ update
- BFS 357
version 0.1.c (experimental)
- fix the TS freeze issue (i haven't encounter freeze yet)
- Working compass. A big thanks to Rajko! (haven't test it yet)
- add ElBartoME's BT port (not sure this is working or not)
- patch kernel to 2.6.32.24 (for BFS testing)
version 0.1.b
minor HAVS changes
version 0.1.a N1 based commit )
- BFS version 318
- BFQ I/O scheduler
- msm_kgsl mod
* enable shadow write to improve video performance
* Use writecombine flag to map vmalloced memory (video performance improvement)
- Overclock to 1.152GHz
- Provide four different undervolt versions 850mV, 925mV, 1000mV and 1050mV(default)
- Audio boost
- Interactive governor
- Some minor tweaking to on-demand and conservative governor
- Ext4 is enabled by default
Click to expand...
Click to collapse
The purpose of HAVS is to minimize the power consumption by
dynamic adjust the optimal voltage, and limit the maximum voltage.
The optimal voltage is actively determined for each frequency and
temperature. HAVS actively adjusts the CPU voltage as the CPU
frequency and temperature changes.
Click to expand...
Click to collapse
BFQ(Budget Fair Queueing) is a I/O Scheduler. BFQ is a proportional
share disk scheduling algorithm, based on CFQ, that supports
hierarchical scheduling using a cgroups interface.
BFQ generally performs better (for desktops) were perceived intractability
(vs real throughput) is preferred. CFQ may unwittingly penalise a well written
program with fast throughput, in favour of a slower program by virtue of its
reliance on allocated 'throughput' vs BFQ's 'time' reliance.
http://algo.ing.unimo.it/people/paolo/disk_sched/
http://groups.google.com/group/zen_kernel/browse_thread/thread/88871a70cecd707b#
Click to expand...
Click to collapse
What is BFS(Brain **** Scheduler):http://ck.kolivas.org/patches/bfs/sched-BFS.txt
FAQS about BFS:http://ck.kolivas.org/patches/bfs/bfs-faq.txt
WIKI http://en.wikipedia.org/wiki/Brain_Fuck_Scheduler
Click to expand...
Click to collapse
Credits:
ridikolous, ReX83, eyanlaya (for testing)
HTC LEO kernel tree (base kernel, based on NEXUS one/HTC-MSM-2.6.32 kernel tree)
HTC LEO kernel tree (base kernel, based on HTC EVO kernel tree)
Con Kolivas (BFS)
Fabio Checconi (BFQ)
Ian (Overclock, undervolt and AXI)
pershoot (voltages and other fixes)
IntersectRaven (HAVS)
and many other developers.
Click to expand...
Click to collapse
I hope someone can take advantage of the source and make it better as i have limited time to test and improve them.
My gitorious for evo based kernel (something wrong with my old tree, so i recreate a new one)
if you like the work i do, you are always welcome to buy me a cup of coffee
thx good work
http://forum.xda-developers.com/showpost.php?p=8050200&postcount=8
Hi,
is the freeze fix from gauner1986 include (previos post)?
with friendly greet
starbase64
support for extended battery , PLZZZZZZZZZZZZZZZZZZZZ
how to use this ??? are these zimages ...--(but wats this tun.ko and bcm4329.ko?)
Hi,
copy and overwrite the ko files to /system/lib/modules.
with friendly greet
starbase64
Does this fix the battery consumption and wake-up from sleep problems which were encountered with the G-sensor fix kernel?
support for extended battery included?
mattc 1.7 ppp
Nice have to test it out.
Testing on DarkStone's Sense V2
does this include darkstones graphic improvement mod?
edit: just tried it and the accelerometer response is slow and so is the touchscreen. That said the performance is very good and it played ashalt 5 the smoothest i have seen any kernel do. Im using the 850 undervolt version with mattc 1.7 rmnet. Thanks for the kernel but i think ill wait until these issues are fixed
Thank you..
this kernel is very nice for Froyostone v2.
starbase64 said:
Hi,
copy and overwrite the ko files to /system/lib/modules.
with friendly greet
starbase64
Click to expand...
Click to collapse
thankuuuu brother
peace
Nice...look good for freeze problem
What is this for this guy not even answering that question
testing in bangter 1.2a
my quadran result 1920 (of max cpu speed )
chris-m said:
testing in bangter 1.2a
my quadran result 1920 (of max cpu speed )
Click to expand...
Click to collapse
can you use anyone of these?
no sorry, i'm using bangters relase for the quotidian usage
and i use kernel 1050mV(default);
i shall test the other builds if the battery wears out too fast..

[KERNEL][CM7/MIUI][03/01/12] Glitch V13.1 - OC/UV - Voodoo - Glitchy Speed

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
These kernels are provided as-is without warranty. I'm not responsible for any problem you can encounter with your phone or if your cat suddenly dies.
Although, don't expect support even if I will eventually help since I love cats.
Note : These kernels are only compatible with CyanogenMod and MIUI roms !​
Do you want to discuss on this kernel, get the fresh news on development, or become a kernel tester ?
Join the IRC channel from your web browser herehttp://webchat.freenode.net/?channels=glitchkernel ! No registration needed
Make sure the channel is "#glitchkernel" and you're set.
For those who already have an IRC client,
here is the server : irc.freenode.net
port : 6667
Channel : #glitchkernel​
Overview :
- Up to 1.7GHz CPU OC with added bus/GPU OC (Thanks to morfic for the great base of work)
- Undervolting (using third party apps)
- Voodoo Sound & Voodoo Color (Thanks Supercurio & renaudallard)
- FPS uncap (Screen running 68Hz instead of 60Hz, from 56 to 66 FPS max) from JPX source
- Various tweaks for more smoothness and reliability
- LED notifications using Neldar's BLN
CHANGELOGS IN #2 POST​The frequency/voltage & informative UV settings table is as follow for V13 kernel :
Note that these UV settings will be unstable on many devices. It's only informative.
1700 MHz - [email protected] 243 MHz - 1.500v / -> Most phones will fail here. -25 to -50mV may help to stabilize. Much stabler as unique frequency for benchmarks.
1600 MHz - [email protected] 229 MHz - 1.500V / -> That's high and many devices will fail on this frequency. Find working UV for you if any.
1500 MHz - [email protected] 250 MHz - 1.500V / -25mV
1440 MHz - [email protected] 240 MHz - 1.475V / -50mV
1400 MHz - [email protected] 233 MHz - 1.450V / -50mV
1300 MHz - [email protected] 217 MHz - 1.400V / -50mV
1200 MHz - [email protected] 200 MHz - 1.350V / -50mV
1000 MHz - [email protected] 200 MHz - 1.250V / -50mV - If you have stability issues, try to let this one by default.
800 MHz - [email protected] 200 MHz - 1.200V / -75mV
400 MHz - [email protected] 200 MHz - 1.050V / -100mV
200 MHz - [email protected] 200 MHz - 0.950V / -150mV
100 MHz - [email protected] 100 MHz - 0.950V / -200mV - (can be very different between two devices)
GPU frequency is linked to bus speed
More volts is not always equal to more stability. Try to add more UV (less volts) if the frequency you're trying to achieve is unstable.
Considering all phones will respond differently to OC/UV, to tweak the values to suit your device will be required.
By default, no overclock/undervolt is applied. You'll need to use one of the tools below to adjust the frequencies and voltages.
-Pimp My CPU (recommended if you're using MIUI) : http://forum.xda-developers.com/showthread.php?t=1018411
-Voltage Control : http://forum.xda-developers.com/showthread.php?t=829731
-SetCPU : http://forum.xda-developers.com/showthread.php?t=505419​
Downloads
Glitch kernel (CWM flashable only)
Glitch Kernel Updater app now available on the Android market to support us !​i9000 :
- 03/01/2012 - V13.1
Captivate:
- 03/01/2012 - V13.1​
Vibrant:
- 03/01/2012 - V13.1​
Fascinate:
- 03/01/2012 - V13.1​
Telus Fascinate:
- 03/01/2012 - V13.1​
OLDER RELEASES​LIVE OC GUIDE​FAQ, Changelogshttp://forum.xda-developers.com/showpost.php?p=13021804&postcount=2http://forum.xda-developers.com/showpost.php?p=13021804&postcount=2​​
-------------------------
Source :
- Glitch repo : https://github.com/organizations/Glitchkernel
Who is the Glitch team ?
- Kernel developement : ssewk2x & Tk-Glitch.
- Public relations / web hosting : Sixstringsg.
- App developement : Smasher816.
- Beta testers team, with members coming and leaving
Credits :
Codeworkx, Pawitp, Atinm, GuiPerPT, Unhelpful, Coolya, Morfic, Ezekeel, Zacharias.maladroit, Bilboa1, TheEscapist, Netarchy, Supercurio, lippol94, MAMBO04, Galnet, nitr8, Rahulrulez, Chadouming, renaudallard, existz, times_infinity, bearsfan85
Thanks to the donators and everyone bying the Glitch Kernel Updater app from the market, it's much appreciated and encourages us to continue our work !
Thanks to the beta testers team and to everyone helping me to debug and find new useful things to integrate !
Without all of you, this kernel wouldn't be !​
Changelogs :
V13 - LATEST
03/01/2012 - V13.1
- Cleanup.
- Fixed buttons freezing randomly.
- Fixed media buttons / headset buttons.
- Lots of GPIO fixes which eliminate phantom keypops.
- Added updated sysfs interface for smartass governor.
- Updated screenstate scaling script to use non-deprecated sysfs
interface for smartass2 and other govs.
- Back to CM7 LED Notifications.
- Lots of changes to cypress touchkey driver to guard against phantom
keypops and speed things up.
- Removed CarrierIQ-related virtual serial device. It probably wasn't
used, but now we know for sure.
- Changes to dpram (modem kernel interface) to make the radio a
little more stable.
- slightly more helpful gamma table error message.
- Moved call audio sysfs files from voodoo sound group to their own.
- Integrated 90call_vol into the kernel zip file so people don't
have to mess with it on their own.
- Now possible to choose any governor as sleep governor in the recovery.
- Vandalized bootlogo a bit.
20/11/2011 - V13
- Upstream synced to the latest at release time
- New CFLAGS again
- mfpu switched from neon to vfpv3
- BLN now working correctly, with LED timeout (thanks to Zacharias.maladroit)
- Back to hard float
- Updated toolchain to 4.5-2011.10
- Modified screen colors to look better (ugly gradient fixed, yellowish tint fixed). Don't use Voodoo Color punchy settings with this though (green screen likely to be back)
- Better reactivity under load
- 348MB RAM available
- Better 720p video recording (less buggy)
- Doubled SDCard read cache - Slight speed-up on SDcard read speed
- USB power drain fix
- Better memory management
- Back to 3.0V for the screen - 2.6V said not to give more battery life because of the added amperage
- Bugfixes
- Added Cgroup timer slack to group tasks by timer slack value
- Switched to Tree preempt RCU and added RCU boost
- New rethemed/recolored recovery menu and bootlogo, thanks to Fate-Silver for the blood
- Fixed "GLITCH" menu in recovery not showing for i9000 and Telus Fascinate
- Better handling of the CPU frequency table, + fixes
- Fascinate related fixes and updates from JT1134
- Added Lazy and SmartassV2 governors
- Fixes for SDCard handling
- All leakage settings are now available from a single kernel. Use the GLITCH menu in recovery (recommended way to switch the values)
- Added support of JT's 3-button recovery hack (credit to JT1134)
​V12
13/07/2011 -> 29/09/2011 - V12 BETA #3
- BackLightNotifications (BLN) port, thanks to Zacharias.maladroit must use the BLN app. If it doesn't work, try Blinky. Still not fully working though.
- Some cleaning and added tiny fixes
- Fascinate : Now using Yamaha compass driver from ED01
- *Temporary* fix for green flashes/colors on low brightness (reborn/still not fixed in V11 - not yet proper though)
- Modified color multiplier to avoid yellowish tint by default
- Enhanced cleaning script when flashing
- Screen undervolt (from 3.0V to 2.6V) // it should help battery life
- Lowering kernel debugger buffer
- More work on leakage values
- Adding some old-school (V9D) CFLAGS resulting in substantial performance and stability gains
- 800MHz random lock fixed - not fully fixed it seems
- Popping keyboard bug fixed
- Make use of NEON accelerated mfpu
- Slightly more aggressive ondemand governor default settings // searching the best balance for efficiency
- Added a few speed enhancements
- In-call receive audio is much louder across the board. You can now hear your significant other yelling at you if you're in a noisy area. Sorry, guys
- In-call mic gain should see some improvement as well. Meaning your wife can now hear you apologizing better
-- caveat: I've heard conflicting reports about this while using bluetooth. I'm investigating that, so stay tuned.
- Overhauled the screen state scaling feature.
-- governor setting now stays put
-- users can now enable/disable the feature and configure it via the custom recovery listed below
- New recovery. Screenstate scaling is controllable via recovery, and it's themed now.
-Audio output and input controllable via script linked in OP
-Call volume tweaks re-written to be more clean/effecient.
-Screenstate bug fixed, doesn't cause lag anymore.
-Upstream synced (this means you must be on the latest nightly for your device for this to work)
-New drivers
​V11
13/07/2011 - V11
- Upstream synced as always (updated recovery...)
- More debug stuff disabled & cleanups/fixes on various things
- Printk disabled to reduce overhead
- Updated to linux kernel 2.6.35.13
- OC implementation fixes and modifications (fixing overvolt in Voltage Control Xtreme as well as some other tiny things)
- Added experimental GPU OC implementation from TheExcapist (for future use / not yet functional)
- 1.7GHz step added - working on some pretty good phones
- Modified touchkey/Led notifications settings from Zacharias.maladroit
- Added SLQB
- Added SIO and BFQ schedulers
- Back to LZO compression for faster boot time
- New voltage settings for more stability
- Trying some new speed tweaks
- Better memory management
- 340MB of RAM available for user without breaking 720p recording
- Preemptible Tiny RCU
- Automated per tty task groups patch
- Added InteractiveX governor
- Two new branches for OC settings adapted to high and low leakage chips
- Toolchain sorcery, thanks to Zacharias.maladroit (RIL is compiled using 4.4.3 toolchain, and everything else is compiled using 4.5.2 toolchain -> more speed and stability)
- Enhanced Voodoo Color settings from renaudallard
- Voodoo Sound V10
- Allow CPU-supported unaligned accesses
- Logcat on/off scripts (built as module)
- Bluetooth HID support
- New, cleaner bootlogo
- Now cleaning old scripts, OC values, cache and dalvik cache on kernel installation - thanks to lippol94
- Green tint on low brightness fixed
- Switched to ondemand governor​V10
27/05/2011 - V10A Do not use with CM7 builds older than 23/05 (as well as the 28/05 or newer build) or MIUI -> you'll get no service !
- Now fully compatible with latest CM7 Nightly builds
- Back to 2010.09 toolchain -> slower & less stable but needed to make a working kernel for latest builds
- Upstream sync (bigger radio partition, headset stuff..)
- Int voltage changes to get some stability back on all overclocked frequencies
- A bit faster 1.5 and 1.6GHz steps - Could make these steps unstable for some, please try and report
- Smartass governor tweaked for faster scaling up, and slower scaling down -> better stability and speed
- OC code bugs and inconsistencies introduced in V7B now fixed (it was here to prevent sleep of death issue, now fixed)
- Some fixes and enhancement for compatibility with Xan's Voltage Control app
- Various tweaks for MOAR SPEED
- Black magic
Known issues :
- The reboot recovery command seems broken for some reason on recent builds. Probably rom related.
- Some users still get freeze issue on boot. If you have this issue, please use the "no-optimization" kernel for you device from this post : http://forum.xda-developers.com/showpost.php?p=14180722&postcount=2077
03/06/2011 - V10B To use with newest builds only (equal or newer than 28/05) !
- Upstream sync (FM radio, new Voodoo Sound implementation, etc...)
- Back to 4.4.3 toolchain - needed for new RIL
- Big cleanup - rewrite from scratch
- Many fixes
- New tweaks for speed on 4.4.3 toolchain
- New tweaks for stability on 4.4.3 toolchain
- Black magic
17/06/2011 - V10C (Updated) To use with newest builds, #28+ for i9000 or equivalent
- Upstream sync (cpuidle, updated drivers (wifi etc.), Recovery 4.0.0.x, etc...) (updated as of today 17/06)
- More debug stuff disabled
- Dock audio support (experimental)
- Added DIDLE (Deep Idle) support (removed, buggy)
- New voltage tweaks for added stability on some devices​V9
16/05/2011 - V9A
- Merged with the now dead V8C update because of new added features
- Upstream sync : Calculate battery percentage as percent of max capacity reported when battery full, new wifi driver, etc.
- New PMEM settings for more available RAM (now 331MB)
- 1.54GHz step added with some gentle settings for now.
- New step by step frequency switch when scaling down (part of the Galaxy S II port from Bilboa1) - more stability on highest frequencies
- Corrections and further tweaking on smartass governor + some fixes from Netarchy (Nexus S). 400MHz lock when screen is on removed (not needed anymore -> more power saving)
- Higher cache for faster SDcard read speed
- New sleep settings : Effective lock to 400MHz max when screen is off -> fix long wake up/hiccups when playing music or similar use. Be careful with your UV settings on 200 and 400MHz steps to avoid sleep of death problems ! These were not used on previous versions of my kernel (locked to 100 MHz when screen off and locked to 400MHz when screen on with a buggy gap in smartass governor forcing generally 600+ MHz)
- 600 MHz step removed (it was generating instabilities on some phones when jumping to 800 or down to 400 when using UV)
- Some voltage tweaks for added stability on some devices (as always)
- Cleanups on unused/no more needed stuff
- Little surprise, thanks to Morfic
- Updated to V9A² to fix SOD and some performance issues
21/05/2011 - V9B
- Upstream sync (CWM recovery 3.1.0.1, better screen colors (kills voodoo color for now and looks awful on my 0516 build, but should be good on latest), GPIO fixes, samsung modemctl...) + small changes on my side for official CyanogenMod repository compatibility
- Voodoo Sound updated to V9 / cleaned voodoo color stuff until it works again
- New cleaner bootlogo based on the one in first post, preferred by most users
- Some additional compilation flags from Netarchy and Zacharias.maladroit (better overall performances + NEON)
- Screen refresh frequency bumped to 72Hz (68Hz effective). It'll uncap FPS to 66 again but seems stabler than before on framerate (the divide/2 behavior happens less)
- Added screenstate scaling script from well.heeled.man as a test (with my kernel's smartass default settings). It should give better sleep power consumption as well as better power efficiency on screen off tasks like music playing etc. by switching to conservative governor.
If you want more information, discuss on this or contribute to enhance it, please come here : http://forum.xda-developers.com/showthread.php?t=1087646
- Adding some stuff from Zacharias.madadroit :
- Higher battery charging temperature
- Scheduler tweaks​
Alternative version now available (V9B-VC) using old AMOLED panel color/gamma settings and with Voodoo Color V2 added back.
24/05/2011 - V9C TO USE WITH CM7 Nightly build #12 OR HIGHER ONLY
(Updated to fix "no service" issue, but still sucks.. unstable on #12 build, very stable on others but no service)
- Upstream sync (PMEM disabled (gives 339MB RAM now), new RIL, headset fixes...)
- Divider changes for MUCH better stability on 1.2GHz at the cost of a slight decrease on performances
- New branch with Voodoo Color display driver and "old" color settings named "VC"
- Fix for Vibrant no service problem - hopefully
- Small changes on smartass governor for better scalability (reverts some old settings not needed anymore with the screenstate script)
- Glitch logo now in update script too for nanu_x2 to be amazed when installing my kernel
24/05/2011 - V9D TO USE WITH CM7 Nightly build #11 OR LOWER (for i9000, or cappy/vibrant equivalent) AND MIUI ONLY
First "D" revision.. Sound like duty. It's basically a fix of a fix done to make the V9C features available for "stable builds" (considering the i9000 #12 isn't)
- Obviously all the V9C changelog
- Using old RIL to be compatible with builds before #12 for I9000 (--> WON'T WORK with #12 for i9000 or equivalent !)
- Replaced 1.54GHz step by 1.6GHz (1.54GHz step was somewhat useless, too close to 1.5Ghz, and slower overall because of the lower bus speed)
- I can't build Vibrant ATM, the CM7 build system is broken on this device or I'm doing something wrong but I wasn't able to fix it. Any help is appreciated. I'm sorry for Vibrant users I'm screwed.​V8
07/05/2011 - V8A - To use with 05062011 or newer CM7 build (useable on MIUI RC8 but you'll lose camera - MIUI needs an update)
- Upstream sync (camera fixes etc.)
- More stability fixes
- Cleanups on OC code (found that 1.2 and 1.3GHz were very unstable compared to earlier releases)
- More work on Vibrant/Captivate. The kernels are now available to download but are untested - for now. Feel free to try and report any problem or if all runs well. If I have enough positive reviews, these kernels will be released in their respective device sections.
11/05/2011 - V8B
Upstream sync only :
- USB switch suspend
- TV out stuff
- Fascinate specifics
- Revert "Got back to previous samsung_modemctl" for 05112011 CM7 build​
V7
02/05/2011 - V7A - To use with 05012011 or newer CM7 build and MIUI RC8+ only
- Resurrect Voodoo Color killed by 2.3.4 merge.
- New step for 1.5GHz on top of 1.44GHz (now 9 steps total versus 8 before)
- Forcing 400MHz max when sleeping for added battery life (default = 800). Couldn't detect any side effect.
- New tweaked Smartass governor now default (800MHz min when screen on). Please report your experience
- It seems the smartass governor is not working by default, it will revert to performance >< Please force it to get it to work -> Ok found the problem, I'll update in a min
- Now updated to V7A-2 to fix the governor bug
03/05/2011 - V7B - To use with 05012011 or newer CM7 build and MIUI RC8+ only
- Resurrect Voodoo Color killed by 2.3.4 merge - Again - fully working now
- Fixed sleep of death issue when unplugged
- Switched to LZO compression for better overall speed and reduced boot time
- Tweaked smartass governor more for - hopefully - better battery life and a bit more responsivity
- New voltage and frequency table rewrite as a bonus with now 11 frequencies total
- Stability fixes on 1.5GHz step -> please test and report
- Reverted FPS uncap - at least for now - for two main reasons : more stability on high GPU freqs (1.4GHz and more), and to prevent FPS limit at max/2 (33 when unlocked to 66), limiting overall performances in heavy scenes. I think there's a lack of buffering somewhere.. It will give higher scores on some benchmarks, and lower on others. A better battery life can indeed be expected too.
- Upstream sync
05/05/2011 - V7C - To use with 05032011 or newer CM7 build and MIUI RC8+ only
- Upstream sync (better battery life, reboot recovery, etc.)
- A general stability fix missing from V7 branch added back
- Tiny tweaks on the voltage table
- Big bugfix on the V7 branch (redone from scratch, cleaner)
- Switched to 2011.03 toolchain
- Added some optimization flags, "-mfloat-abi=hard" being one of them (up to 40% performance gains in specific cases)
- Small improvements here and there​V6
WIP
22/04/2011 - V6pre - preview/work in progress of upcoming V6A update *test* :
- Reverted PMEM settings to new CM7 default (317MB - same as V5A)
- Reverted some stability fixes that weren't that stable on some devices, or even prevented some to boot
- New voltage table for a more linear increase, improving stability at default settings
- Switched to Deadline scheduler by default as it appears more stable
- Back to 2010.09 toolchain for speed and efficiency
- Synchronized with last update from SGS CM7 team
Better to use CM7 04212011 update with this kernel and newer.
22/04/2011 - V6pre - update 1 :
- Battery polling bumped to 15 sec (was 1 before), it should help battery to an extent (thanks to Zach for the idea)
- Some internal voltage tweaking to hopefully be more UV friendly
- Bumped USER_HZ for more smoothness
- Another -rare- bootloop fix
22/04/2011 - V6pre - update 2 :
- Added some tweaks from V5A for testing
- Resolved a bug generating fake voltage reading
- Resolved a bug on 400MHz step generating instabilities
- Slight changes to the voltage table
- Fixed a typo
- Trying some toolchain switch - again-
23/04/2011 - V6pre - update 3 :
- Corrected Led Notifications - Now it should work properly again !
- Various bugfixes and typo corrections
- Toolchain change once again
- Added new Interactive governor with aggressive settings for even more speed. You need to change it by app (pimp my cpu/cyanogen settings), it's still on conservative by default.
(thanks Zach for your suggestion)
25/04/2011 - V6pre - update 4
- Cleanups on Led notifications to resolve a bug (buttons stopped working randomly for some users)
- More typo corrections
- Voodoo Sound V8
- Various bugfixes on CPU load and schedulers
- CONFIG_CC_OPTIMIZE_FOR_SIZE disabled for speed
- Lower latency on GPU states switch for stabler performances
- Added a stability fix for voltage change latency when frequency is changing. It should give more stability with high undervolt or big voltage differences between two steps - Please test and report ! (Thanks Zach for pointing that to me)
- Two versions for testing purposes : V6pre-u4 is compiled using GCC 4.5.1 toolchain, and V6pre-u4(alt) is compiled using GCC 4.4.3 one. If you get instabilities on the first one, try the other and vice versa. Please report your findings on that because it was the first stability differences source between my kernel revisions. For information, V6pre-u2 was compiled with 4.4.3, and u3 with 4.5.1.
27/04/2011 - V6pre - update 5 >> 6
- Name changed from "TkGlitch" to "Glitch"
- Cleanups on buttons (Kangsterizer)
- Lower latency on GPU states switch for stabler performances in 3D and/or at high GPU frequency - corrected, thanks to Kangsterizer
- Added a stability fix when frequency changes for cpufreq governors
- Tweaked Interactive and Conservative governors for testing
- New Frequency table : 1.5GHz is now the max selectable frequency, and 800MHz and 400MHz steps are now replaced by a unique 600MHz one.
- Changed initramfs source to remove the annoying "E:no misc partition" error in the recovery
- Now bumped to update 6 to fix an issue with the conservative governor.
27/04/2011 - V6pre - update 7
- New Frequency table : 1.44GHz removed, 800 and 400MHz steps are back.
- Battery polling bumped from 15 to 30 seconds
- GPU power latency bumped from 10 to 60 ms
28/04/2011 - V6A - To use with 04282011 or newer CM7 build only
- New sensors drivers added
- Normalized 1.5GHz bus speed (GPU will now run @ 250MHz versus 247MHz before. It can affect your stability !)
- Int voltage lowered for 1.5GHz step because it did have a bad effect on lower frequencies stability
- GPU power latency back to default - but fixed (100ms)
29/04/2011 - V6B - To use with 04282011 or newer CM7 build only
- New initramfs source to fix compass and update CWM recovery
- 1.5GHz replaced by 1.48GHz for stability
- New voltage table as requested by many users (+25mv on 1200 to 1400MHz steps)
- New interactive governor for better scaling and battery life
- New tweaked smartass governor for testing (pretty bad on CPU benchmarks for some reason, please test how it feels in real world use)
- New ondemand governor from Zacharias.maladroit sources for testing
02/05/2011 - V6C - To use with 05012011 or newer CM7 build only
- Small update to merge with 2.3.4 source, no new feature.
02/05/2011 - V6C² - To use with 05012011 or newer CM7 build only
- Update to repair Voodoo Sound conflicts from 2.3.4 merge.
- Back to 1.44GHz max to prepare 1.5GHz return​
V5
19/04/2011 - V5A - Initial release
21/04/2011 - V5B :
- GPU overclock on 1.3 GHz added (217MHz / +8.5% from default)
- New PMEM settings for more available RAM compared to V5A (now 328MB)
- Stability fixes for all frequencies, needing globally less volts. Results may vary depending on the device
- Switched to Conservative governor by default (still switchable by app). It can feel less responsive coming from idle but more battery saving, and plays better with high frequencies.
- New voltage table. Default settings should be stabler for most devices.
- Switched to 4.4.3 toolchain for added stability on some sensitive devices
Captivate and Vibrant support will come later. It will need more time than expected.
21/04/2011 - V5C : Small update to fix a bootloop issue on some devices.​
F.A.Q.
Because I got tired of answering these same things 100's of times.
1) Where can I find the latest beta?
They are always in the OP. They are also in my signature, and the root of the FTP.
2) Where is the root of the FTP you ask?
Good question! It’s in the OP as well.
3) How do I install this? / I'm having problems installing
Reboot into recovery
Install zip from SDcard
Choose zip from SDcard
Navigate to the zip you downloaded.
4)What is Leakage (LL,ML,HL) and what one should i use?
Easy explanation: start with HL. If it allows you to OC how much you want, stay there. If not, move down until you get what you want.
For people who want more: Well, we made different leakages because koflem couldn’t OC, and he felt left out, so he started compiling on his own, which gave Tk-Glitch the idea to make three different versions. They have to do with the differences in different phones. Take for example different phones run better with different OC/UV. The leakages are the same way. They adjust the int voltages, which is something not configureable (yet) in userspace, so we have to configure them that way when we build. That way both the voltages that you are used to (the ones controllable via voltage control) are tailored to your device, as is the int voltages (the ones only we can do). Most people have no idea, but there are dozens of variables that we play with to make so that all of you can OC and UV as much as possible with as much stability as possible. Some aren't device specific, some are. We are trying to make the best experience possible for a wide range in chip quality, therefore we make different leakages, as well as making the kernel configurable via voltage control. From a stability/performance standpoint, and by extension standpoint, there is only one leakage right for your device. Different leakages aren't better in some ways for you and worse in others, there is only one good one for your device. Sorry if that didn't make sense, I tried to make it as informative as possible without it being overwhelming.
5) Does this work with Gingerbread bootloaders?
Yes
6) What ROM does this kernel work on?
For sure: CM7. Other CM7 based ROM’s may work, but I can’t offer you much support. If it works on CM7, that’s my goal. This WILL NOT work on Samsung based ROM’s, and I won’t port it. If you still don’t know what ROM this will work on, then you should read a lot more.
7) How do I enable BLN?
Download either BLN here: https://market.android.com/details?id=neldar.bln.control.free&feature=search_result Or Blinky here: https://market.android.com/details?id=com.kin.blinky&feature=search_result
8) How do I overclock?
Xan’s Voltage Control App here: https://market.android.com/details?id=com.darekxan.voltagecontrol&feature=search_result . READ THIS GUIDE FIRST: http://forum.xda-developers.com/showthread.php?t=1036020 If you break something while Overclocking, I won’t provide much support. Overclocking is awesome, but very variable across devices. We try and make a stable experience for everyone, but it is not guaranteed. If it breaks, I didn’t do it. If it makes your phone fly, I did it.
9) Can I be a beta tester?
Probably not. Unless you do something to make me like you a lot (cough strictlyrude27 cough), then you can’t have betas. The reason being they are unstable usually, and I already have a big enough team that I can get the information I need.
10) Why does my screen look ugly? / How do I change the screen color?
Go grab voodoo control from the market here: https://market.android.com/details?id=org.projectvoodoo.controlapp&feature=search_result , then play with the sliders until you like what you see. If you get really stumped, here are some values that people tend to like. They are from zacharais.maladroit.
Screen RGB multipliers:
- Red: 321*
- Green: 321*
- Blue: 429*
Screen v1 gamma hack:
- use Alt. settings
- or if you prefer others - use: "Reset to 2.3.3 defaults", "Punchy settings" (punchy could lead to a great screen while locking the screen and having "screen off" animation disabled)
1)Color Profiles: Voodoo Profile V1
2) Screen v1 gamma hack :
- 50 red
- 53 green
- 44 blue
3) RGB multipliers:
Red ="2300875360"
Green ="2300875360"
Blue ="2709919680"
11) The backlights on my soft keys stay on all the time. Why is that?
Honestly, because I haven’t spent the time to “fix” it. They aren’t that bright, so people can stand it for a little while. I didn’t intentionally make it that way, it happened when we switched back to BLN instead of LED notifications. We made that switch because I like Blinky, and I get to pick until Tk-Glitch is back, or I am convinced otherwise.
12) I’m getting bootloops, why?
Well, the most common issue is that you have mismatched ROM’s and kernel’s. You need the latest ROM for your device, and the V12B3 kernel for your device. For where to find that, see above. The next is various scripts and “fixes” that you flash after/before the kernel. Reflash the nightly for your ROM, then the kernel. Let it boot. If it works and didn’t with the various other zips you may use, then don’t use those zips.
13) WHEN IS THE NEW VERSION OUT?
First Rule of Cyanogenmod... I'm allergic to ETAs so I try to stay away from them if at all possible. Causes all kinds of nasty problems they do....
14) How do I use the 90_callvolume script?
Download it here:
neh4pres wrote these instructions, if clarification is needed just ask.
There are many ways to apply this patch. But for these instructions i will be using root explorer because it has all the utilities needed.
After downloading, use root explorer to extract 90call_vol from the .zip. this will place 90call_vol in the extracted folder of your sd card. Long press and copy that file and paste it in the /etc/init.d folder. Once it pastes long press the file and open with text editor.
In call boost.. only change the final number in the line you want to adjust and keep that number between 0 and 3
INCALL_BOOST_EARPIECE=2
INCALL_BOOST_BLUETOOTH=2
INCALL_BOOST_SPEAKER=2
INCALL_BOOST_HEADPHONE=2
Mic gain only change the final number in the line you want to adjust and keep that number between 0-31
MIC_GAIN_EARPIECE=19
MIC_GAIN_SPEAKER=31
MIC_GAIN_HEADPHONE=29
MIC_GAIN_HEADPHONE_NO_MIC=18
Save changes when exiting and the editor will append the original file with a .BAK . You can use 90call_vol.bak to revert back one save. If you change multiple times and want to go to stock you can use the 90call_vol in /sdcard/extracted.
15) Is the GPU overclocked?
Yes. Can you control it? No. That code hasn't ever worked, and we don't really expect it to. The GPU is so overclocked at 1.5 Ghz that if it went any higher the memory would get corrupted and really bad things happen.
Nice work sixstringsg for maintaining a captivate thread for this kernel!
..also 10 pts for 1st reply!
Coreym said:
Nice work sixstringsg for maintaining a captivate thread for this kernel!
..also 10 pts for 1st reply!
Click to expand...
Click to collapse
Thanks! Now we just need to get more people on it
Sent from my CM7 powered captivate
20pts for third reply....I was fashionably late!
So maybe I just can't read , but does this have LED notifications, or did they get taken out when they were taken out of CM?
ls377 said:
So maybe I just can't read , but does this have LED notifications, or did they get taken out when they were taken out of CM?
Click to expand...
Click to collapse
This kernel has them.
Sent from my CM7 powered captivate
about time we got our own thread for this....i will still hang over on i9000 though....lol
o yeah 6th post......haha
I won't be here much, but it's good to have a thread in there. It'll clean the i9000 thread a bit and will help users to find the kernel for their own device.
Thanks for the help sixstringsg
Hi guys, just wondering if anyone is having issues losing signal after flashing a different kernel with the latest release of CM7?
is the latest miui release, 1.6.3, compatible with 10b?
cumanzor said:
Hi guys, just wondering if anyone is having issues losing signal after flashing a different kernel with the latest release of CM7?
Click to expand...
Click to collapse
I actually haven't tried. Try swapping out the modem.bin from whatever modem you want. Been using trusty ole JK4.
Sent from my SGH-I897 using XDA Premium App
where can i get the cpu scaling scripts agian?
SpaceKebab said:
is the latest miui release, 1.6.3, compatible with 10b?
Click to expand...
Click to collapse
No, you need to use v9.
A captivate version of 10 for miui would be special, but thank you for your great kernel
Sent from my GT-I9000 using XDA Premium App
Ignore post
sixstringsg said:
Actually, there isn't an miui kernel for captivate. Just i9000.
Sent from my CM7 powered captivate
Click to expand...
Click to collapse
V9 captivate works on miui.
Sent from my GT-I9000 using XDA Premium App
bam! what's on here? any points for super late reply?
sixstringsg said:
Actually, there isn't an miui kernel for captivate. Just i9000.
Sent from my CM7 powered captivate
Click to expand...
Click to collapse
ok. so i just noticed that Glitch isn't running this thread. weird. i also just noticed that you need to study a little bit of what Glitch is doing in order to run this thread properly so that you don't give out false information to others about his kernels. i'm running glitch V9 right now as i'm typing this to you. and i've run another version of his kernels also. SO yes there is a miui kernel for captivate. there are several. not trying to be rude at all but you may throw someone thats newer to flashing kernels off and not allow them to enjoy these kernels Glitch is putting out. the more people who use these kernels the more feedback= better kernels.

[KERNEL]05.12.2011 test-kernels [CM7/MIUI] platypus;SECURITY,VOODOO,OC/UV,nodebug,...

I'M A SUPPORTER OF BRINGING OFFICIAL ICS TO THE VIBRANT AND OTHER GALAXY S DEVICES!
> CLICK HERE FOR MORE INFORMATION <​
Click to expand...
Click to collapse
CAPTIVATE edition of the Platypus Revolutions kernel
This Project is inactive/low activity for a longer period of time
Kernel
CM7 & MIUI only
NEO series
(since May 24th '11)
Do you want to discuss on this kernel, get the news on the current state of development, or test kernels even fresher than fresh ?
connect via webchat from your browser:
http://webchat.quakenet.org/
and join #platypus-kernel
(recommended)
Fire up your IRC client, and join via client
the server (for now is) : irc.quakenet.org
port : 6667
Channel : #platypus-kernel​
(thanks to Tk for the layout idea )
before you ask for any ETAs:
The first rule of CyanogenMod [and this project]: DO NOT ASK FOR AN ETA!
---------------------------------------------------------------------------------------
First step before install & kernel switch:
Always have this cleaning script on your internal SD card ready
If you're
- switching kernels,
- have issues with auto-rotation,
- the cam,
- bootloops
- want to remove init script
- recover from a failed overclock attempt
please give either:
- lippol94's updated cleaning script (apply via CWM recovery): http://www.multiupload.com/XFH1GCK4MB
or
- WiwiPouPou's SYSTEM CLEANER SCRIPT (also apply via CWM recovery): (http://forum.xda-developers.com/showpost.php?p=14805606&postcount=21739)
a try
the kernel already applies some cleaning steps during install but sometimes that's not enough ...
---------------------------------------------------------------------------------------
Introduction:
Hi guys,
this is my first modded kernel for the SGS (CM7/MIUI only)
I first needed to test it to make sure that it'll be stable & boot at the first place
so far it's very fast & responsive & smooth
This thread shall serve as the center for my testing kernels (stability & functionality-wise)
DISCLAIMER: the kernel (binary) and driver modules are provided as is. If problems occcur they most probably are from upstream and can be fixed with the newest version. Since I'm doing this in my free spare time as a hobby (quenching my thirst for tweaks & performance) updates will occur irregularly as time permits and I see fit (most probably when new features & bugfixes arrive). YOU are responsible for the actions that you take (such as over- or underclocking), etc. You agree that I can not be held liable for any potential damage that arises from your actions in combination with or the usage of this kernel and other related parts.
Kudos:
* Google, Andy Rubin & the whole Android crew
* Linus Torvalds & the kernel hackers for upstream Linux
* cyanogen & all the devs out there hacking on this
* Supercurio for enriching our media experience of this smartphone
* codeworkx, coolya, guiper, atinm - the whole teamhacksung|cmsgsteam crew and all other hackers working on CM7
* laststufo, hardcore, nikademus, existz and all the other kernel hackers on the SGS forum
* zen-kernel team for inspiration to create a kernel, too
* all other contributors (devs, users, etc.) who make this possible
The purpose of these kernels is extensive stability testing addressing the following sticking points:
- overall stability & functioning of the kernel and phone
- call drops, missed calls, etc.
- lags (suggestions for improvements are welcome)
- auto-rotation, sensors, etc.
- Voodoo Control Plus [any crashes ? compatibility problems ?]
- working on CM7 or MIUI ?
- scheduler, sound, video synchronisation & lags: Tap Tap Revenge 4 (especially at the beginning of songs)
- scheduler, sound, video synchronisation and any other issues: doodle dash (while shooting & sound activated)
- proper pmem memory layout & settings: proper functioning of Google Googles
for those who love SAUCE (Source):
old source:
ALL MY SAUCE for QUORRA KernalZ ^^
new source:
android_kernel_samsung_aries
(fork and 1:1 update to upstream kernel source - changes in different branches)
(latest changes sometimes might not be in [yet] but in the whole repo everything should be available)
current UV & OC stable values:
Recommended apps for OC/UV:
- Pimp my CPU (also available here on XDA for those who don't have a credit card, etc.)
- Xan's VoltageControl
on stability testing:
http://forum.xda-developers.com/showpost.php?p=13255871&postcount=5
(start with "Q: I'm new in OC/OV operations so please could you explain to me how to set it in the best way?")
the following OC/UV values are only applicable for kernels with the old OC/UV implementation (max. 1.3 GHz)
my current UV (undervolt) stable Values :
old OC/UV implementation (morfic, bilboa1/kang, TheEscapist):
1300000 0 (haven't tested 1.3 GHz much yet)
1200000 -25
1000000 -50
800000 -75
600000 -100
400000 -100
200000 -125
100000 -150
edit:
1200000 -50
1000000 -75
800000 -75
600000 -225
400000 -125
200000 -150
100000 -175
thanks jetcz !
new OC/UV implementation (morfic, bilboa1/kang, TheEscapist - Tk-Glitch):
Tk-Glitch said:
Note that these UV settings will be unstable on many devices. It's only informative.
1600 MHz - 1.500v / -> That's high and many devices will fail on this frequency. Find working UV for you if any.
1500 MHz - 1.500v / -> That's high and many devices will fail on this frequency. Find working UV for you if any.
1440 MHz - 1.475v / -75mv
1400 MHz - 1.450v / -75mv
1300 MHz - 1.400v / -75mv
1200 MHz - 1.350v / -75mv
1000 MHz - 1.250v / -50mv - If you have stability issues, try to let this one by default.
800 MHz - 1.200v / -75mv
400 MHz - 1.050v / -100mv
200 MHz - 0.950v / -150mv
100 MHz - 0.950v / -200mv - (can be very different between two devices)
More volts is not always equal to more stability. Try to add more UV (less volts) if the frequency you're trying to achieve is unstable.
Considering all phones will respond differently to OC/UV, to tweak the values to suit your device will be required.
By default, no overclock/undervolt is applied. You'll need to use one of the tools below to adjust the frequencies and voltages.
Note : Never ever use SetCPU with this kernel. You could encounter many stability problems like random reboots or bootloops.
Click to expand...
Click to collapse
3D performance and games:
recommended apps:
[root] Chainfire3D
1st backup post (kernels)
Kernels:
kernels are listed in descending order
older -> newer (newest at the bottom - for now)
officially declared new stable kernels will be up soon !
for now please go to the IRC channel (1st post to get the newest test-builds)
NEO 17 -r12 codename: Butterfly
http://forum.xda-developers.com/showpost.php?p=17339783&postcount=21
NEO 17 -r18 codename: Butterfly
http://forum.xda-developers.com/showpost.php?p=18268518&postcount=132
NEO 18-update1 codename: funky fish
NEO XX.1-update1 codename: mighty rhino
http://forum.xda-developers.com/showpost.php?p=19999998&postcount=192
ALL USERS MUST UPDATE (this fixes yet another potential data loss trigger)
2nd backup post (Changelogs)
Changelog list:
obsolete right now
3rd backup post (modems list)
modems:
Description:
Modems play a crucial role in how much battery drains in standy.
e.g. if you have a good signal area and the modem still has high
"Time without a signal" indicator under Cell standby you still will get bad standby time
make sure you have little to no "Time without a signal" in Cell standby
there also somewhat seems to be a connection between "Time without a signal" and high "Android OS" number in battery use (!)
Following modems are only compatible with new radio (modem) partition layout:
radio-cm-7-GalaxyS-JVP-signed.zip (4.29 MB)
md5sum: fb38dbf82daf0720fd2328f5f649013e radio-cm-7-GalaxyS-JVP-signed.zip
For more modems & bootloaders please go to siky_dude's Modem Thread:
[CM7/MIUI][28.08.11] Modems + Bootloaders(MD5)
[SGS / i9000 Thread so some frequencies might be missing, e.g. 850 MHz]
for more modems please refer to a modem thread in the Captivate Forums section
4th backup post (results)
Results & FAQ/Documentation
Results:
(04/27/2011) Results for platypus-kernel_20110427_18_quorra_r1:
- broken auto-rotation & sensors for some [insert ROM (CM7 ? MIUI ?)]
- stable
(05/03/2011) Results for CM7_SGS_platypus-kernel_20110503_17_quorra-r4_exp
- high battery drain, either due to kernel config or optimization flags, fixed with >= quorra r5 (2nd update)
FAQ / Documentation
@bootloop / boot post victims ^^
Hi guys,
could you please try to replace the existing kernel on your MIUI or CM7 nightly CWM-Package with my kernel, modules and its scripts ?
then install that updated package (with the new kernel, modules and scripts)
after that all should work
the bootloops seem to be an issue with bml_over_mtd (broken sectors on the SSD on your phone)
I'll investigate this and see if anything needs to be rewritten and/or updated in that regard
Thanks !
Overclocking / Undervolting:
Q: I'm new in OC/OV operations so please could you explain to me how to set it in the best way?
A: start with -50 mV (delta from default value) other values probably are too low
my testing includes:
- Angry Birds Rio (several missions)
- Gun Bros (for some time)
- mp3 playback, (flac playback - optional)
- surfing the web via browser, opening up bit.ly links from cmsgsteam twitter feed
- watching youtube video
- watching video via rockplayer lite or mobo video player
- running benchmarks (Smartbench 2011, quadrant standard, an3dbenchXL, anTutuBench)
- Labyrinth Lite (for gravity sensor), auto-rotation (also for sensor)
when 1 GHz (1,2 or 1,3) is OK - go lower with undervolt value (e.g. -75 mV)
after it gets un-stable - go back to last known stable value
then you can limit max frequency to lower one, e.g. 800 MHz
and repeat testing for that frequency
for more info: checkout shaolin95's Mini Overclocking Guide:
Link: http://forum.xda-developers.com/showthread.php?p=12910471#post12910471
LED Support FAQ
Q: Do LED notification require an app, such as BLN, etc ?
A: No. It uses Android's and Cyanogen settings, other apps are not required, although some that are designed for regular LEDs may work.
Q: How to I turn off LED notifications, scheduled or/and complete turn off?
A: Use Cyanogen's Quiet Hours feature (settings>cyanogen>sound>quiet hours) and check "Dim the LEDs during quiet hours" (in reality it will turn them off on the SGS). If you schedule a complete day, then LED notifications will be off all the time.
Q: How do I setup per app, find other LED settings etc?
A: Settings>cyanogen>interface>LED notifications
Q: What to do with LED color settings?
A: We have only one color, so that doesn't work. Use Green as default setting. Some non-bright colors turn off notification, as it's the equivalent as diming LEDs (note that on real LEDs if you dim them too much they look like off too anyway, the difference is that it's gradual. On the SGS the LEDs can be only on or off, not gradual)
Q: How can I troubleshot my system, I can use ADB but...
A: adb logcat | grep lights (on linux) will show you Android requests to turn LED on or off. "status" tells you what we decide will be interpreted as "turn LED on" (1= on, 0 = off)
adb shell cat /proc/kmsg for live view (or adb shell dmesg if you're using adb after the issues occurs - careful the backlog is limited in size so don't be too slow)
notify_led_on and notify_led_off are requests to the kernel to turn LED on or off.
touch key write/read errors (cypress) are non-fatal failures to ask the touch key to do something (eg lit up the LED), when the hardware goes crazy or there's a logical error in the code (can be both)
touch key recovery routine or "stopped responding" are either hardware errors, either a logical error where the driver would try to write something the touchkey doesnt understand. in some occasion lock&unlock fix those as a work around, of course a permanent fix is required
Voodoo Color settings:
Q: I don't have that nice ice-ish white color on my screen anymore - you suck !
Q: my screen looks like someone pissed on the screen - you suck !
(sorry for the language ^^)
A: I love you too ^^
download Voodoo Control or Voodoo Control Plus
Screen RGB multipliers:
- Red: 321*
- Green: 321*
- Blue: 429*
Screen v1 gamma hack:
- use Alt. settings
- or if you prefer others - use: "Reset to 2.3.3 defaults", "Punchy settings" (punchy could lead to a great screen while locking the screen and having "screen off" animation disabled)
other recommended settings:
Also a lil tip for people who use voodoo color!
1 )Color Profiles: Voodoo Profile V1
2 ) Screen v1 gamma hack :
- 50 red
- 53 green
- 44 blue
3 ) SRB multipliers:
Red ="2300875360"
Green ="2300875360"
Blue ="2709919680"
With those adjustment, black colors are BLACK and white colors are WHITE. Everyone should try this.
Click to expand...
Click to collapse
SGS CM7 nightlies wiki
http://sgscm7nightlies.pbworks.com/w/page/41483487/FrontPage
Android OS bug, :
(thanks to ceriko ! and his awesome guide for DarkyROM 10.1)
If your battery drains very fast and your battery stats mentions Android OS above 10%, often between 40 and 60%, sometimes more, this is the best to do as far as I know:
- Remove the 2/3 system files as per the beginning part of this guideguide about batterie issues.
- Install WatchDog and open (I set it to "moderate", then I close it, that's all), this app will warn you whenever an app or a process miss-behaves by draining the battery excessively. It will not fix it but just flag it and you will see a notification.
- Reboot usually stops the drain for a while until it naturally comes back, so reboot whenever you see Android OS above 10% and rising or after you see WatchDog mentioning "Suspend" process using too much battery (the suspend process hanging is the Android OS bug).
- Some apps trigger it, most common are Gameloft games (blame Samsung, not the games/apps). No need to use apps or games for this drain to happen, it also happens straight after boot once phone has been fully charged.
This bug can not be fixed by anyone but Samsung. Some never see it, some will experience it everyday no matters what they do... It's just annoying and unfair but that's the same on all Gingerbread releases by Samsung (JVK, JVB, JVO, JVH). Apparently even the SGS2 has this...
screenstate scaling aka my governor won't change after screen locked:
So what is this all about ?
it's an init script that is put in to /system/etc/init.d
and switches between the configured governors in the script
depending on whether the screen is on (AWAKE_GOVERNOR) or off (SLEEP_GOVERNOR)
in most cases your phone is off - in that case it would be good to use a governor which doesn't fire up the cpu frequency too fast since you don't need it (no GUI, smooth scrolling, etc. needed while the screen is off - lol),
so conservative governor is set
when using the phone (screen on) it really depends on what you want to do: e.g. latency & smoothness is crucial: try smartass2, smartass, ondemand;
you're mainly browsing & reading stuff: try ondemandb, conservative (the screen is already burning enough battery so you don't need another component burning yet more)
only use one governor at a time
e.g.
AWAKE_GOVERNOR
# AWAKE_GOVERNOR
# AWAKE_GOVERNOR
SLEEP_GOVERNOR
# SLEEP_GOVERNOR
# SLEEP_GOVERNOR
that means lines with "#" are commented out and not used by the script
e.g.
# AWAKE_GOVERNOR
AWAKE_GOVERNOR
# AWAKE_GOVERNOR
SLEEP_GOVERNOR
# SLEEP_GOVERNOR
# SLEEP_GOVERNOR
also would work (intentionally not filled in any governors)
@all:
Neo 17 r10 is available on IRC !
Changelog said:
NEO 17 (r10 - codename Butterfly) changelog [SGS/Telus, Captivate, Vibrant]
Changes (from r9 - 2nd testbuild):
• bumped RAM up to 348 MB (everything should still work, incl. Youtube HD recording)
• ported over smartass2 governor (super-smooth & battery-efficient, hopefully no issues anymore with getting stuck on high frequencies - unless due to system & broken apps)
• back to cm7 vanilla/stock yaffs2 driver - let's see if this fixes the discouraged random resets for few people (loss of contacts, apps gone, etc.)
Click to expand...
Click to collapse
Wow! New thread finally!
I'm testing with the Neo 17 R10 Kernel now.
Thanks!
Woohoo!
Sent from the frozen tundra known as Canada.
Spectacular. Gave it a shot from r7 and loving it since. Looking forward to future updates.
And about time for your own thread!
Sent from my I897 using Tapatalk
Thanks for the awesome kernels, they always work great, and I always look forward to the progression of this kernel. Thanks again for all your hard work, you are very talented.
Sent from my I897 using XDA App
I'm loving it as well, I don't oc much, maybe uv a little, and I do like the vc. Great work.
Sent from the frozen tundra known as Canada.
Thanks zach, r11 + smartassV2 is really super-smooth! You are doing an amazing job.
No problems so far, I got my last SOD on r9.
So on Neo 17 v11 what is set for governor(not showing in pimp)?? I got confused when reading the whole thing. Plus did you say it won't change from awake governor to sleep governor with the screen off? If so how do I make it so it does?? I don't see a screenstate scaling in root exploring under the right location. I have in the past but.can't now.
Sent from my I897 using XDA App
buresh.kevin said:
So on Neo 17 v11 what is set for governor(not showing in pimp)?? I got confused when reading the whole thing. Plus did you say it won't change from awake governor to sleep governor with the screen off? If so how do I make it so it does?? I don't see a screenstate scaling in root exploring under the right location. I have in the past but.can't now.
Sent from my I897 using XDA App
Click to expand...
Click to collapse
Uninstall Pimp My CPU.
Delete the Pimp My CPU folder in your SD Card.
Reflash the Neo 17 R11 Kernel and the V51 Script again.
Install back Pimp My CPU.
OK, you'll see the Governor and Scheduler which already been set by Neo 17 R11 Kernela and the V51 Script.
the new platypus 17r11 is superfast, my CAPPY felt great with it
thanks Zach
hope the color issue soon to be fix since i like to customize the color temp
Fate-Silver said:
Uninstall Pimp My CPU.
Delete the Pimp My CPU folder in your SD Card.
Reflash the Neo 17 R11 Kernel and the V51 Script again.
Install back Pimp My CPU.
OK, you'll see the Governor and Scheduler which already been set by Neo 17 R11 Kernela and the V51 Script.
Click to expand...
Click to collapse
Did you have this problem as well?? ha! I found the V51 Script, I think!
I tried to change awake governor but it's not showing in Pimp my Cpu. I rebooted, tried deleting & installing it again but no luck.
I edited the script with text editor from Root Explorer, put # infront of ondemandb, and took # from smartass2. Rebooted but pimp my cpu is showing ondemandb.
hi. can you flash this using the orange cwm that comes with cm7?
yuhenyo said:
hi. can you flash this using the orange cwm that comes with cm7?
Click to expand...
Click to collapse
Yes you can.
Sent from my I897 using Tapatalk
simple man said:
Yes you can.
Sent from my I897 using Tapatalk
Click to expand...
Click to collapse
awesome! can't wait to flash this. So is the download link in the other thread? I can't seem to find it on this one. or is it?
yuhenyo said:
awesome! can't wait to flash this. So is the download link in the other thread? I can't seem to find it on this one. or is it?
Click to expand...
Click to collapse
http://webchat.quakenet.org/
The instructions are in the O.P., but you'll need to login, download the file, extract the unpack_me.zip pick the kernel of your choice, download the kernel cleaning script 1st page this thread,flash it, then your kernel, then the screen state script.
Sent from my I897 using Tapatalk

Phone slow after root

I rooted and am running tek s ROM. The phone has been super laggy and slow since I flashed that ROM. Any advice.
Have you switched the governor to interactive or on-demand? That's the most important piece. The below link has a bunch of tips (universal to qualcomm/US S7 and S7e) to improve performance.
http://forum.xda-developers.com/ver...-to-notes-root-install-xposed-unroot-t3411039
pitbullmommy45245 said:
I rooted and am running tek s ROM. The phone has been super laggy and slow since I flashed that ROM. Any advice.
Click to expand...
Click to collapse
Check the thread under Guides about common problems and fixes.
I did but I didn't see a fix for this. I did what another member told me to do and it worked.
pitbullmommy45245 said:
I did but I didn't see a fix for this. I did what another member told me to do and it worked.
Click to expand...
Click to collapse
Bug #1: Phone is laggy after rooting the phone/Battery is down the tank.
Fix: The phone is (partially) lagging because the ENG bootloader automatically sets the CPU governor to "Performance." While this is supposed to lock the CPU frequency at the maximum values, it does cause a lot of heat and possibly throttling. Additionally, the max core clocks are set to 1.593Ghz instead of their actual maximums. Not every CPU Tuner will allow you to set the big cores separately, so look around for one that does if you don't want to use Kernel Toolkit.
First, use Flashify to flash one of two zips provided by psouza4 on our sister Verizon Galaxy S7 (Edge) threads.
1. Kernel fixes & tweaks V15
2. Kernel fixes, tweaks, & Debloater
You need only flash one of these two zips. One additionally debloats the system, one does not. Choose whichever suits your needs.
What the zips do:
CLICK TO SHOW CONTENT
Next, install a CPU Tuner utility like Kernel Toolkit, then change the governor from "Performance" to "Interactive." Also change the max CPU frequency of the little cores to 1.593Ghz and the big cores to 2.150Ghz while you're at it. Leave the cores at their default minimum frequency. This will go a long way to improving the speed of the phone. Also make sure you that have the new settings to apply on boot. Every kernel manager should have this option somewhere.
Note: Although the max frequency in the settings screen will drop to some number, as long as you can see the CPU ramp up to the new settings in the information screen, then everything is fine. You can test the max frequency by turning the screen off and then back on.
Then, install sEFix and set entropy to "Ultra."
Lastly, install L Speed and:
Code:
-Main Tweaks: Turn on
-Battery Improvement
-OOM Killer
-Kernel Tweaks - "Light"
-CPU Tuner: Turn on
-CPU Optimizer
-LNET Optimizer: Turn on
-Google DNS
-Faster Streaming
-Faster Dormancy
-IO Tweaks: Turn on
-IO Boost
-Partition Remount
-RAM Manager
-Balanced
-Seeder
-Moderate
Literally the first bug and fix on the guide.

[Kernel][3.4.113] Chrono Kernel R5.10

Custom kernel for Samsung Galaxy S Advance
Code:
/*
* Your (probably expired) 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. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! 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.
*/
Features:
Universal kernel for JB, KK, LP and MM-based ROMs
CPU, GPU and DDR OC support
more governors and I/O schedulers
Lite kernel - some kernel features moved as modules
F2FS support
ABB-charger tweaks
many others features and tweaks...
Credits:
@dh.harald and @hafidzduddin for contribution on U8500 platform sources
@ Team Canjica for a base for this kernel
@ Nova Fusion for F2FS implementation
@zwliew for contribution on TC kernel
@cocafe for LiveOPP, GPU OC, abbamp and abb-charger tweaks and many cool patches which I've used from his kernel
@faux123 for dynamic Fsync implementation
@Christopher83 for dynamic management of dirty page writebacks implementation
@KINGbabasula for contribution on TC kernel sources
@boype for SIOPlus tweaks and OndemandPlus governor
@Adi_Pat for abbamp, kernel tweaks
@PolishVodka for initramfs scripts for 4.2.x and 5.0.x
@Rox for help in fixing initramfs scripts for 4.1.2
@ace2nutzer for optimization CPU OC and for whatever scripts which I have used in my kernel
@Meticulus for BLN, Sweep2wake and Doubletap2wake
@mkaluza for huge LiveOPP/Mali improvements and Dynamic governor
@yanpol199 for help with F2FS support in TWRP
@ all users who tests this kernel and directs the development along the right path
@ all those users, who I forgot to mention (PM me if so)
Team Win for TWRP recovery
Samsung for opening kernel source
Linus Torvalds for Linux sources
Special Thanks:
@isaak, @enkflr, @Pdevo, @prometej-zg for donating this phone!
[*]@S.AMU for providing FTP-Server
Source Code:
LK 3.10.y based releases
r5.7.x (LK 3.4.y based releases)
Installation:
Flash temporary kernel (if coming from other recoveries than TWRP 3.1.1)
Reboot recovery
Flash kernel zip
Compatibility:
I only add those ROMs that are confirmed to work by me or someone else:
Stock 4.1.2 ROM
LineageOS 11
CyanogenMod 13
Notice: this kernel is not compatible with NovathorSettings app, be sure to remove it before installing a kernel!
Download:
FTP
XDA:DevDB Information
Chrono Kernel, Kernel for the Samsung Galaxy S Advance I9070
Contributors
ChronoMonochrome, cocafe, faux123, zwliew, mkaluza, Meticulus, KINGbabasula, ace2nutzer, TeamCanjica
Source Code: https://github.com/ChronoMonochrome/Chrono_Kernel-1/commits/master
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: R5.7.1
Stable Release Date: 1974-11-11
Beta Release Date: 1974-11-11
Created 2018-03-09
Last Updated 2018-04-16
Changelogs and features
Changelog
R5.9.1
Resolved (hopefully) deepsleep issues *
Fixed touchkey not working issue **
* tested in about 24 hours so far with ~6 hours of deep sleep on UltimateROM 6.0.1 without any issues with wakelocks.
** It seems that in r5.9 was introduced a bug - touch keys weren't working (at least, on 6.0.1) after device wake up.
R5.9
Bring up all the latest CK code from Codina kernel
Fix a severe performance issue on r5.8.2 build
BLN is finally FIXED! *
* Apparently, issues with BLN were related to Janice touchkey driver that was putting the device to sleep (when the display is off) regardless of a BLN wakelock usage. Reverting this behavior seemed to enable BLN to work.
R5.8.2
In-kernel vibrator fix for Android 6.0+
R5.8.1
PowerHAL fixes for 4.4.4
Experimental fix for CPU governor issue on 4.4.4
LCDCLK: revert to TeamCanjica kernel implementation
R5.8
Memory management hugely improved (finally LMK works properly)
Fixed powersave interface on JB 4.1.2 stock
Experimental fixes to PowerHAL on 4.4.4
LiveOPP: merged changes from refresh kernel (removed some CPU freq steps)
Dynamic: adjust tunables (same like in refresh kernel)
Possible vibrator fix on 6.0+ (not tested)
(old changelog)
R5.7.1
Initial build for janice (kernel sources based on LineageOS 15.1 kernel for Codina)
Fixed bluetooth issue on 4.1.2
Squash-reverted GPU-related code logic from CPU governor Dynamic
J4FS module code cleanup
Reverted forcing minimum CPU freq to 800 MHz
Enabled CONFIG_CPUSETS (required by Android 6.0.x+ ROMs to function properly)
Kernel Tweaks:
(GPU/CPU undervolting and related tweaks)
Undervolting the CPU/GPU will bring battery savings but possible instability.
1) to undervolt CPU use ChronoKernel app or via init.d scripts:
Code:
echo *cpufreq* varm=xx > /sys/kernel/liveopp/arm_summary
for example, following sets voltage varm=0x10 for 200 MHz:
Code:
echo 200000 varm=0x10 > /sys/kernel/liveopp/arm_summary
or
Code:
echo 200000 varm-=10 > /sys/kernel/liveopp/arm_summary
(default varm voltage for 200 MHz is 0x1a but, code above sets 0x1a - 0xa(10) = 0x10 )
2) to undervolt GPU use init.d script:
Code:
echo x vape=yy > /sys/kernel/mali/mali_dvfs_config
Example:
Code:
echo 2 vape=0x1c > /sys/kernel/mali/mali_dvfs_config
"2" stands for DVFS idx (look at mali_boost_high/mali_boost_low).
To prevent overriding of such settings by ChronoKernel app, add line to your init.d script after GPU undervolting
Code:
chmod 444 /sys/kernel/mali/mali_dvfs_config
Don't change voltage of both GPU/CPU at the same time - otherwise if you'll get reboot if won't know what it caused. The same is for different frequencies - if you'll change voltage of too many steps you won't know which frequency caused reboot. It's not easy process, though, following method simplifies it: https://github.com/mkaluza/i9070_kernel_CoCore-E/wiki/Undervolting-janice .
3) Custom LiveOPP table.
By default some LiveOPP steps such as 100, 200, 500 ... MHz aren't used. You can re-enable those by following way:
Code:
echo 200000 enable=1 > /sys/kernel/liveopp/arm_summary
Or use CK app instead. Don't enable it unless it uses the same voltage as 400 MHz. The same is for the rest frequencies - until some of them uses same voltage, no point to enable steps with lower freq. I've added 100 MHz just to further make some tests with it once again. It can't use lower varm than 200 MHz - that's why it's disabled by default. Furthermore, not all phones well keep undervoltage, that's why 100-400 MHz steps uses same stock voltage varm=0x1a.
UPD. thanks to @borkins for this nice editor LiveOPP ARM steps: http://forum.xda-developers.com/showpost.php?p=60311291&postcount=2921
(CPU freq management tweaks)
CPU freq. limiter for screen OFF, adjust it via:
Code:
SYSFS=/sys/kernel/cpufreq/cpufreq_limits_on_suspend
echo min=100000 > $SYSFS
echo max=400000 > $SYSFS
echo on > $SYSFS
Too low frequency may cause freezes after wakeup and sound scrathes. If you use Dynamic govermor, it make no sense to use cpufreq limiter, because Dynamic already takes care about CPUfreq usage optimization. For more, read wiki.
Input boost
This feature has been originally written by zwliew.
Not all governors support input boost. Supported governors: ondemand, interactive, conservative, ZenX, lionheart and some others. Dynamic governor has its own boost interface.
Default boost frequency is 400 MHz.
Code:
echo 450000 > /sys/kernel/cpufreq/input_boost_freq # echo '0' to disable
echo 35 /sys/kernel/cpufreq/input_boost_ms
(BackLight Notification)
To configure time intervals of BLN blinking type(bln_ondelay stands for time of blink and bln_offdelay - delay between two blinks):
Code:
echo bln_ondelay=500 > /sys/kernel/bln/blink_mode
echo bln_offdelay=6000 > /sys/kernel/bln/blink_mode
Make sure BLN enabled:
Code:
echo 1 > /sys/class/misc/backlightnotification/enabled
# to enable bln_wakelock.
echo on > /sys/kernel/bln/bln_wakelock
Use /sys/devices/virtual/misc/backlightnotification/blink_mode to changes modes.
Blink modes:
0 = no blinking
1 = blink backlight only
2 = blink backlight + rear cam flash
3 = blink rear cam flash only
(Module autoload)
Now there is a simple way to load modules at boot. Just move needed modules to /system/lib/modules/autoload and reboot device(or execute /etc/init.d/00autoload)
(DDR overclock)
This feature has been developed by me and allows you to improve DDR and GPU performance. Please note, that DDR OC might work unstable and cause filesystem corruption. Though, DDR clock of 975 MHz has been highly tested and should work fairly stable on most devices.
Overclocking DDR over 975 MHz is highly NOT recommended, especially in case if you not sure that you can deal with possible consequences.
How to OC DDR:
1) by using
this script .
2) by using Terminal Emulator(in example below 975 MHz):
Code:
echo 0x5017f > /sys/kernel/liveopp/pllddr_oc_on_suspend
This setting will be applied right after disabling screen.
(Minimum APE/DDR OPP on screen on)
This feature has been developed by me and allows to set minimum APE/DDR OPP states which are used when screen is ON. APE controls many systems such as an image, video, audio system etc. DDR OPP determines performance of DDR. Default values are APE50 and DDR50. Lower states(APE25/DDR25) reduces power consumption, but may cause graphical glitches like screen blinking or filling it by vertical grey lines. If you don't have mentioned effects, it's recommended to use APE25/DDR25:
Code:
echo ddropp=25 > /sys/devices/pri_lcd_ws2401.0/mcde_screenon_opp
echo apeopp=25 > /sys/devices/pri_lcd_ws2401.0/mcde_screenon_opp
* if you don't have folder /sys/devices/pri_lcd_ws2401.0, use /sys/devices/pri_lcd_s6d27a1 instead.
(Screen refresh rate)
This feature has been developed by cocafe and modified by me. Lower lcdclk frequency cause less power usage, but too low values makes system unusable.
Following command allows to change screen refresh rate:
Code:
echo x > /sys/kernel/mcde/lcdclk
use
Code:
cat /sys/kernel/mcde/lcdclk
to see supported lcdclk modes. Default mode is 60 Hz which is recommended in most typical cases. If you've screen tearings, blinking etc. change resresh rate mode to "60+ Hz":
Code:
echo 0 > /sys/kernel/mcde/lcdclk
(ABB charger tweaks)
added tweakable interfaces for termination current. To adjust it type(just an example):
Code:
echo 90 > /sys/kernel/abb-chargalg/termination_curr_1st
echo 70 > /sys/kernel/abb-chargalg/termination_curr_2nd
curr_2nd should be less or same as curr_1st. Lower values prolongs battery lifetime, but also slows battery charging.
Default values are curr_1st == curr_2nd == 150 mA. Please note, too low values maybe aren't usable.
(Dynamic FSync)
This feature has been developed by Faux123 and allows to dynamically manage the synchronous writes performed on file system (FSync).
It uses asynchronous writes when the screen is on, instead of synchronous writes, to have better performance and a slightly lower battery drain, while when the screen is off the synchronous writes are re-enabled to flush all the outstanding writes and prevent possible data loss.
How to enable/disable the Dynamic FSync (default enabled):
1) By downloading and using Trickster MOD
2) By directly editing the file /sys/kernel/dyn_fsync/Dyn_fsync_active and setting 1 to enable the dynamic fsync, 0 to disable it (note that set value will be lost after a reboot/shutdown)
3) By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run this command to disable the dynamic fsync feature
Code:
su
echo 0 > /sys/kernel/dyn_fsync/Dyn_fsync_active
- Or run this command to re-enable the dynamic fsync feature
Code:
su
echo 1 > /sys/kernel/dyn_fsync/Dyn_fsync_active
Click to expand...
Click to collapse
(Software CRCs)
Disabling software CRCs gives you a slight bump(10-30% is what they say) of MMC performance, at the cost of a possibility of your Ace 2 freezing randomly.
Code:
echo 0 > /sys/module/mmc_core/parameters/use_spi_crc
Click to expand...
Click to collapse
(Dynamic dirty page writebacks)
This feature has been developed by Christopher83 and allows to dynamically manage the dirty page writebacks with two different intervals, one when the screen is on and another when the screen is off.
It is based on a commit of Francisco Franco, but instead of using hard coded values and of disabling at all the dirty page writebacks while the screen is on (possibility of data loss).
By using a higher interval we have better performance and less battery consumption, with a very low risk of data loss.
How to customize the dynamic dirty page writebacks feature (default disabled):
Three new procfs parameters are exposed inside /proc/sys/vm path:
- dynamic_dirty_writeback is the activation status of this feature, set 1 to enable it, set 0 to disable it and use the standard behaviour
- dirty_writeback_active_centisecs is the interval for the dirty page writebacks when the system is active (screen on), the default value is 1500 centisecs (15 seconds)
- dirty_writeback_suspend_centisecs is the interval for the dirty page writebacks when the system is suspended (screen off), the default value is 500 centisecs (5 seconds)
1) By directly editing one of the file written above inside /proc/sys/vm and setting the preferred value (note that set value will be lost after a reboot/shutdown)
2) By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run this command to disable the dynamic dirty page writebacks feature
Code:
echo 0 > /proc/sys/vm/dynamic_dirty_writeback
- Or run this command to re-enable the dynamic dirty page writebacks feature
Code:
echo 1 > /proc/sys/vm/dynamic_dirty_writeback
- Run this command to set customize the two intervals (30 seconds while the screen is on, 10 seconds when the screen is off)
Code:
echo "3000" > /proc/sys/vm/dirty_writeback_active_centisecs
echo "1000" > /proc/sys/vm/dirty_writeback_suspend_centisecs
(Tweak app)
ChronoKernel settings
Thanks mars_army for this app!
Bug reports:
after experiencing a random reboot, type in terminal:
Code:
su
cat /proc/last_kmsg > /storage/sdcard0/last_kmsg.txt
report it in the thread and attach the last_kmsg.txt
Misc
Storages switch
By default, this kernel comes with internal and external storages switched. You can revert this behavior, by changing the line
Code:
use_swap=1
to
Code:
use_swap=0
in file /ramdisk/fstab_specs.txt and flashing the kernel package. This setting will remain until you format /ramdisk partition.
@ChronoMonochrome
I tested "chrono_kernel_r5.7.1-test-40-g169a68f4f29d-janice.zip" on Lineage OS 11.
Result: I have the same hiccups in the youtube video like before.
I think that you can revert the LCDCLK frequency to the default 60 Hz value, because I didn't notice any significant difference.
And I had an isolated crash while I was navigating in settings.
My usual running apps & services are: Should I answer?, Nova Launcher, Tesla Unread, Google Play Services 11.9.75, Ginger Keyboard, Skype 7.46.0.596 (old version from apkmirror), Quickpic, Terminal Emulator, CCleaner, Google Play Store 9.0.15, Tubemate 3.0.11, My Vodafone, Naked Browser, Titanium Backup, Fx File Explorer, Gmail, Google News & Weather, MX Player.
I hope that these logs can help you.
isaak said:
@ChronoMonochrome
I tested "chrono_kernel_r5.7.1-test-40-g169a68f4f29d-janice.zip".
Result: I have the same hiccups in the youtube video like before.
I think that you can revert the LCDCLK frequency to the default 60 Hz value, because I didn't notice any significant difference.
And I had an isolated crash while I was navigating in settings.
My usual running apps & services are: Should I answer?, Nova Launcher, Tesla Unread, Google Play Services 11.9.75, Ginger Keyboard, Skype 7.46.0.596 (old version from apkmirror), Quickpic, Terminal Emulator, CCleaner, Google Play Store 9.0.15, Tubemate 3.0.11, My Vodafone.
I hope that these logs can help you.
Click to expand...
Click to collapse
Thanks for the report! Unfortunately, the last_kmsg log appears to be taken from MaxiCM kernel, so the crash isn't captured here. In the meantime I'll install some of those apps to test how it goes under increased memory pressure. Was /proc/meminfo log taken before or after reboot? It would be useful to check this sysfs interface when the phone is encountering laggs (if it does), but after reboot this info won't help. About lowmemorykiller changes: were apps running faster / slower? So far Youtube playback is the only issue or phone laggs too?
ChronoMonochrome said:
Thanks for the report! Unfortunately, the last_kmsg log appears to be taken from MaxiCM kernel, so the crash isn't captured here. In the meantime I'll install some of those apps to test how it goes under increased memory pressure. Was /proc/meminfo log taken before or after reboot? It would be useful to check this sysfs interface when the phone is encountering laggs (if it does), but after reboot this info won't help. About lowmemorykiller changes: were apps running faster / slower? So far Youtube playback is the only issue or phone laggs too?
Click to expand...
Click to collapse
/proc/meminfo log was taken before the reboot. Youtube playback is not the only issue. I can just say that the best way to reproduce a crash or a slowdown is switching from an app to another as quick as possible and/or try a cleaning with CCleaner. Ah, in that list I forgot some apps, so I've updated my previous post.
So far I've tested as much as possible on stock 4.1.2 rom and everything is working fine.
-Bluetooth is definitely fixed, working like a charm.
-CRC, FSYNC and other tweaks give me no issue at all and work good.
-Tested a bit of undervolting, firstly cpu, then gpu, and DDR OC, and here too, no problems.
-Really great the supension min and max cpufreq, tested it with some init.d scripts.
Overall stability and responsiveness of the system is impressive, really positive, you really made a big surprise
These instead are the few things I noticed not working, I think the first two are really not a major problem at all and maybe I am messing with something:
1. I have noticed that trying to set governor by init.d script doesn't seem to take effect and at boot completed I find performance setted as governor:
busybox echo dynamic > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor;
Click to expand...
Click to collapse
Running then the script manually set dynamic as governor correctly.
(SOLVED WITH A BUSYBOX CHMOD COMMAND BEFORE EVERY PARAMETER SET)
2. I tryed using exfat support, loaded fuse.ko and exfat.ko modules on boot, then used the same binary from cocafe twrp kernel I was using fine (and here I think there is the issue) with this command:
exfat-fuse /dev/block/mmcblk1p1 /storage/extSdCard;
Click to expand...
Click to collapse
Sdcard isn't recognized and android is asking to format it as usual.
3. I guess should be the number one: Recovery doesn't seem to work, tryed many times, also removing battery first, but I can't enter in recovery. Next time I flash kernel I will do it manually from terminal, or Universal Kernel Flash app
EDIT1:
I found that the path where lcd parameters are located would be:
/sys/kernel/s6e63m0/panel/lcd_clk
Click to expand...
Click to collapse
instead of:
/sys/kernel/mcde/lcdclk
Click to expand...
Click to collapse
EDIT2:
Seems like deepsleep is broken, because in my situation phone doesn't enter in deepsleep mode and having a look at /d/supsend_stats and d/suspend directory confirm my issue.
I found at first strange the absence of /d/cpuidle directory and so the deepest_state configuration file, like something is missing here.
EDIT3:
I think I found another last issue, BLN is not working, but I think could be again something to do with files and folder structure, for example I can't find:
/sys/class/misc/backlightnotification/enabled
Click to expand...
Click to collapse
Again, this is still something not so important tough
EDIT4:
I was experiencing before issues with phone calls, making phone app freezing and signal loss, going to "no service" mode. Had to flash backup kernel for now, tomorrow as I get some time again I will provide logs
Pdevo said:
So far I've tested as much as possible on stock 4.1.2 rom and everything is working fine.
-Bluetooth is definitely fixed, working like a charm.
-CRC, FSYNC and other tweaks give me no issue at all and work good.
-Tested a bit of undervolting, firstly cpu, then gpu, and DDR OC, and here too, no problems.
-Really great the supension min and max cpufreq, tested it with some init.d scripts.
Overall stability and responsiveness of the system is impressive, really positive, you really made a big surprise
Click to expand...
Click to collapse
Thanks for a review!
2. I tryed using exfat support, loaded fuse.ko and exfat.ko modules on boot, then used the same binary from cocafe twrp kernel I was using fine (and here I think there is the issue) with this command:
Sdcard isn't recognized and android is asking to format it as usual.
Click to expand...
Click to collapse
Honestly I didn't test exfat for a long time. These issues might come due to the filesystem driver updates. Anyway I need to test things myself before I'll have clues on how to fix it.
3. I guess should be the number one: Recovery doesn't seem to work, tryed many times, also removing battery first, but I can't enter in recovery. Next time I flash kernel I will do it manually from terminal, or Universal Kernel Flash app
Click to expand...
Click to collapse
Are you sure you have followed the installation guide to flash the kernel? Especially, using TWRP is required to flash a kernel (other recoveries aren't tested and can be a cause for a bugs) I was returning to a stock for a short time to test if bluetooth works and recovery was working for me when I was returning to UltimateROM 6.0.1 afterwards.
Don't use manual flashing or UKF app to flash the kernel! The installation method is quite complicated (compared to installation of other kernels), so a full and proper installation is only possible if you flash it from recovery.
EDIT1:
I found that the path where lcd parameters are located would be:
instead of:
Click to expand...
Click to collapse
I have moved the interface to match the implementation of LCDCLK management on codina.
EDIT2:
Seems like deepsleep is broken, because in my situation phone doesn't enter in deepsleep mode and having a look at /d/supsend_stats and d/suspend directory confirm my issue.
I found at first strange the absence of /d/cpuidle directory and so the deepest_state configuration file, like something is missing here.
Click to expand...
Click to collapse
This is entirely possible due to deepsleep driver changes in a kernel. I never tested if it works on stock, I guess I'll have to return to stock once again.
EDIT3:
I think I found another last issue, BLN is not working, but I think could be again something to do with files and folder structure, for example I can't find:
Again, this is still something not so important tough
Click to expand...
Click to collapse
I was thinking BLN isn't working on this phone at all, so I disabled the kernel support. Is the stock ROM only where BLN works?
Yes sir, I flashed your kernel exactly from twrp, coming from cocore refresh24, I referred to UKF or terminal emulator to say I would use that method now that I can't enter recovery mode, but I never use these ways at all, always from recovery, because I know that kernel come with scripts and other files that without recovery wouldn't be installed
Tomorrow I will do further testing
ChronoMonochrome said:
I was thinking BLN isn't working on this phone at all, so I disabled the kernel support. Is the stock ROM only where BLN works?
Click to expand...
Click to collapse
As far as I know no dev on Janice introduced BLN, but I don't see any reason why it shouldn't be technically possible if it works on Ace II.
Please don't give up on this unless you're sure at 100%.
@cocafe had it on his todo list, but at the end he didn't implement it for unknown reasons. I asked to him but he never explained it.
ChronoMonochrome said:
I was thinking BLN isn't working on this phone at all, so I disabled the kernel support. Is the stock ROM only where BLN works?
Click to expand...
Click to collapse
Until now, BLN never been working or supported on custom and stock roms, as said by @isaak, the reason behing that I think is properly known by developers such as cocafe.
Yesterday I made a little try using the commands you point in the thread, a little go, but in fact is not working. Would be a cool feature, but nothing so important at all for me, at least for now
UPDATE:
I flashed again the kernel, starting from freshly downloaded zip, and I got an infinite bootloop trying to get to recovery, the only way to go back working was flashing stock rom with odin.
I can now safely say there is an issue with recovery using the stock rom.
UPDATE 19:30
I took two logs, one for incoming call and one for outgoing call, reproducing the issue I was referring in previous post.
In the first case, incoming call, notification appear but scrolling to accept call make phone unusable and I could just shutdown it to solve the situation.
In the second case, outgoing call, after I start the call the phone app isn't responding, I see the notification widget but tapping on every possible button, to terminate call or enter in dialog, doesn't work and phone is very unstable until a sort of a timeout is running out and call stop itself.
Hi @ everyone!
Because of th numerous issues found with the current release, I'm starting to work on a fresh kernel sources (3.0.101), almost from scratch. My primary focus for now will be a multitasking, that is the main issue with the current release. Because of yet unknown root cause of the issue it could take a while to reveal it, but I hope to release a new build these days (and after playing with some kernel configuration find out more appropriate one for a multitasking). Stay tuned!
For sure we stay tuned!, thank you so much for the efforts and take all the time you need Chrono
isaak said:
My usual running apps & services are: Should I answer?, Nova Launcher, Tesla Unread, Google Play Services 11.9.75, Ginger Keyboard, Skype 7.46.0.596 (old version from apkmirror), Quickpic, Terminal Emulator, CCleaner, Google Play Store 9.0.15, Tubemate 3.0.11, My Vodafone, Naked Browser, Titanium Backup, Fx File Explorer, Gmail, Google News & Weather, MX Player.
I hope that these logs can help you.
Click to expand...
Click to collapse
I have set up all these apps about 10-12 days ago. I should say, removing CCleaner seemed to help a lot to increase the phone performance. It's doing a lot of background CPU and I/O work, making the phone almost unusable on r5.7.1 and severely affects performance on r4.1 / r4.6.
ChronoMonochrome said:
I have set up all these apps about 10-12 days ago. I should say, removing CCleaner seemed to help a lot to increase the phone performance. It's doing a lot of background CPU and I/O work, making the phone almost unusable on r5.7.1 and severely affects performance on r4.1 / r4.6.
Click to expand...
Click to collapse
The new CCleaner version is on the heavy side, so I had to freeze some background services with My Android Tools app. Anyway I've just uninstalled it definitively.
New build r5.8 is up!
R5.8
Memory management hugely improved (finally LMK works properly)
Fixed powersave interface on JB 4.1.2 stock
Experimental fixes to PowerHAL on 4.4.4
LiveOPP: merged changes from refresh kernel (removed some CPU freq steps)
Dynamic: adjust tunables (same like in refresh kernel)
Possible vibrator fix on 6.0+ (not tested)
ChronoMonochrome said:
R5.8
Memory management hugely improved (finally LMK works properly)
Fixed powersave interface on JB 4.1.2 stock
Experimental fixes to PowerHAL on 4.4.4
LiveOPP: merged changes from refresh kernel (removed some CPU freq steps)
Dynamic: adjust tunables (same like in refresh kernel)
Possible vibrator fix on 6.0+ (not tested)
Click to expand...
Click to collapse
I tried 5.8.5 and I have still issues with LineageOS 11:
1) I've got a screen flicker issue while I was browsing in Naked Browser with the new LCDCLK frequency.
Tried to set echo 1 > /sys/kernel/mcde/lcdclk, but I've noticed that this value is not kept after a reboot.
Very annoying, because I can't restore 60 Hz permanently.
2) There are still issues about some values not kept in the performance UI of Lineage Os.
For example:
- Try to set Zenx as governor, min. 200 max 1000, Noops scheduler. Reboot. Scheduler will be resetted to Deadline.
- There is still a bug with max clock value of Dynamic governor (I can reproduce it with ZenX governor too). I set it to 800 MHz, I go back to the settings screen, then I return to the Performance -> Processor section to check if the 800 MHz value is maintained. But the UI automatically restored the max clock to 1000 MHz without my consent.
For your information, these issues occur only randomly and with particular combinations. So, if you can't reproduce them, the best way is to set these, one at a time:
1) Zenx as governor, min. 200 max 800, Noops scheduler. Reboot.
2) Zenx as governor, min. 200 max 800, Fiops scheduler. Reboot.
2) Zenx as governor, min. 200 max 800, Sioplus scheduler. Reboot.
After the first, the second or the third reboot, some of these values you've set will change spontaneously on their own.
"Set on boot" options are correctly set for both Processor and I/O Scheduler.
And I keep "Enable per-app profiles" option turned off.
3) On the Performance UI, performance profile results automatically set on Balanced after any reboot. But if you cannot fix it, I can live with that, don't worry. It doesn't keep "Power save" or "Performance" profile between reboots.
PS: I would appreciate if you could update the installation steps in this thread with the same steps of the refresh topic:
Flash temporary kernel (if coming from other recoveries than TWRP 3.1.1)
Reboot recovery
Flash kernel zip
isaak said:
I tried 5.8.5 and I have still issues with LineageOS 11:
1) I've got a screen flicker issue while I was browsing in Naked Browser with the new LCDCLK frequency.
Tried to set echo 1 > /sys/kernel/mcde/lcdclk, but I've noticed that this value is not kept after a reboot.
Very annoying, because I can't restore 60 Hz permanently.
Click to expand...
Click to collapse
Sorry, I thought I've reverted this change. Can you confirm that setting old LCDCLK freq fixes issue? As a temporary solution you can use init.d script to set the appropriate LCDCLK freq index.
2) There are still issues about some values not kept in the performance UI of Lineage Os.
For example:
- Try to set Zenx as governor, min. 200 max 1000, Noops scheduler. Reboot. Scheduler will be resetted to Deadline
Click to expand...
Click to collapse
Can confirm now. I have a guess for that, for now the solution as follows:
remove /ramdisk/modules/autoload/sioplus-iosched.ko, reboot. I have to test this a bit more time to be sure 100%, but so far I couldn't reproduce an issue after removing this module (no other CPUfreq governor or I/O scheduler must be loaded as well).
- There is still a bug with max clock value of Dynamic governor (I can reproduce it with ZenX governor too). I set it to 800 MHz, I go back to the settings screen, then I return to the Performance -> Processor section to check if the 800 MHz value is maintained. But the UI automatically restored the max clock to 1000 MHz without my consent.
Click to expand...
Click to collapse
It's not a bug, but rather intended behavior - due to PowerHAL changes implemented, CPUfreq can only be changed via script (see /ramdisk/perf.sh). I've previously asked if anyone would prefer to adjust CPUfreq usual way, In this case I can just remove the corresponding lines from the PowerHal script. This will make PowerHAL settings a bit more useless, but will gave easier control over CPUfreq.
3) On the Performance UI, performance profile results automatically set on Balanced after any reboot. But if you cannot fix it, I can live with that, don't worry. It doesn't keep "Power save" or "Performance" profile between reboots.
Click to expand...
Click to collapse
The script actually works, though you're right, it works buggy and everytime shows the default profile (you can set, e.g. Powersave profile and check min/max CPU freq, to check if it actually works).
PS: I would appreciate if you could update the installation steps in this thread with the same steps of the refresh topic:
Flash temporary kernel (if coming from other recoveries than TWRP 3.1.1)
Reboot recovery
Flash kernel zip
Click to expand...
Click to collapse
Done!
isaak said:
I've got a screen flicker issue while I was browsing in Naked Browser with the new LCDCLK frequency.
Tried to set echo 1 > /sys/kernel/mcde/lcdclk, but I've noticed that this value is not kept after a reboot.
Very annoying, because I can't restore 60 Hz permanently.
ChronoMonochrome said:
Sorry, I thought I've reverted this change. Can you confirm that setting old LCDCLK freq fixes issue? As a temporary solution you can use init.d script to set the appropriate LCDCLK freq index.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
Yes, I can confirm that setting old LCDCLK freq fixed the flicker issue for my screen. I think it would be better to set it as default in the next release.
isaak said:
There are still issues about some values not kept in the performance UI of Lineage Os.
For example:
- Try to set Zenx as governor, min. 200 max 1000, Noops scheduler. Reboot. Scheduler will be resetted to Deadline
etc etc....
ChronoMonochrome said:
Can confirm now. I have a guess for that, for now the solution as follows:
remove /ramdisk/modules/autoload/sioplus-iosched.ko, reboot. I have to test this a bit more time to be sure 100%, but so far I couldn't reproduce an issue after removing this module (no other CPUfreq governor or I/O scheduler must be loaded as well).
Click to expand...
Click to collapse
Click to expand...
Click to collapse
I tried your steps, unfortunately they didn't work for me.
ChronoMonochrome said:
It's not a bug, but rather intended behavior - due to PowerHAL changes implemented, CPUfreq can only be changed via script (see /ramdisk/perf.sh). I've previously asked if anyone would prefer to adjust CPUfreq usual way, In this case I can just remove the corresponding lines from the PowerHal script. This will make PowerHAL settings a bit more useless, but will gave easier control over CPUfreq.
Click to expand...
Click to collapse
Personally I would prefer more control over CPUfreq. Could you list the main advantages to limit CPUfreq changes only via script? Is it a sort of auto-optimization? This point is not clear to me. If you think that any change to this mechanism would affect negatively the battery life, then don't change anything.
isaak said:
On the Performance UI, performance profile results automatically set on Balanced after any reboot. But if you cannot fix it, I can live with that, don't worry. It doesn't keep "Power save" or "Performance" profile between reboots.
ChronoMonochrome said:
The script actually works, though you're right, it works buggy and everytime shows the default profile (you can set, e.g. Powersave profile and check min/max CPU freq, to check if it actually works).
Click to expand...
Click to collapse
Click to expand...
Click to collapse
I tried Powersave and Performance profiles, in both cases the maximum freq varies between 400 MHz and 1000 MHz, rarely reaching 800 MHz. Minimum freq is always 200 MHz and it doesn't change visually like the maximum freq. Balanced profile is always shown visually after a reboot.
isaak said:
Personally I would prefer more control over CPUfreq. Could you list the main advantages to limit CPUfreq changes only via script? Is it a sort of auto-optimization? This point is not clear to me. If you think that any change to this mechanism would affect negatively the battery life, then don't change anything.
Click to expand...
Click to collapse
Because of some CPUfreq scaling tunables were changed (in the case of Dynamic governor), it makes sense to implement a PowerHAL profiles, which would limit / restore the max CPUfreq. But I think I've found a solution - I will make it possible to change CPUfreq for a Balanced profile.
I tried Powersave and Performance profiles, in both cases the maximum freq varies between 400 MHz and 1000 MHz, rarely reaching 800 MHz. Minimum freq is always 200 MHz and it doesn't change visually like the maximum freq. Balanced profile is always shown visually after a reboot.
Click to expand...
Click to collapse
Ok, I found some logical errors in the script, should be fixed in upcoming release.

Categories

Resources