Status
Not open for further replies.
Search This thread

gokhanmoral

Retired Senior Recognized Developer
Mar 16, 2006
3,744
25,415
45
Ankara
www.isyam.bilkent.edu.tr
Although some parts can be considered as original, all are based on inspirations, examples and other people's code.
I have no claim to be original. I am only trying to make my (and probably other's) SGS2 experience better and fun.
I do this for fun. so, if you just want to argue with me please don't. use the energy coming from your youth in something useful.

SiyahKernel v2.6.14

FEATURES
Can be flashed on Samsung ROMs and AOSP Based ROMS. Currently all Samsung 2.3.4, 2.3.5, 2.3.6, 2.3.7 based ROMS, CM7 (CM9 or any other ICS based ROMs are not supported) and MIUI ROMS are supported.
Based on linux kernel 2.6.35.14 + drivers from Samsung sources
Auto-Rooting
CWM touch Recovery with gesture support
Custom boot animation support
Supports SetCPU (OC upto 1600MHz, UC downto 100MHz)
User customizable frequency steps. You can edit "freq_table" and use 25MHz as the lowest step and 1696MHz as the highest. You have 8 steps (it is fixed) but the frequencies can be set.
Supports undervolting (UV between 800 mV and 1500 mV)
Supports voltage control via SetCPU (thanks to netarchy, ninpo, hacre)
Stock voltages as default
smartassV2, lulzactiveV2 governors. and lots of other governors which are available as modules
Default governor is lulzactive (200-1200MHz)
Tweaked ondemand and conservative governors
no compiler optimization. it is just a myth.
Touchscreen fix (thanks to vitalij)
Increased touchscreen sensitivity
GPU clock (thanks to netarchy), voltage and scaling thresholds control interface.
I/O, scheduler, hotplug and vm tweaks
automatic battery calibration. (removed. thanks to Entropy512. we do not need battery calibration for SGS2)
Available I/O schedulers: noop, deadline, CFQ, BFQV3r2(default), V(R), SIO
Available CPU governors: see this thread for the list of available governors and modules (thanks to droidphile)
/system/etc/init.d startup scripts support
Automatic backup of efs partition. You will have the files in your sdcard as well as /data/.siyah directory. copy them to a safe location in case you may need them later.
BLN (thanks to creams), liblights is autoinstalled if the existing one doesn't support BLN
supports advanced touch tune driver. thanks to vitalij Link. the control app from Web, from Mobile. Thanks to tegrak for the driver patch file download
2nd core application support (thanks to tegrak)
Automounting of NTFS volumes for USB sticks (ntfs on external card is not supported). although your rom says "clear storage", just check /mnt/usb folder. ntfs drives will be automatically mounted in read-only mode.
LZOP compression for the kernel to have very fast decompression. We have a VERY BIG kernel image because we have ntfs-3g, CWMManager and lots of other things both in initramfs and payload.
Integrated new&faster sha-1, crc32 slice-by-8, crc32c, jhash and rwsem algorithms
SCHED_MC enabled to have less power consumption.
Lower brightness levels for low-light conditions to save battery.
Brightness behaviour modification via setting min_bl, min_gamma and max_gamma values. you can control the lowest and hightest levels used in autobrightness.
Native BLN support for CM7 based roms.
Three GPU stepping (160-267-300) instead of two
optimized and configurable hotplug thresholds and rates.
Thunderbolt! script integrated (thanks to pikachu01)
Voodoo louder app support (thanks to supercurio)
Current Widget support while charging the device.
ExTweaks (uci.sh) support. (Thanks to xan and AndreiLux) ( https://market.android.com/details?id=com.darekxan.extweaks.app )
CIFS, SLUB, FUSE, NTFS, cgroup_timer_slack,... and lots of other mambojambo that I forgot...

Download link: http://www.gokhanmoral.com/

FLASHING GUIDE
TO FLASH TAR:
If you already have root, use DarkyOTA app from the market ( https://market.android.com/details?id=com.ficeto.darkyromota ) .
If not, use ODIN.
TO FLASH ZIP:
Use CWM Recovery and install zip file. Wiping cache&dalvik cache is recommended for those who use BLN.
if you lose root after flashing the kernel (unlikely), flash http://goo-inside.me/superuser/su-2.3.6.3-efgh-signed.zip in CWM.

Some Example Init.d Scripts
Example CWM-flashable /system/etc/init.d/99gpuv script (thanks to AndreiLux)
Example GPU/CPU undervolting and underclocking scripts by kwerdenker
Improved version of CPU undervolting script by kwerdenker
Another couple of nice init.d scripts created by fenomeno83
flashable lionheart cpu governor and setting default i/o scheduler to deadline (remove /system/etc/init.d/01lionheart to uninstall. thanks to knzo for the tweaked conservative governor settings)
releases can be found here: http://www.gokhanmoral.com/
source code repository: http://bitbucket.org/gokhanmoral/siyahkernel

CHANGELOG

see http://www.gokhanmoral.com/ for the changelog.

TODO
more and more optimizations for less battery drain
ICS edition when samsung releases new kernel sources
stable wifi driver which doesn't cause a lot of wakelocks with proper offloading
BLN notifications without wakelocks
OTA application (just to prevent users downloading wrong kernel for their device. other than that, it will be useless for a kernel)

THANKS:
Samsung, supercurio, hardcore, Hacre, RAvenGEr, tegrak, cattleprod, codeworkx, hellcat, creams, vitalij, arighi and others I might have forgotten...

certifiedicon.png
 

Attachments

  • logo.jpg
    logo.jpg
    56.1 KB · Views: 111,290
  • logo2.jpg
    logo2.jpg
    71 KB · Views: 74,817
Last edited:

gokhanmoral

Retired Senior Recognized Developer
Mar 16, 2006
3,744
25,415
45
Ankara
www.isyam.bilkent.edu.tr
Who Should NOT Use This Kernel?
If you are going to use very low voltage settings and complain about having lockups, you SHOULD NEVER use this kernel... just run away! This kernel is just as stable as the stock kernel if you do not modify any settings. Do not blame the kernel if you change the voltage or clock settings. If you do so I will blame your stupidity. I will not remove any feature just because some dumb users select wrong settings. If you are a rookie with an uncontrollable instinct of modifying advanced settings please use speedmod or stock kernel.
This kernel generally contain some experimental code and some of them may be even undocumented. I have different release strategy. I always use the latest version and if I notice any problem I try to fix it. However, I do not use all the features of the phone. So, if you notice any problem please report it. bug reports are welcomed, whining is not.
If you judge a kernel by quadrant score, please, I beg you, don't use this kernel. I don't have enough time nor motivation to answer your questions... Some people got 8000+ quadrant (search the thread) and there is no way you can beat them anyway.. so, go away...
If you are one of those who judges a kernel while sleeping ("oh my god!! lost %1 during sleep"-guy) please use another kernel, sleep and never wake up. it will maximize your battery and minimize the tension in the thread.
If you still believe in battery calibration, discuss it in some thread else. we respect all religions but missionary acts are not welcomed in this thread.
99.9% of the code belong to others. I have some modifications and/or additions to the kernel as C code or scripts but they are so little compared to the original code base. If you think you are better developer than I am, don't waste your time (and mine) as I accept it beforehand so please just go away.
FAQ

Q: Does this kernel support Samsung's ICS leak, CM9 or any ICS edition?
A: No, it does not.

Q: Does this kernel support latest Samsung i9100 ROM?
A: Yes, it does. Unless otherwise stated, you can use this kernel on latest Samsung ROMs (official and leaks). it is tested on 2.3.4, 2.3.5, 2.3.6.

Q: Can I use this kernel on I9100G?
A: No, you cannot. Only european i9100 models are supported. Also, I compile ntt-docomo version for each release but beta versions do not support gps and digital tv on ntt-docomo devices.

Q: Does this kernel support CM7 or any other AOSP based roms?
A: Yes, but it only support cm7 or miui based roms for now. If you are using another aosp based Rom tell me and I will support it.

Q: Can I use app protectors with this kernel?
A: Yes, you can. Android logger is enabled by default.

Q: Some custom lockscreens or protectors do not work with this kernel. Can you fix it?
A: see the question above.

Q: What is smartassV2 governor?
A: It is a governor to control CPU frequency. This governor has a built-in "profile" similar to SetCPU but the profile has no upper frequency limit. It tends to stay on lower frequencies when the screen is off and scale up very slowly, so screen off will use lower clock rate thus conserve more battery, but it also has a fast wake up feature so that user interaction will not see the lag when switching from Sleep to Wake state.... (So SetCPU Profiles are sorta redundant when using this governor, you can still use SetCPU to OC to higher than default Clock frequency).

Q: What is the best UV settings?
A: There is nothing as best UV settings. You have to find the best settings for your device for yourself. Start by decreasing 25mV on each freq and decrease it every day until your device becomes unstable.

Q: What can I do to have the best battery life ever?
A: put your phone into airplane mode. if you don't like to do it read the guide below.

Q: Which roms are supported?
A: All android 2.3.4 and 2.3.5 roms are supported. Try the latest version. if you have any problems leave a post to this forum and ask for help.

Q: I get random reboots or freezes. What should I do?
A: Before reporting any problems you have to make sure that you are using stock voltage values. Some phones cannot handle undervolting. Secondly, you have to give details. When did it happen, which rom are you using, can you reproduce it, do you have any custom init scripts which changes kernel parameters such as freq voltage or anything else?

Q: do I need to recalibrate the battery?
A: You don't need to calibrate battery for SGS2. Thanks to Entropy512 to pointing out that our device uses MAX17042 which is specifically designed not to require calibration.

Q: do I need to perform any wipe?
A: no. you don't have to wipe anything. however, try wiping cache and dalvik cache if you have any force closes or any other issues before reporting the issue.

Q: Is the battery life better/worse?
A: maybe... you'll never know if you don't try... People are reporting that they are having the best battery but it may not be the case for your device.

Q: where is the interface to change GPU clock and voltage?
A: There is no GUI (graphical user interface). the interface is used via device files. you have to use init.d scripts to adjust the values. there are some examples in the first post about how to use init.d scripts and gpu voltage/clock interface.

Q: Which governor is the best? Which I/O scheduler is the best?
A: You have to try them and select the one you like. There is a very good explanation about governors and i/o schedulers here: http://forum.xda-developers.com/showthread.php?t=1242323

Q: My phone doesn't go into deep sleep mode. Why?
A: try to clear cache and dalvik cache by using CWM recovery and make sure that your phone is not connected to a charger. it does not go into deep sleep when it is charging.

Q: Which version is the best?
A: supposedly, the latest version is the best. But if the latest version is beta there may be unstable code in it. testing the beta version and reporting bugs will help me. but it's your choice... try and see... maybe this kernel is not stable for your device at all, who knows... I will not answer any "what is the best?" questions and I kindly ask you not to ask that kind of questions since there is no answer to that.

Q: How does the automatic battery calibration work?
A: Automatic battery calibration feature is removed as it was useless for SGS2.

Q: What is an init.d script?
A:init.d scripts are the scripts which are executed during the boot time. actually, they are meant to initialize and deinitialize system daemons and manage some startup/shutdown tasks. but in android world they are just "autoexec.bat"s. so, it is a mix of rc.d and init.d directories in linux distros. everything in /system/etc/init.d are executed during the booting process. since it is not standard in every android device,some developers choose to execute files starting with "S" and some execute everything. in this kernel, everything in /system/etc/init.d is executed. you can create a script to change, lets say, voltages, schedulers, apply tweaks, run overclocking daemon or run anything else you can imagine.

Q: My phone doesn't go into deep sleep. What is wrong?
A: Make sure that you have cleared cache and dalvik-cache after you install the kernel. Also, reboot once more after the flashing. the phone doesn't go into deep sleep if it is connected to a charger or to a computer. There may be an application running in the background which is preventing deep sleep. In that case you can check which app causing the problem with "BetterBatteryStats" application (search in Google).

Q: I want more info about CPU governors.
A: There is a great post about cpu governors (thanks to droidphile): http://forum.xda-developers.com/showpost.php?p=19339524&postcount=10023
If you still want more info, try them by yourself.

Q: Can I use this kernel with I9100T?
A: Yes, you can. the only difference between I9100 and I9100T is that they have different SAR values.

quick and dirty guide to have less battery drain:

- use 2G-only if you don't need 3G
- monitor programs which cause wake-lock. use betterbatterystats and either uninstall or tweak them
- do not use task killers. see the previous item and find the malicious programs instead of repeatedly killing them.
- do not activate google latitude on maps.
- if you don't need pushmail, uncheck gmail sync and use k-9 mail to pull mail, lets say, every 1 hour or so.
- go to settings / location and security. disable "use wireless networks" and "use gps satellites". enable them when you need them, other than that keep them disabled.
- disabling auto-brightness and using a low brightness level helps. do you know that you can adjust the brightness by swiping your finger across the notification bar? try it...
- using juicedefender may help, but it may also cause more drain. test it yourself.
- if you need more speed than 2.5G (i.e. edge) disable HSDPA (*#301279#, select 2 then select 1). you will have 3G instead of H(SDPA) and I think it is fast enough
- disable fast dormancy. dial *#9900# and disable.
- disable auto sign in for google talk (search for talk in appdrawer and use settings to disable automatic sign in)
- disable samsung update and don't use samsung gadgets if you are not in love with them. (this part may be taken care of the rom developers)
- try several radios. I recommend you to try KE7, KG2 and KH3 and choose the one which suits you best. KG2 seems to be the best for me. however, in terms of battery life, there is not much difference between those three.
- be aware that more you use your phone more the battery drains :) don't complain like "my battery drains quite fast but I did not use my phone. I only played angry birds for hours without making a single call" or don't expect to have a decent battery life if you use your phone as a computer or download torrents using your phone.
 
Last edited:
S

sileshnair

Guest
I've just noticed that I haven't uploaded the version that I am using. sorry for that. I will recompile and upload again.

Take your time and post the sources as well, else this thread will get locked pretty quick. :)

Sent from my GT-I9100 using Tapatalk
 

gokhanmoral

Retired Senior Recognized Developer
Mar 16, 2006
3,744
25,415
45
Ankara
www.isyam.bilkent.edu.tr
Take your time and post the sources as well, else this thread will get locked pretty quick. :)

Sent from my GT-I9100 using Tapatalk

yes, I know :) that is why I have asked for patience in OP. If the moderators were a bit more patient maybe I would be using some other kernel and wouldn't bother to compile my own :)

I've uploaded the recompiled kernel. enjoy.
 

gokhanmoral

Retired Senior Recognized Developer
Mar 16, 2006
3,744
25,415
45
Ankara
www.isyam.bilkent.edu.tr
Did you get better battery life than REGEmod-U1?

I haven't tested it, but theoretically smartassv2 governor that I am using in the kernel should give better battery life than ondemand with a little (not even noticable) sacrifice of performance. you don't need to use any setcpu profiles with smartass governors.
test it. it may or may not give better battery life for you.
 

chonshon

Member
Aug 17, 2011
21
2
Taipei
I will. Thank you.
I haven't tested it, but theoretically smartassv2 governor that I am using in the kernel should give better battery life than ondemand with a little (not even noticable) sacrifice of performance. you don't need to use any setcpu profiles with smartass governors.
test it. it may or may not give better battery life for you.
 
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 963
    Although some parts can be considered as original, all are based on inspirations, examples and other people's code.
    I have no claim to be original. I am only trying to make my (and probably other's) SGS2 experience better and fun.
    I do this for fun. so, if you just want to argue with me please don't. use the energy coming from your youth in something useful.

    SiyahKernel v2.6.14

    FEATURES
    Can be flashed on Samsung ROMs and AOSP Based ROMS. Currently all Samsung 2.3.4, 2.3.5, 2.3.6, 2.3.7 based ROMS, CM7 (CM9 or any other ICS based ROMs are not supported) and MIUI ROMS are supported.
    Based on linux kernel 2.6.35.14 + drivers from Samsung sources
    Auto-Rooting
    CWM touch Recovery with gesture support
    Custom boot animation support
    Supports SetCPU (OC upto 1600MHz, UC downto 100MHz)
    User customizable frequency steps. You can edit "freq_table" and use 25MHz as the lowest step and 1696MHz as the highest. You have 8 steps (it is fixed) but the frequencies can be set.
    Supports undervolting (UV between 800 mV and 1500 mV)
    Supports voltage control via SetCPU (thanks to netarchy, ninpo, hacre)
    Stock voltages as default
    smartassV2, lulzactiveV2 governors. and lots of other governors which are available as modules
    Default governor is lulzactive (200-1200MHz)
    Tweaked ondemand and conservative governors
    no compiler optimization. it is just a myth.
    Touchscreen fix (thanks to vitalij)
    Increased touchscreen sensitivity
    GPU clock (thanks to netarchy), voltage and scaling thresholds control interface.
    I/O, scheduler, hotplug and vm tweaks
    automatic battery calibration. (removed. thanks to Entropy512. we do not need battery calibration for SGS2)
    Available I/O schedulers: noop, deadline, CFQ, BFQV3r2(default), V(R), SIO
    Available CPU governors: see this thread for the list of available governors and modules (thanks to droidphile)
    /system/etc/init.d startup scripts support
    Automatic backup of efs partition. You will have the files in your sdcard as well as /data/.siyah directory. copy them to a safe location in case you may need them later.
    BLN (thanks to creams), liblights is autoinstalled if the existing one doesn't support BLN
    supports advanced touch tune driver. thanks to vitalij Link. the control app from Web, from Mobile. Thanks to tegrak for the driver patch file download
    2nd core application support (thanks to tegrak)
    Automounting of NTFS volumes for USB sticks (ntfs on external card is not supported). although your rom says "clear storage", just check /mnt/usb folder. ntfs drives will be automatically mounted in read-only mode.
    LZOP compression for the kernel to have very fast decompression. We have a VERY BIG kernel image because we have ntfs-3g, CWMManager and lots of other things both in initramfs and payload.
    Integrated new&faster sha-1, crc32 slice-by-8, crc32c, jhash and rwsem algorithms
    SCHED_MC enabled to have less power consumption.
    Lower brightness levels for low-light conditions to save battery.
    Brightness behaviour modification via setting min_bl, min_gamma and max_gamma values. you can control the lowest and hightest levels used in autobrightness.
    Native BLN support for CM7 based roms.
    Three GPU stepping (160-267-300) instead of two
    optimized and configurable hotplug thresholds and rates.
    Thunderbolt! script integrated (thanks to pikachu01)
    Voodoo louder app support (thanks to supercurio)
    Current Widget support while charging the device.
    ExTweaks (uci.sh) support. (Thanks to xan and AndreiLux) ( https://market.android.com/details?id=com.darekxan.extweaks.app )
    CIFS, SLUB, FUSE, NTFS, cgroup_timer_slack,... and lots of other mambojambo that I forgot...

    Download link: http://www.gokhanmoral.com/

    FLASHING GUIDE
    TO FLASH TAR:
    If you already have root, use DarkyOTA app from the market ( https://market.android.com/details?id=com.ficeto.darkyromota ) .
    If not, use ODIN.
    TO FLASH ZIP:
    Use CWM Recovery and install zip file. Wiping cache&dalvik cache is recommended for those who use BLN.
    if you lose root after flashing the kernel (unlikely), flash http://goo-inside.me/superuser/su-2.3.6.3-efgh-signed.zip in CWM.

    Some Example Init.d Scripts
    Example CWM-flashable /system/etc/init.d/99gpuv script (thanks to AndreiLux)
    Example GPU/CPU undervolting and underclocking scripts by kwerdenker
    Improved version of CPU undervolting script by kwerdenker
    Another couple of nice init.d scripts created by fenomeno83
    flashable lionheart cpu governor and setting default i/o scheduler to deadline (remove /system/etc/init.d/01lionheart to uninstall. thanks to knzo for the tweaked conservative governor settings)
    releases can be found here: http://www.gokhanmoral.com/
    source code repository: http://bitbucket.org/gokhanmoral/siyahkernel

    CHANGELOG

    see http://www.gokhanmoral.com/ for the changelog.

    TODO
    more and more optimizations for less battery drain
    ICS edition when samsung releases new kernel sources
    stable wifi driver which doesn't cause a lot of wakelocks with proper offloading
    BLN notifications without wakelocks
    OTA application (just to prevent users downloading wrong kernel for their device. other than that, it will be useless for a kernel)

    THANKS:
    Samsung, supercurio, hardcore, Hacre, RAvenGEr, tegrak, cattleprod, codeworkx, hellcat, creams, vitalij, arighi and others I might have forgotten...

    certifiedicon.png
    227
    Who Should NOT Use This Kernel?
    If you are going to use very low voltage settings and complain about having lockups, you SHOULD NEVER use this kernel... just run away! This kernel is just as stable as the stock kernel if you do not modify any settings. Do not blame the kernel if you change the voltage or clock settings. If you do so I will blame your stupidity. I will not remove any feature just because some dumb users select wrong settings. If you are a rookie with an uncontrollable instinct of modifying advanced settings please use speedmod or stock kernel.
    This kernel generally contain some experimental code and some of them may be even undocumented. I have different release strategy. I always use the latest version and if I notice any problem I try to fix it. However, I do not use all the features of the phone. So, if you notice any problem please report it. bug reports are welcomed, whining is not.
    If you judge a kernel by quadrant score, please, I beg you, don't use this kernel. I don't have enough time nor motivation to answer your questions... Some people got 8000+ quadrant (search the thread) and there is no way you can beat them anyway.. so, go away...
    If you are one of those who judges a kernel while sleeping ("oh my god!! lost %1 during sleep"-guy) please use another kernel, sleep and never wake up. it will maximize your battery and minimize the tension in the thread.
    If you still believe in battery calibration, discuss it in some thread else. we respect all religions but missionary acts are not welcomed in this thread.
    99.9% of the code belong to others. I have some modifications and/or additions to the kernel as C code or scripts but they are so little compared to the original code base. If you think you are better developer than I am, don't waste your time (and mine) as I accept it beforehand so please just go away.
    FAQ

    Q: Does this kernel support Samsung's ICS leak, CM9 or any ICS edition?
    A: No, it does not.

    Q: Does this kernel support latest Samsung i9100 ROM?
    A: Yes, it does. Unless otherwise stated, you can use this kernel on latest Samsung ROMs (official and leaks). it is tested on 2.3.4, 2.3.5, 2.3.6.

    Q: Can I use this kernel on I9100G?
    A: No, you cannot. Only european i9100 models are supported. Also, I compile ntt-docomo version for each release but beta versions do not support gps and digital tv on ntt-docomo devices.

    Q: Does this kernel support CM7 or any other AOSP based roms?
    A: Yes, but it only support cm7 or miui based roms for now. If you are using another aosp based Rom tell me and I will support it.

    Q: Can I use app protectors with this kernel?
    A: Yes, you can. Android logger is enabled by default.

    Q: Some custom lockscreens or protectors do not work with this kernel. Can you fix it?
    A: see the question above.

    Q: What is smartassV2 governor?
    A: It is a governor to control CPU frequency. This governor has a built-in "profile" similar to SetCPU but the profile has no upper frequency limit. It tends to stay on lower frequencies when the screen is off and scale up very slowly, so screen off will use lower clock rate thus conserve more battery, but it also has a fast wake up feature so that user interaction will not see the lag when switching from Sleep to Wake state.... (So SetCPU Profiles are sorta redundant when using this governor, you can still use SetCPU to OC to higher than default Clock frequency).

    Q: What is the best UV settings?
    A: There is nothing as best UV settings. You have to find the best settings for your device for yourself. Start by decreasing 25mV on each freq and decrease it every day until your device becomes unstable.

    Q: What can I do to have the best battery life ever?
    A: put your phone into airplane mode. if you don't like to do it read the guide below.

    Q: Which roms are supported?
    A: All android 2.3.4 and 2.3.5 roms are supported. Try the latest version. if you have any problems leave a post to this forum and ask for help.

    Q: I get random reboots or freezes. What should I do?
    A: Before reporting any problems you have to make sure that you are using stock voltage values. Some phones cannot handle undervolting. Secondly, you have to give details. When did it happen, which rom are you using, can you reproduce it, do you have any custom init scripts which changes kernel parameters such as freq voltage or anything else?

    Q: do I need to recalibrate the battery?
    A: You don't need to calibrate battery for SGS2. Thanks to Entropy512 to pointing out that our device uses MAX17042 which is specifically designed not to require calibration.

    Q: do I need to perform any wipe?
    A: no. you don't have to wipe anything. however, try wiping cache and dalvik cache if you have any force closes or any other issues before reporting the issue.

    Q: Is the battery life better/worse?
    A: maybe... you'll never know if you don't try... People are reporting that they are having the best battery but it may not be the case for your device.

    Q: where is the interface to change GPU clock and voltage?
    A: There is no GUI (graphical user interface). the interface is used via device files. you have to use init.d scripts to adjust the values. there are some examples in the first post about how to use init.d scripts and gpu voltage/clock interface.

    Q: Which governor is the best? Which I/O scheduler is the best?
    A: You have to try them and select the one you like. There is a very good explanation about governors and i/o schedulers here: http://forum.xda-developers.com/showthread.php?t=1242323

    Q: My phone doesn't go into deep sleep mode. Why?
    A: try to clear cache and dalvik cache by using CWM recovery and make sure that your phone is not connected to a charger. it does not go into deep sleep when it is charging.

    Q: Which version is the best?
    A: supposedly, the latest version is the best. But if the latest version is beta there may be unstable code in it. testing the beta version and reporting bugs will help me. but it's your choice... try and see... maybe this kernel is not stable for your device at all, who knows... I will not answer any "what is the best?" questions and I kindly ask you not to ask that kind of questions since there is no answer to that.

    Q: How does the automatic battery calibration work?
    A: Automatic battery calibration feature is removed as it was useless for SGS2.

    Q: What is an init.d script?
    A:init.d scripts are the scripts which are executed during the boot time. actually, they are meant to initialize and deinitialize system daemons and manage some startup/shutdown tasks. but in android world they are just "autoexec.bat"s. so, it is a mix of rc.d and init.d directories in linux distros. everything in /system/etc/init.d are executed during the booting process. since it is not standard in every android device,some developers choose to execute files starting with "S" and some execute everything. in this kernel, everything in /system/etc/init.d is executed. you can create a script to change, lets say, voltages, schedulers, apply tweaks, run overclocking daemon or run anything else you can imagine.

    Q: My phone doesn't go into deep sleep. What is wrong?
    A: Make sure that you have cleared cache and dalvik-cache after you install the kernel. Also, reboot once more after the flashing. the phone doesn't go into deep sleep if it is connected to a charger or to a computer. There may be an application running in the background which is preventing deep sleep. In that case you can check which app causing the problem with "BetterBatteryStats" application (search in Google).

    Q: I want more info about CPU governors.
    A: There is a great post about cpu governors (thanks to droidphile): http://forum.xda-developers.com/showpost.php?p=19339524&postcount=10023
    If you still want more info, try them by yourself.

    Q: Can I use this kernel with I9100T?
    A: Yes, you can. the only difference between I9100 and I9100T is that they have different SAR values.

    quick and dirty guide to have less battery drain:

    - use 2G-only if you don't need 3G
    - monitor programs which cause wake-lock. use betterbatterystats and either uninstall or tweak them
    - do not use task killers. see the previous item and find the malicious programs instead of repeatedly killing them.
    - do not activate google latitude on maps.
    - if you don't need pushmail, uncheck gmail sync and use k-9 mail to pull mail, lets say, every 1 hour or so.
    - go to settings / location and security. disable "use wireless networks" and "use gps satellites". enable them when you need them, other than that keep them disabled.
    - disabling auto-brightness and using a low brightness level helps. do you know that you can adjust the brightness by swiping your finger across the notification bar? try it...
    - using juicedefender may help, but it may also cause more drain. test it yourself.
    - if you need more speed than 2.5G (i.e. edge) disable HSDPA (*#301279#, select 2 then select 1). you will have 3G instead of H(SDPA) and I think it is fast enough
    - disable fast dormancy. dial *#9900# and disable.
    - disable auto sign in for google talk (search for talk in appdrawer and use settings to disable automatic sign in)
    - disable samsung update and don't use samsung gadgets if you are not in love with them. (this part may be taken care of the rom developers)
    - try several radios. I recommend you to try KE7, KG2 and KH3 and choose the one which suits you best. KG2 seems to be the best for me. however, in terms of battery life, there is not much difference between those three.
    - be aware that more you use your phone more the battery drains :) don't complain like "my battery drains quite fast but I did not use my phone. I only played angry birds for hours without making a single call" or don't expect to have a decent battery life if you use your phone as a computer or download torrents using your phone.
    51
    I'm back

    hi again.
    sorry for being silent for such a long time. I was very busy and got married. after deploying my projects and a little honeyishmoon break (only 3 days because of the workload) I am back.
    fortunately, I will have some time this week.
    I am planning to compile another kernel tomorrow which will include Entropy512's patches to solve video decoding issues with the latest kernel and some rollbacks to 2.6.9 which seems to be the best version according to the feedbacks.
    I am also planning to complete the new config scripts tomorrow. xan sent me the new voltagecontrol app with universal config interface support and it works great. if I can finish the scripts tomorrow v2.6.13 will have those scripts and almost everything will be controllable through that new interface.
    45
    I will not quote anybody this time. this message is for everybody.

    cpu governors are not the same. for example, smartassv2 has desired frequency of 800MHz in my kernel. it is "NORMAL" that it scales up to 800MHz instantly. you cannot expect every governor to stay at 100MHz most of the time.

    if you prefer another governor (i/o or cpu) set it yourself. I decide which one is default and that decision may change in time.

    if you are not happy with my decisions (release strategy, choices etc) use another kernel. there are lots of other choices: Stock kernel, speedmod kernel, void kernel, tegrak's kernel. I never claimed that I am a super-uber developer who never makes mistakes. I do like experimental releases. in my daily job, my releases are not even alpha versions. we have another testing department and we test every single requirement and map our code to the requirements.

    I welcome any positive or negative comments. but there is a difference between a negative comment and being disrespectful. This is not my job. This thread was more clean when it was in android development section as there were less idiots posting in this thread.

    I have added some code into the kernel (not much) and also wrote some scripts (couple of) but most of the work belongs to other developers. we are using linux kernel anyway. I have created this thread in android development section just to prevent people flaming me of not being original. Although I admit this and comply with GPL lots of people have criticized me about my work, about not being original or even "copying from them" while they were having my modifications (even with my comments, gm is my initials by the way, maybe they would like to clean the sources) in their kernel.

    I have already lost lots of time answering such rudeness and/or idiocity.
    I will edit the second post and summarize these points.

    in short, I have two points:
    if you are unhappy with this kernel you don't have to be.
    just don't use it, make yourself happy and don't try to make others unhappy.

    if you are a developer then whoever you are I admit that you are better than me. if you don't have something to teach me, I don't want to communicate with you. if you have any questions that I may answer ask it I will try to answer.

    I hope you all got my points...
    41
    v2.6.13 is ready (and the source is already pushed to bitbucket).
    I have not uploaded it to my blog yet because it needs some more testing (mainly the new config interface)
    I hope to release it tomorrow (another delay). I hope xan can finish the voltage control app and publish it in the market by then (or maybe publish as another app).
    the new config interface is able to config pretty much everything (cpu hotplug settings, AFTR & secondcore functionality, gpu thresholds & voltages, resetting fuel-gauge chip, and some others that I forgot)
    xan has done a great job and the interface looks great.
    the interface will be open & usable by others. the scripts are pretty easy. I will simplify them even more when I have some more time.
    thanks to xan that I didn't have to spend any time on implementing an app. his voltage control app was the reason that I did not learn java and I am thankful to him because of that :)
    anyway.. I hope you will like the interface when it is released.
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone