[GPL] [KERNEL] AeroKernel - 09.03.2015

Search This thread

abeloman

Senior Member
Apr 29, 2012
1,235
695
Veracruz
Samsung Galaxy S20 FE
My values, underclock 1.09 GHz
Epsilon v4

ae3be9042000c641333e005f2c734d02.jpg
 

Valantur

Senior Member
Aug 19, 2010
101
31
Great Kernel with huge energy savings after undervolting. The only problem I have is the camera not taking pictures. The front facing camera works fine though...
 

==vj==

Senior Member
Jan 19, 2013
1,077
1,033
Goa
Great Kernel with huge energy savings after undervolting. The only problem I have is the camera not taking pictures. The front facing camera works fine though...
Camera works fine. Guess you meant camera is freezing while taking pictures. That could happen if you undervolt much. Increase the voltage such that every function of phone works normally fine :)
 

Valantur

Senior Member
Aug 19, 2010
101
31
Camera works fine. Guess you meant camera is freezing while taking pictures. That could happen if you undervolt much. Increase the voltage such that every function of phone works normally fine :)

I even tried Overvolting, main camera still doesn't work. I've also tried both Dalvik and ART...no luck.
Am I the only one unable to take pictures? Maybe it's my phone...
 

Prometeo88

Senior Member
Aug 22, 2010
160
15
I even tried Overvolting, main camera still doesn't work. I've also tried both Dalvik and ART...no luck.
Am I the only one unable to take pictures? Maybe it's my phone...
Remember that stock camera only work on stock DPI, if you are using custom DPI it will FC. I was crazy trying to fix a problem and it was that.
 

slimshady76

Senior Member
Aug 11, 2009
297
222
Berisso
How about posting some logs?
So i can actually fix this problem, instead of guessing? :)

Sent from my Nexus 4

@Blechd0se, I posted my logs at post #1001. I'd really like to be more helpful, but my six mont old XT1032 got stolen, so I switched to a XT1063 (Moto G 2014)...

BTW, does your kernel work in this new version of the Moto G? I heard they are pretty much the same as the previous one...

Anyway, I'll stay in this thread, since your wonderful kernel still spices up my wife's phone, along with another five Moto Gs from friends and family...
 

Pinktank

Senior Member
Jan 25, 2011
678
144
Can someone try putting a file with a unicode name, like Esbjörn? It crashes the transfer and messes up things for me.
 

LeopardSurd

Senior Member
May 31, 2009
564
165
Cluj-Napoca
I cannot edit the vibrator strength. vtg_level is not editable at all.

L.E. I faced restarts in an interval of 2 days of using the last Aero Kernel version.

Zuerst, fand ich komisch immer noch die GPS Notifikation zu sehen. Jetzt weiß ich warum: ich habe gleich nach einem Anruf einen Neustart gesehen.

I'll flash back the 12.09 version.
 
Last edited:

Blechd0se

Inactive Recognized Developer
Sep 19, 2012
459
4,508
Stuttgart
I cannot edit the vibrator strength. vtg_level is not editable at all.

L.E. I faced restarts in an interval of 2 days of using the last Aero Kernel version.

Zuerst, fand ich komisch immer noch die GPS Notifikation zu sehen. Jetzt weiß ich warum: ich habe gleich nach einem Anruf einen Neustart gesehen.

I'll flash back the 12.09 version.
Could you explain how you tried to set the vibrator strength?

Also be sure to checkout /proc/last_kmsg if you face reboots.

Sent from my Nexus 4
 

Top Liked Posts

  • There are no posts matching your filters.
  • 136
    aero_kernel.gif

    Hello guys,

    let me present to you my Moto G Kernel. Its based upon the stock Moto G kernel source and was build for the stock ROM.
    The main goal for this kernel is to improve battery life while keeping up a reasonable performance.

    Features;
    • Added my own hotplug-driver (disabled mpdecision)
    • Improved and updated interactive governor with touchboost
    • Simple ondemand GPU governor
    • Vibrator control with additions from me
    • Real Voltage Control
    • It just works and is stable (on all devices for stock ROM)
    • Many small improvements e.g. updated subsystems and fixed memory leaks

    I tried to keep this kernel as clean as possible with useful features. Always make a backup before installing and if you are coming from
    a different kernel keep in mind that you'll need to reflash the stock modules (if changed). This kernel should work for all stock roms (dual sim as well as GPE).

    How-To-Install;
    • be sure to make a backup first
    • via fastboot; fastboot flash boot /path/to/boot.img or fastboot boot /path/to/boot.img (if you just want to try it without flashing)
    • via zip; install zip in your favorite recovery
    Keep in mind that /system/lib/hw/power.msm8226.so should be renamed or deleted if flashed via fastboot (zip does it automatically).

    Download

    Changelog

    Looking for the CM-Kernel? Head over to this thread!

    If you want to tweak it, you can also do with my own app.

    If you like this work and want to donate something;
    Donate to Quarx
    PayPal: quarx@yandex.ru
    ---------------------------------------
    Donate to Blechd0se
    PayPal: alex.christ@hotmail.de

    Enjoy!

    How-To-Build:
    Go to my Github (kernel as well as ramdisk source are available).
    Code:
    git clone https://github.com/Blechd0se/kernel-moto-g.git
    cd kernel-moto-g
    git checkout kitkat-mr2-release-falcon
    export CROSS_COMPILE=/path/to/your/toolchains/arm-eabi-4.7/bin/arm-eabi-
    export ARCH=arm
    make msm8226_defconfig
    make -j64
    I use googles default 4.7 toolchain as well as 64 jobs, you might change this value depending on your system.
    Once build, you'll need to repack the ramdisk.
    For repacking the boot.img i use the following;
    Code:
    mkbootimg --pagesize 2048 --base 0x10000000 --cmdline 'console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x37 vmalloc=400M utags.blkdev=/dev/block/platform/msm_sdcc.1/by-name/utags' --kernel kernel-moto-g/arch/arm/boot/zImage-dtb --ramdisk kernel-moto-g/ramdisk/ramdisk.cpio.gz -o /output/boot.img
    37
    How does the hotplug driver work here?
    My hotplug driver is based upon @franciscofranco idea to keep minimum two cores online while the screen is on.
    In addition to this there are load counters on both of those cpus. If they reach a certain threshold another core gets onlined.
    So cpu0 is bound to cpu2 and cpu1 is bound to cpu3 in terms of onlining. If onlined, cpus stay a certain amount of time
    online before they consider to eventually go down again. Since hotplugging is kind of an intensive and expensive operation and threads
    might be migrated my algorithm always offlines the lowest load core.
    If screen is off, there is only one core online.

    Here is a quick overview about the hotplug driver tunables;
    all_cpus_threshold:
    The threshold for the average load of all currently onlined cpus to online the next core. If you lower this value, cores can get more easily online.

    hotplug_sampling:
    The sampling rate of the hotplug driver. Lower this value and decisions will be made quicker in regards if a core should be onlined or not.

    min_online_time:
    To prevent core off-/onlining when they are near the threshold. This is the minimum online time for a core.

    single_core_threshold:
    The threshold for a single core to online another one. For example; if core 1 is at 100% and the average load is above 60% core 3 will get online.

    low_latency:
    If enabled (1) it let's the hotplug driver react really quickly to short load spikes (100% CPU load) and onlines cpus accordingly.

    up_frequency:
    The minimum cpu frequency to start hotplug operations. If the current frequency is below this value, no hotplug operations will perform.
    Default is the maximum frequency.

    battery_saver:
    If enabled (1), only one core will stay active as soon as you turn off your screen. If you are getting strange audio quality while the screen is off, try
    switching it off via 0. This will let both core stay active during suspend.

    .

    Why do i have to rename/delete this lib?
    Because it interferes with my changes to the interactive governor. You can keep it, but it might produce very strange issue. You can just
    rename the file if you want to restore it later.


    Can i tweak this kernel or do i have to?
    Of course you can. You can use any of your favorite kernel tweaker app. I have also made one if you might want to use it, here is the
    play store link.
    You don't have to tweak it. It ships with well tested values and is already preconfigured.
    As always, just enjoy your device.


    How can i control the vibrator strength?
    This option is not yet available in my kernel app. The actual sys path is; /sys/devices/virtual/timed_output/vibrator/vtg_level
    The default value should be 18, the maximum is 31 and the my lowered minimum is 10.
    e.g. echo 10 > /sys/devices/virtual/timed_output/vibrator/vtg_level


    Coming from a different kernel?
    If you come from a different kernel its likely that your modules are overridden. This kernel uses stock modules. You can
    use this flashable zip by @justjr to restore your modules.


    How to use color control?

    Use the following in your terminal; echo 255 230 210 > /sys/devices/platform/kcal_ctrl.0/kcal
    First value are reds, second value are greens and last value are blues.
    Turn your display off -> on and profit :)
    37
    Android Lollipop Update

    So yes guys, we got a kernel update.
    Before we get into the nice things i must talk about this release. So the reason why this release is so delayed is because of the wlan drivers provided by moto.
    I am not really sure if i did something wrong while building them, but the provided source code made troubles for me. When using them wlan works fine, but
    only as long as you don't disable and try to re-enable it. Then it simply locks up and crashes after some seconds. The stock driver doesn't seem to suffer from this
    problem, so i assume either i did something horrible wrong or there are differences from what moto ships and what they provide.
    But enough of it, i fixed it (and trust me, this code really looks bad) so no more problems. Backup your files, for your own safety!

    Apart from this, the new update contains the features i have spoken about for the gpu governor as well as my hotplug driver. Also i added @savoca KCAL display control
    driver, which might get supported by Aero Control on the next release.
    All in all i added around 250+ commits, full changelog:
    • Completely rebased on motos kernel source for Android Lollipop
    • Merged in all my common patches
    • Merged in some small fixes for zRAM
    • Merged in many patches for the rwsem subsystem which handles a lot of locking operations
    • Merged in savoca's new KCAL display control driver (checkout /sys/devices/platform/kcal_ctrl.0/)
    • Improved the gpu governor (simple_ondemand) to react more like its CPU counterpart
    • Improved the hotplug driver. Its now smart enough to avoid load jumping (between CPUs) and thus may increase performance slightly
    • Improved the hotplug driver to use LCD notifiers instead of powersuspend or earlysuspend handlers
    • Improved zRAM size from 160 to 200 MB
    • Much much more, checkout github for the full changelog

    Needless to say, this is only for Android Lollipop stock ROMs.
    Enjoy!

    Download
    34
    well thatz not entirely true...xperience kernel by teamex oc upto 1.5ghz smoothly.

    If i may hook into this; just because you can select a higher frequency somewhere doesn't mean it actually works.
    Our moto g is screened in terms of cpu frequency. This is not done by motorola but by qualcomm. That means that
    the cpu features a hw lock which makes software overclocking useless. There is no way a simple frequency table change
    could possible work.
    Don't believe me? Have a look over here at this image.
    That was a test build of mine to play around with overclocking. I could turn this value to anything i want, i won't mean that
    it actually gets applied.
    Still thinking that overclock might work? Ok, at this point i am referring to a official motorola dev on this commit. So as long as your moto g was manufactured
    before this commit date, there might be a very rare chance that cpu oc works.

    I am not saying its impossible, maybe the bootloader could do some magic here, however the kernel can't and i won't add something useless to this kernel.

    @Kenks
    Yes. I hate it when i open an app and it needs to be redrawn. I am looking at both; the app and the kernel to improve this even further (you already can
    change memory settings on aero control) :)


    Last but not least; thanks guys for all those kind words, really appreciate it. As of now there aren't any plans for a paid app, but a rating on Aero Control
    could help as much as a donation. I always wanted to provide well-known premium quality in the spirit of open source development without any charge
    to be available for anyone.
    29
    New kernel release is up!

    Just pushed a new kernel release. I was tired of reading all those "wtf my wifi is broken"-comments. So i decided to add my modules
    to the kernel release. In return this allowed me to add patches to many core components without breaking anything.
    The result is quite surprising, probably my smoothest build ever, but see for yourself.
    As stated previously all dt2w things are gone now and they won't come back again. I also tired to fix those strange reboots
    for the ondemand users - not that i would recommend using it. Feedback for this is highly appreciated.
    Also notice; i won't provide a boot.img directly since you have to flash the modules to make anything work as expected.
    Just flash the zip file in your favorite recovery and forget.

    Changelog;
    • Disabled dt2w/s2w
    • Resolved locking issues inside the ondemand governor
    • Merged in a couple of patches for better kernerl locking mechanics
    • Merged in a couple of patches for the scheduler to make it more efficient
    • Enabled scheduler autogrouping feature
    • A few other misc patches, checkout github!

    I hope you enjoy this build as much as i had fun making it.

    Download