Search This thread

pengus77

Recognized Developer
Mar 10, 2011
2,140
22,971
Penguins' Republic of Antarctica
This kernel supports both new and old bootloader and apparently it's also the favorite kernel of the MIUI team (****ing thieves...) !

This is not a "phonsole" kernel, it's not made for draining your battery in a nanosecond because "it's cool to play tegra3 designed games on the p990", so there is overclock, but done "The Right Way™".
Our phone is quite powerful on its own, but LG and Nvidia made a really crappy job on optimizing it. I'm just working to make it a bit better and to provide a reliable, stable and battery friendly kernel to all those people who actually use a phone... as a phone...

There are experimental/unstable versions that i release every now and then for public testing. Official kernels are released when the beta testing phase is done and 100% of the feedback is positive. Don't ask for ETA or you'll be fish slapped... badly !. This of course is not valid in case a nasty bug slips in the release, in which case i'll do my best to fix it within a few hours.


Features

* Compiled in release mode (all debug stripped)
* Battery friendly, performance aware
* 3G modem runtime/suspend idle mode support
* Enhanced wifi power management
* Runtime wifi power management control via sysfs
* Bluetooth deep sleep without disconnections
* OC up to 1.2 GHz on stable releases and up to 1.5 GHz on experimentals
* Dynamic FSync by Faux123, backported from Linux 3.4
* 32M ramhack on the new bootloader, 24M on the old one (for now)
* ROW scheduler by Qualcomm, backported from Linux 3.4
* BFQv5 scheduler, backported from Linux 3.4
* Dynamic Interactive governor, backported from Linux 3.2
* Interactive governor aligned with Google's upstream sources (Linux 3.4)
* Simplified cpu hotplug, the second core will turn off in deep sleep mode
* Single/Dual core mode
* Support for notification lights on compatible roms
* Proportional Rate Reduction for TCP to increase network reliability
* Westwood TCP congestion algorithm enabled by default
* Support for NTFS (read only) and HFS+ filesystems
* Support for NFS 3/4
* Support for custom leds brightness from userspace
* Support for USB fast charge [ Don't keep it active when connected to a pc or it may damage your usb ports. It's meant for fast charging when using car/plane adapters for example ]
* And loads more...
* Comes bundled with Kowalski Manager by wfd


Q & A

Q: Battery !!! Why it's so baaaad ! My phone doesn't sleep !!!
A: Well, don't get it badly, it's not really my problem, is it ? 99.999% is an app you have installed that's preventing deep sleep...

Q: App X crashes ! OMG I lost my sdcard ! Noooo all my data are gone !!!
A: Read again on top, not my fault, sorry. I try my best to give out a stable kernel, but "**** happens" and i can't control it...

Q: I get tons of bsods, my phone doesn't wake up from sleep, it freezes and omg... it just exploded !!!
A: No dmesg / logcat, no party. And please don't post messages like those in the thread if you're not ready to attach a log to the post.

Q: When will you enable gpu overclock, road runner speed mode or wile e. coyote immortality ?
A: Never... on a second thought... maybe... who knows ? :p

Q: When will you release the new version ? It's a week we're using the old one !!
A: Is it stable ? Then please allow me to fish slap you with a huge trout !


Downloads

All downloads for Kowalski Kernel are in this folder on DevHost.

Updates will be pushed to those folders based on the kernel version, and a change log will be filled in the next post accordingly. Kernel releases will be announced in the thread.

The downloads labeled as "kowalski-*-XXX-YYYbl" are obviously the kernels for [YYY=old || YYY=new] bootloader and XXX represents the version number.

* In Kowalski Manager on kernel 2.6.39.4 you can change the power management settings of the wireless card:

- PSP Power Saving Mode ---> your wifi card will use Max PSP when asleep. The kernel default is to sleep in Fast PSP mode.
- Awake Power Management ---> your wifi card will use Fast PSP when awake if enabled, otherwise will use CAM mode.
- Hotspot Power Management ---> when enabling hotspot mode, your wifi card will use Fast PSP if enabled, otherwise the default is to use CAM mode.
CAM (Constantly Awake Mode)
Keeps the client adapter powered up continuously so there is little lag in message response time.
Consumes the most power but offers the highest throughput. Is recommended for desktop computers and devices that use AC power.

Fast PSP (Power Save Mode)
Switches between PSP mode and CAM mode, depending on network traffic. This mode switches to CAM when retrieving a large number of packets and switches back to PSP after the packets have been retrieved.
Is recommended when power consumption is a concern but you need greater throughput than that allowed by Max PSP.

Max PSP (Max Power Savings)
Causes the access point to buffer incoming messages for the client adapter, which wakes up periodically and polls the access point to see if any buffered messages are waiting for it. The adapter can request each message and then go back to sleep.
Conserves the most power but offers the lowest throughput. Is recommended for devices for which power consumption is the ultimate concern (such as small battery-powered devices).
Source will be pushed to my github about 2 or 3 days after a release, to make sure that no major bugs are introduced in the public repository.

This kernel can be compiled with any gcc 4.6.X that supports graphite loop optimizations, so if you want to compile it by yourself you'll have either to build your own toolchain (for example using crosstool-ng), or use one of the many linux prebuilt ones (for example Linaro or CodeSourcery). Make sure they're 4.6.X. Earlier versions may complain a lot and generate and unstable kernel. Newer versions (aka 4.7+ won't produce a bootable kernel at all unless source modifications are done).

Please don't rip-off my work. Please don't kang this kernel. Please don't c&p from my github without proper credit. I'm a nice guy, but i will report you.


Thanks

* wkpark for unlocking the ics bootloader and his genius ideas for implementing ramhack
* linus, well, for the linux kernel
* massimo69, stonebear, tetsuo55, wfd and carloit for taking the risks of testing possibly harmful pre-releases
* qualcomm, because codeaurora is awesome !
* benee, for his perfect any-kernel installer !
* wfd, for his fantastic Kowalski Manager App !
* hjunii for forward porting and cleaning up all the LG crap to kernel 3.1.10 !


On a side note... i'm not really responsible if you decide to test it and your phone melts... right ?

-
 
Last edited:

pengus77

Recognized Developer
Mar 10, 2011
2,140
22,971
Penguins' Republic of Antarctica
Change Log and How-Tos

Change Log

100p5 - 2013/03/03
* Fix derp in voltage table​

100p4 - 2013/03/02
* OC to 1.2GHz max
* Re-introduced the ability to modify the voltage table
* Global kmsg cleanup. Removed tons of useless/annoying debug messages
* OC code refactor and fixes. Thanks to Tonyp for finding the AP20 tech docs :)
* Fixed max suspend frequency race condition
* Disabled async compaction in the new lmk. Really not playing nice with the 3.4 code
* tspdrv (vibrator) code cleanup and fixes. Hopefully no more "dildo bug" :p
* Lots of 3G modem related fixes and introduction of the idle mode during runtime and suspend

100p3 - 2013/02/19
* Fixed Dynamic Fsync code and added reboot/shutdown forced flushing of buffers
* Added Max CPU Frequency when screen is off
* Fixed wifi suspend issues​

100p2 - 2013/02/16
* Disabled OC for releases
* 1st attempt to fix wifi hang upon resume
* Probable fix for excessive wifi drain when ap is out of range
* Support for Faux123 Dynamic Fsync​

100p1 - 2013/02/13
* Fixed USB Mass Storage freezes
* Fixed audio input not working on some phones​

100 - 2013/02/12
* Added OC possibility (thanks to wkpark for the initial patch and to civato for pushing it to github)
* Tweaked the voltage values and enabled a bit of 2d OC
* Fixed the slow charge bug on the old bootloader
* Aligned USB Fast Charge code between old and new bootloaders
* Enabled EMC scaling aligned with the cpu speed
* Enabled RTC (Real Time Clock) support for the battery monitor
* Added fsync control from sysfs
* Added async memory compaction to the lmk
* Locked min cpu speed when using camera (snappy !)
* Tweaked a bit the interactive governor presets
* CPUs unaligned access
* Various patches to the lmk
* Various fixes to the voltage regulator
* Tons of patches to the android binder
* Tons of patches to the linux memory management
* Tons of patches to ext4
* Tons of patches to the mmc host​

011p4 - 2013/02/03 - Bugfixes and some goodies
* Backported OnDemand governor from kernel 3.2
* Added Boost Pulse support in the kernel for Interactive and OnDemand governors
* Added tegra.power.so blob to the installer
* Optimized CFQ and BFQ schedulers
* Fixed shutdown crash
* Fixed USB fast charge on the old bootloader
* Updated Kowalski Manager to the latest version​

011p3 - 2013/01/28 - Bugfixes Release
* Fixed wifi parameters persistency
* Fixed USB fast charge on the old bootloader
* Reverted "disable aio" commit that was causing lousy sdcard r/w speeds and some lag
* Updated Kowalski Manager to the latest version (with icon !)
* Tweaked the LMK values a bit​

011 - 2013/01/26
*Added USB Fast Charge mode
*Net: Various ipv4 related fixes from kernel 3.4
*Wifi: Lowered default dBm of the wifi card to 19dBm (<3 my health)
*Wifi: Raised scan time for wifi from 3s to 8s (<3 my battery)
*Wifi: fixed compatibility between 10, 10.1 and ICS
*Wifi: fixed battery drain
*Wifi: removed background scan (let Combo Scan do the job)
*Row: Multiple patches from 3.4
*Row: Implemented urgent requests (speedy gonzales style)
*Disabled LG FOTA crap in muic (and hopefully autofix some bugs)
*Disabled android compaction process (let's have the new awesome lmk do the job)
*Modified kernel entropy generation (the new black apparently)
*input: monotonic input events (fasteeeer, i said faaaaaaaster)
*increased slightly timers ticks/second (oh, this is going to be felt a lot)
*gpio timers from kernel 3.8
*android logger from kernel 3.8
*prepared makefiles for gcc 4.7.X (the next step)​

010 - 2013/01/19
*Added the possibility to change leds brightness from userspace (sysfs)
*Simplified kernel flags, removed useless bloat, smaller kernel
*Backported the lowmemorykiller from kernel 3.4
*Unified wifi driver for compatibility with cm10, cm10.1 and ics
*Disabled the cpu boost when connecting usb (badly done by nvidia)
*Compiled Zram as a module, installed a init.d script to enable it
*Moved from lzo to google's snappy as compression for zram
*Fixed a couple of regressions from nvidia kernel 2.6.32 linked to bsods when suspending/resuming
*Switched to Interactive as default governor. Seems snappier for now with the latest version
*Enabled low level kernel tegra irq timers
*Added all the TCP Congestion Algorithms available in the kernel
*Backported from kernel 3.4 the latest patches for
  • - ROW I/O Scheduler
  • - Interactive Governor
*Backported from kernel 3.4 the BFQv5 I/O Scheduler
*Tons of patches from upstream related to
  • TCP Networking
  • ARM suspend/resume and smp routines
  • USB memory corruption and possible lockups
  • Kernel Timers

009p1 - 2013/01/13
* Disabled tegra cpu frequency locking
* Added a small cpu boost when usb cable is inserted [ may prevent bsods ]
* Added one more wifi interface to sysfs [ wake_pm (bool) to set PM_FAST/PM_OFF when screen on ]
* Re-enabled the conservative governor
* Updated toolchain to a more optimized one
* Compiled with "graphite" flags for a bit more kick
* Fixed the LMK so it doesn't kill kernel threads​

007 - 2013/01/13
* Full changelog that lead to this release in my CM10 thread at the second post


How-Tos

Change the default TCP Congestion Algorithm

To see what algorithms are available you can, in a terminal/adb console, type: "sysctl net.ipv4.tcp_available_congestion_control"
To change the default congestion algorithm, type: "sysctl -w net.ipv4.tcp_congestion_control=one_of_the_names_that_came_out_before"​

Change the Wifi Power Management modes

In a terminal/adb shell navigate to /sys/kernel/wifi_pm.

You can change the high power management setting by typing: "echo 1 > max_pm" to enable it, or "echo 0 > max_pm" to disable it (cam / psp modes).
This setting will enable/disable the PSP power saving mode when the phone is asleep. Be careful, not all the routers are happy with it.

You can change the awake (screen on) power management setting by typing: "echo 1 > wake_pm" to enable it, or "echo 0 > wake_pm" to disable it (off / cam modes)

Change the leds brightness

In a terminal/adb shell navigate to /sys/class/leds/star_led.

You can change the high value setting by typing: "echo XXX > max_brightness" to modify it, where XXX can be a value between 0 (off) and 255 (max).

Change WiFi TxPower

Interestingly enough, Broadcom/LG decided that they want us all dead in a very short time so they set the default txpower of the wifi chip to 32dBm (that's a whopping 1.6 Watts in power). Considering that the US FCC sets a top limit of 30dbM/1W for antennae and that the EU sets a max power of 20dBm/100mW for consumer products, i'd say that Broadcom and LG are quite some nice companies... also wonder how they went past controls with this one...

Anyway, i packed a flashable zip that will install the "iwconfig" and "iwlist" binaries to /system/xbin in your phone. After flashing this one you can, from a terminal, modify the txpower value in real-time depending on your needs (if at home 5 mts from the router, or in a park 100 mts from the access point). For now a binary, soon an apk to handle this, so bear with me and wait :)

You can download the package from here :)

To check the current txpower value
Code:
su
iwconfig wlan0
To set the new txpower value
Code:
su
iwconfig wlan0 txpower XX (where XX is the value in dBm)
On this link you can find a W -> dBm conversion table that might come in handy ;)

Side notes: 1) To use iwconfig your wifi must be on and 2) When you turn it off/on or reboot, the setting will be reset to 32dBm for now.

Alsa Mixer

There ya go, for all of you a little deaf that love some real crackling from your phone's speakers :D
Packaged in a nice cwm flashable zip (alsa_mixer.zip) that you can find here is a collection of binaries that will be installed in /system/xbin and that will allow you to alter a bit the volumes of your phone. Of course you'll have to slap the values that you like in an init.d script once you find them, or they won't persist on reboot.
For example, to boost a bit the speaker volume, you can type: alsa_amixer sset "Speaker" "60" (max is 63) and to see the current setting you type: alsa_amixer sget "Speaker"
I suggest that you look into the alsa_amixer help and experiment a bit with the values. You can't break anything, and a reboot will reset all the values to default ;)

-
 
Last edited:

wfd

Senior Member
Mar 22, 2011
341
708
Togliatti
Kowalski manager

This app is only for use with [email protected] kernel, tested on CM10, CM10.1, ICS

Features

* PSP power saving mode enable/disable
* Hotspot power management enable/disable
* High power management enable/disable
* TX Power level regulation
* Softbuttons leds brighness regulation
* Internal/external sdcard read ahead values change
* USB fast charge enable/disable
* Restore all setting after boot


Bugs

Please, tell me :)


Change Log


020 - 2013/06/10
*Added 2nd core auto hot plug switch
*Fixed couple of bugs
*Updated Dutch translation


019 - 2013/06/02
*Show light sensor value on brightness tab

018 - 2013/05/28
*Added switch to sound tab for on/off restore sound settings after call
*Added radio buttons to switch MultiCore Sched PM modes
*Added possibility to set brightness settings as custom defaults and reset to them
*Added Backlight settings tab

017 - 2013/03/19
*Added single core mode switch

016 - 2013/03/06
*Added dynamic fsync switch
*Added call hangup receiver to set alsa speaker volume to manager settings

015 - 2013/02/18
*Added headphone volume setting via alsa_amixer
*Added alert on fast charge switch. Thanks Tony :)

014 - 2013/02/15
*Added speaker volume setting via alsa_amixer
*Added Portuguese translation, thanks to chevellemendes!

012 - 2013/02/12
*App redesigned to support pager tabs

011p8 - 2013/02/08
*Added Dutch translation, thanks to majoortje!
*Updated Spanish translation, thanks to sobaquete!

011p6 - 2013/02/04
*Added Czech translation, thanks to Keltek!
*Added Finnish translation, thanks to _kankea!

011p5 - 2013/02/03
*Added Danish translation, thanks to Custom40!
*Added Franch, Italian, Serbian translations, thanks to Massimo69!
*Fixed rotation issue
*Removed iwconfig dependency
*Added Spanish translation, thanks to Massimo69!
*Added Polish translation, thanks to Rayman96!

011 - 2013/01/28
Compatible with Kowalski Kernel only since 011p3!!!
*Added Croatian translation, thanks massimo69!
*Added wake_pm enable/disable
*Changed paths for wifi power management setup
*Fixed a lot of potential freezes
*Added blue icon from 60nine!
*Added German translation, thanks TonyP!
*Now works on 4.0.4​


Download

Application already included in Kowalski kernel since 011


Thanks

* pengus77 for his amazing kernel and second life for our device
* aremcee, without him we would not have CM10.x at all
* all wonderfull devs, who makes us happy with our p990 :)

Big thanks to our translators

German - TonyP
Croatian, Spanish, Franch, Italian, Serbian - Massimo69
Danish - Custom40
Polish - Rayman96
Czech - Keltek
Finnish - _kankea
Portuguese - chevellemendes
Russian - me

If you have some corrections, please pm authors. If you want to add your native language in app, please pm me.
 

Attachments

  • Screenshot_2013-01-26-14-54-28.jpg
    Screenshot_2013-01-26-14-54-28.jpg
    25 KB · Views: 24,844
  • KowalskiManager020release.apk
    217 KB · Views: 5,099
Last edited:

Luk_Optimus

Senior Member
Dec 27, 2011
143
75
"Official" cm releases are so filled with bugs that we should call an exterminator lol
First let's try to get a 10 stable, then we move to 10.1... that's the plan and i won't deviate that soon from it.

sounds good! sadly, there is (as far as i know) no cm10 rom for the old bl...
 

sobaquete

Senior Member
Aug 28, 2009
165
57
Madrid
Hi!, thanks for this release.
I have one question that I cannot answer from the OP... why is there a separate file for the PSP module? Should I flash it after the kernel or it's not mandatory? Is it valid for both BL versions?

Thanks
 
  • Like
Reactions: gregor1997

sander-m

Senior Member
Jul 27, 2011
77
13
Awesome, your kernel runs excellent on my O2X(now at 13/01). No SODs whatsoever and very stable since first releases.

If people have SOD problems, it is not always kernel related. I have swapped my device for a new one after lots of black screen issues and with the new one I have almost 0 issues even with the same ROM+kernel.
It seems our device has many different (good and horrible)hardware revisions, I suggest to swap your device at the retailer if it is possible within your warranty.
 

pengus77

Recognized Developer
Mar 10, 2011
2,140
22,971
Penguins' Republic of Antarctica
Hi!, thanks for this release.
I have one question that I cannot answer from the OP... why is there a separate file for the PSP module? Should I flash it after the kernel or it's not mandatory? Is it valid for both BL versions?

Thanks

Updated op. It's valid for both bootloaders and it's not mandatory. The psp module will enable the PM_MAX flag when the phone is asleep, so make sure your router/ap supports PSP mode (if it has a broadcom chip then it does for sure) or your phone will lose packets when in deep sleep.
The gain in battery life though is gigantic... you decide :)
 

-sandro-

Senior Member
May 6, 2011
2,043
373
Pescara, Italy
vimeo.com
About led lights I noticed that if I put "always on" with a very dim light this setting doesn't apply system-wide. If I receive a mail with gmail all fine but if I get a text via a third-party app like whatsapp or viber the light goes full brightness (but it respects the "always on" setting). I had to set a custom brightness for every application manually.
 

pengus77

Recognized Developer
Mar 10, 2011
2,140
22,971
Penguins' Republic of Antarctica
About led lights I noticed that if I put "always on" with a very dim light this setting doesn't apply system-wide. If I receive a mail with gmail all fine but if I get a text via a third-party app like whatsapp or viber the light goes full brightness (but it respects the "always on" setting). I had to set a custom brightness for every application manually.

This is rom related, i'll look into it on my cm10 thread. Please here post only things related exclusively to the kernel :)
 
  • Like
Reactions: torstenconrad

Top Liked Posts

  • There are no posts matching your filters.
  • 616
    This kernel supports both new and old bootloader and apparently it's also the favorite kernel of the MIUI team (****ing thieves...) !

    This is not a "phonsole" kernel, it's not made for draining your battery in a nanosecond because "it's cool to play tegra3 designed games on the p990", so there is overclock, but done "The Right Way™".
    Our phone is quite powerful on its own, but LG and Nvidia made a really crappy job on optimizing it. I'm just working to make it a bit better and to provide a reliable, stable and battery friendly kernel to all those people who actually use a phone... as a phone...

    There are experimental/unstable versions that i release every now and then for public testing. Official kernels are released when the beta testing phase is done and 100% of the feedback is positive. Don't ask for ETA or you'll be fish slapped... badly !. This of course is not valid in case a nasty bug slips in the release, in which case i'll do my best to fix it within a few hours.


    Features

    * Compiled in release mode (all debug stripped)
    * Battery friendly, performance aware
    * 3G modem runtime/suspend idle mode support
    * Enhanced wifi power management
    * Runtime wifi power management control via sysfs
    * Bluetooth deep sleep without disconnections
    * OC up to 1.2 GHz on stable releases and up to 1.5 GHz on experimentals
    * Dynamic FSync by Faux123, backported from Linux 3.4
    * 32M ramhack on the new bootloader, 24M on the old one (for now)
    * ROW scheduler by Qualcomm, backported from Linux 3.4
    * BFQv5 scheduler, backported from Linux 3.4
    * Dynamic Interactive governor, backported from Linux 3.2
    * Interactive governor aligned with Google's upstream sources (Linux 3.4)
    * Simplified cpu hotplug, the second core will turn off in deep sleep mode
    * Single/Dual core mode
    * Support for notification lights on compatible roms
    * Proportional Rate Reduction for TCP to increase network reliability
    * Westwood TCP congestion algorithm enabled by default
    * Support for NTFS (read only) and HFS+ filesystems
    * Support for NFS 3/4
    * Support for custom leds brightness from userspace
    * Support for USB fast charge [ Don't keep it active when connected to a pc or it may damage your usb ports. It's meant for fast charging when using car/plane adapters for example ]
    * And loads more...
    * Comes bundled with Kowalski Manager by wfd


    Q & A

    Q: Battery !!! Why it's so baaaad ! My phone doesn't sleep !!!
    A: Well, don't get it badly, it's not really my problem, is it ? 99.999% is an app you have installed that's preventing deep sleep...

    Q: App X crashes ! OMG I lost my sdcard ! Noooo all my data are gone !!!
    A: Read again on top, not my fault, sorry. I try my best to give out a stable kernel, but "**** happens" and i can't control it...

    Q: I get tons of bsods, my phone doesn't wake up from sleep, it freezes and omg... it just exploded !!!
    A: No dmesg / logcat, no party. And please don't post messages like those in the thread if you're not ready to attach a log to the post.

    Q: When will you enable gpu overclock, road runner speed mode or wile e. coyote immortality ?
    A: Never... on a second thought... maybe... who knows ? :p

    Q: When will you release the new version ? It's a week we're using the old one !!
    A: Is it stable ? Then please allow me to fish slap you with a huge trout !


    Downloads

    All downloads for Kowalski Kernel are in this folder on DevHost.

    Updates will be pushed to those folders based on the kernel version, and a change log will be filled in the next post accordingly. Kernel releases will be announced in the thread.

    The downloads labeled as "kowalski-*-XXX-YYYbl" are obviously the kernels for [YYY=old || YYY=new] bootloader and XXX represents the version number.

    * In Kowalski Manager on kernel 2.6.39.4 you can change the power management settings of the wireless card:

    - PSP Power Saving Mode ---> your wifi card will use Max PSP when asleep. The kernel default is to sleep in Fast PSP mode.
    - Awake Power Management ---> your wifi card will use Fast PSP when awake if enabled, otherwise will use CAM mode.
    - Hotspot Power Management ---> when enabling hotspot mode, your wifi card will use Fast PSP if enabled, otherwise the default is to use CAM mode.
    CAM (Constantly Awake Mode)
    Keeps the client adapter powered up continuously so there is little lag in message response time.
    Consumes the most power but offers the highest throughput. Is recommended for desktop computers and devices that use AC power.

    Fast PSP (Power Save Mode)
    Switches between PSP mode and CAM mode, depending on network traffic. This mode switches to CAM when retrieving a large number of packets and switches back to PSP after the packets have been retrieved.
    Is recommended when power consumption is a concern but you need greater throughput than that allowed by Max PSP.

    Max PSP (Max Power Savings)
    Causes the access point to buffer incoming messages for the client adapter, which wakes up periodically and polls the access point to see if any buffered messages are waiting for it. The adapter can request each message and then go back to sleep.
    Conserves the most power but offers the lowest throughput. Is recommended for devices for which power consumption is the ultimate concern (such as small battery-powered devices).
    Source will be pushed to my github about 2 or 3 days after a release, to make sure that no major bugs are introduced in the public repository.

    This kernel can be compiled with any gcc 4.6.X that supports graphite loop optimizations, so if you want to compile it by yourself you'll have either to build your own toolchain (for example using crosstool-ng), or use one of the many linux prebuilt ones (for example Linaro or CodeSourcery). Make sure they're 4.6.X. Earlier versions may complain a lot and generate and unstable kernel. Newer versions (aka 4.7+ won't produce a bootable kernel at all unless source modifications are done).

    Please don't rip-off my work. Please don't kang this kernel. Please don't c&p from my github without proper credit. I'm a nice guy, but i will report you.


    Thanks

    * wkpark for unlocking the ics bootloader and his genius ideas for implementing ramhack
    * linus, well, for the linux kernel
    * massimo69, stonebear, tetsuo55, wfd and carloit for taking the risks of testing possibly harmful pre-releases
    * qualcomm, because codeaurora is awesome !
    * benee, for his perfect any-kernel installer !
    * wfd, for his fantastic Kowalski Manager App !
    * hjunii for forward porting and cleaning up all the LG crap to kernel 3.1.10 !


    On a side note... i'm not really responsible if you decide to test it and your phone melts... right ?

    -
    247
    Change Log and How-Tos

    Change Log

    100p5 - 2013/03/03
    * Fix derp in voltage table​

    100p4 - 2013/03/02
    * OC to 1.2GHz max
    * Re-introduced the ability to modify the voltage table
    * Global kmsg cleanup. Removed tons of useless/annoying debug messages
    * OC code refactor and fixes. Thanks to Tonyp for finding the AP20 tech docs :)
    * Fixed max suspend frequency race condition
    * Disabled async compaction in the new lmk. Really not playing nice with the 3.4 code
    * tspdrv (vibrator) code cleanup and fixes. Hopefully no more "dildo bug" :p
    * Lots of 3G modem related fixes and introduction of the idle mode during runtime and suspend

    100p3 - 2013/02/19
    * Fixed Dynamic Fsync code and added reboot/shutdown forced flushing of buffers
    * Added Max CPU Frequency when screen is off
    * Fixed wifi suspend issues​

    100p2 - 2013/02/16
    * Disabled OC for releases
    * 1st attempt to fix wifi hang upon resume
    * Probable fix for excessive wifi drain when ap is out of range
    * Support for Faux123 Dynamic Fsync​

    100p1 - 2013/02/13
    * Fixed USB Mass Storage freezes
    * Fixed audio input not working on some phones​

    100 - 2013/02/12
    * Added OC possibility (thanks to wkpark for the initial patch and to civato for pushing it to github)
    * Tweaked the voltage values and enabled a bit of 2d OC
    * Fixed the slow charge bug on the old bootloader
    * Aligned USB Fast Charge code between old and new bootloaders
    * Enabled EMC scaling aligned with the cpu speed
    * Enabled RTC (Real Time Clock) support for the battery monitor
    * Added fsync control from sysfs
    * Added async memory compaction to the lmk
    * Locked min cpu speed when using camera (snappy !)
    * Tweaked a bit the interactive governor presets
    * CPUs unaligned access
    * Various patches to the lmk
    * Various fixes to the voltage regulator
    * Tons of patches to the android binder
    * Tons of patches to the linux memory management
    * Tons of patches to ext4
    * Tons of patches to the mmc host​

    011p4 - 2013/02/03 - Bugfixes and some goodies
    * Backported OnDemand governor from kernel 3.2
    * Added Boost Pulse support in the kernel for Interactive and OnDemand governors
    * Added tegra.power.so blob to the installer
    * Optimized CFQ and BFQ schedulers
    * Fixed shutdown crash
    * Fixed USB fast charge on the old bootloader
    * Updated Kowalski Manager to the latest version​

    011p3 - 2013/01/28 - Bugfixes Release
    * Fixed wifi parameters persistency
    * Fixed USB fast charge on the old bootloader
    * Reverted "disable aio" commit that was causing lousy sdcard r/w speeds and some lag
    * Updated Kowalski Manager to the latest version (with icon !)
    * Tweaked the LMK values a bit​

    011 - 2013/01/26
    *Added USB Fast Charge mode
    *Net: Various ipv4 related fixes from kernel 3.4
    *Wifi: Lowered default dBm of the wifi card to 19dBm (<3 my health)
    *Wifi: Raised scan time for wifi from 3s to 8s (<3 my battery)
    *Wifi: fixed compatibility between 10, 10.1 and ICS
    *Wifi: fixed battery drain
    *Wifi: removed background scan (let Combo Scan do the job)
    *Row: Multiple patches from 3.4
    *Row: Implemented urgent requests (speedy gonzales style)
    *Disabled LG FOTA crap in muic (and hopefully autofix some bugs)
    *Disabled android compaction process (let's have the new awesome lmk do the job)
    *Modified kernel entropy generation (the new black apparently)
    *input: monotonic input events (fasteeeer, i said faaaaaaaster)
    *increased slightly timers ticks/second (oh, this is going to be felt a lot)
    *gpio timers from kernel 3.8
    *android logger from kernel 3.8
    *prepared makefiles for gcc 4.7.X (the next step)​

    010 - 2013/01/19
    *Added the possibility to change leds brightness from userspace (sysfs)
    *Simplified kernel flags, removed useless bloat, smaller kernel
    *Backported the lowmemorykiller from kernel 3.4
    *Unified wifi driver for compatibility with cm10, cm10.1 and ics
    *Disabled the cpu boost when connecting usb (badly done by nvidia)
    *Compiled Zram as a module, installed a init.d script to enable it
    *Moved from lzo to google's snappy as compression for zram
    *Fixed a couple of regressions from nvidia kernel 2.6.32 linked to bsods when suspending/resuming
    *Switched to Interactive as default governor. Seems snappier for now with the latest version
    *Enabled low level kernel tegra irq timers
    *Added all the TCP Congestion Algorithms available in the kernel
    *Backported from kernel 3.4 the latest patches for
    • - ROW I/O Scheduler
    • - Interactive Governor
    *Backported from kernel 3.4 the BFQv5 I/O Scheduler
    *Tons of patches from upstream related to
    • TCP Networking
    • ARM suspend/resume and smp routines
    • USB memory corruption and possible lockups
    • Kernel Timers

    009p1 - 2013/01/13
    * Disabled tegra cpu frequency locking
    * Added a small cpu boost when usb cable is inserted [ may prevent bsods ]
    * Added one more wifi interface to sysfs [ wake_pm (bool) to set PM_FAST/PM_OFF when screen on ]
    * Re-enabled the conservative governor
    * Updated toolchain to a more optimized one
    * Compiled with "graphite" flags for a bit more kick
    * Fixed the LMK so it doesn't kill kernel threads​

    007 - 2013/01/13
    * Full changelog that lead to this release in my CM10 thread at the second post


    How-Tos

    Change the default TCP Congestion Algorithm

    To see what algorithms are available you can, in a terminal/adb console, type: "sysctl net.ipv4.tcp_available_congestion_control"
    To change the default congestion algorithm, type: "sysctl -w net.ipv4.tcp_congestion_control=one_of_the_names_that_came_out_before"​

    Change the Wifi Power Management modes

    In a terminal/adb shell navigate to /sys/kernel/wifi_pm.

    You can change the high power management setting by typing: "echo 1 > max_pm" to enable it, or "echo 0 > max_pm" to disable it (cam / psp modes).
    This setting will enable/disable the PSP power saving mode when the phone is asleep. Be careful, not all the routers are happy with it.

    You can change the awake (screen on) power management setting by typing: "echo 1 > wake_pm" to enable it, or "echo 0 > wake_pm" to disable it (off / cam modes)

    Change the leds brightness

    In a terminal/adb shell navigate to /sys/class/leds/star_led.

    You can change the high value setting by typing: "echo XXX > max_brightness" to modify it, where XXX can be a value between 0 (off) and 255 (max).

    Change WiFi TxPower

    Interestingly enough, Broadcom/LG decided that they want us all dead in a very short time so they set the default txpower of the wifi chip to 32dBm (that's a whopping 1.6 Watts in power). Considering that the US FCC sets a top limit of 30dbM/1W for antennae and that the EU sets a max power of 20dBm/100mW for consumer products, i'd say that Broadcom and LG are quite some nice companies... also wonder how they went past controls with this one...

    Anyway, i packed a flashable zip that will install the "iwconfig" and "iwlist" binaries to /system/xbin in your phone. After flashing this one you can, from a terminal, modify the txpower value in real-time depending on your needs (if at home 5 mts from the router, or in a park 100 mts from the access point). For now a binary, soon an apk to handle this, so bear with me and wait :)

    You can download the package from here :)

    To check the current txpower value
    Code:
    su
    iwconfig wlan0
    To set the new txpower value
    Code:
    su
    iwconfig wlan0 txpower XX (where XX is the value in dBm)
    On this link you can find a W -> dBm conversion table that might come in handy ;)

    Side notes: 1) To use iwconfig your wifi must be on and 2) When you turn it off/on or reboot, the setting will be reset to 32dBm for now.

    Alsa Mixer

    There ya go, for all of you a little deaf that love some real crackling from your phone's speakers :D
    Packaged in a nice cwm flashable zip (alsa_mixer.zip) that you can find here is a collection of binaries that will be installed in /system/xbin and that will allow you to alter a bit the volumes of your phone. Of course you'll have to slap the values that you like in an init.d script once you find them, or they won't persist on reboot.
    For example, to boost a bit the speaker volume, you can type: alsa_amixer sset "Speaker" "60" (max is 63) and to see the current setting you type: alsa_amixer sget "Speaker"
    I suggest that you look into the alsa_amixer help and experiment a bit with the values. You can't break anything, and a reboot will reset all the values to default ;)

    -
    237
    Plans and Wishlist

    What I'm working on

    * Double tap to wake


    Wishlist

    * OTG Support
    * HDMI


    What will make it into the next kernel release

    * Surprise
    182
    Kowalski manager

    This app is only for use with [email protected] kernel, tested on CM10, CM10.1, ICS

    Features

    * PSP power saving mode enable/disable
    * Hotspot power management enable/disable
    * High power management enable/disable
    * TX Power level regulation
    * Softbuttons leds brighness regulation
    * Internal/external sdcard read ahead values change
    * USB fast charge enable/disable
    * Restore all setting after boot


    Bugs

    Please, tell me :)


    Change Log


    020 - 2013/06/10
    *Added 2nd core auto hot plug switch
    *Fixed couple of bugs
    *Updated Dutch translation


    019 - 2013/06/02
    *Show light sensor value on brightness tab

    018 - 2013/05/28
    *Added switch to sound tab for on/off restore sound settings after call
    *Added radio buttons to switch MultiCore Sched PM modes
    *Added possibility to set brightness settings as custom defaults and reset to them
    *Added Backlight settings tab

    017 - 2013/03/19
    *Added single core mode switch

    016 - 2013/03/06
    *Added dynamic fsync switch
    *Added call hangup receiver to set alsa speaker volume to manager settings

    015 - 2013/02/18
    *Added headphone volume setting via alsa_amixer
    *Added alert on fast charge switch. Thanks Tony :)

    014 - 2013/02/15
    *Added speaker volume setting via alsa_amixer
    *Added Portuguese translation, thanks to chevellemendes!

    012 - 2013/02/12
    *App redesigned to support pager tabs

    011p8 - 2013/02/08
    *Added Dutch translation, thanks to majoortje!
    *Updated Spanish translation, thanks to sobaquete!

    011p6 - 2013/02/04
    *Added Czech translation, thanks to Keltek!
    *Added Finnish translation, thanks to _kankea!

    011p5 - 2013/02/03
    *Added Danish translation, thanks to Custom40!
    *Added Franch, Italian, Serbian translations, thanks to Massimo69!
    *Fixed rotation issue
    *Removed iwconfig dependency
    *Added Spanish translation, thanks to Massimo69!
    *Added Polish translation, thanks to Rayman96!

    011 - 2013/01/28
    Compatible with Kowalski Kernel only since 011p3!!!
    *Added Croatian translation, thanks massimo69!
    *Added wake_pm enable/disable
    *Changed paths for wifi power management setup
    *Fixed a lot of potential freezes
    *Added blue icon from 60nine!
    *Added German translation, thanks TonyP!
    *Now works on 4.0.4​


    Download

    Application already included in Kowalski kernel since 011


    Thanks

    * pengus77 for his amazing kernel and second life for our device
    * aremcee, without him we would not have CM10.x at all
    * all wonderfull devs, who makes us happy with our p990 :)

    Big thanks to our translators

    German - TonyP
    Croatian, Spanish, Franch, Italian, Serbian - Massimo69
    Danish - Custom40
    Polish - Rayman96
    Czech - Keltek
    Finnish - _kankea
    Portuguese - chevellemendes
    Russian - me

    If you have some corrections, please pm authors. If you want to add your native language in app, please pm me.
    168
    Kernel Update (127 alpha 20)

    Wow, this has been a looooong streak of updates and fixes guys.

    Alpha 20 is in my dev-host folder (linked in my signature and in op) and will simply blow you away. This kernel supports ONLY bcmdhd for wifi and bluedroid for bluetooth, so will work on latest TheRom, CM11 and SlimRom 4.3 and 4.4. Don't expect it to work fully on any other rom. For now it's like this because I need to make sure the new things work fine (the old ones we know already). When all is up-to-date and inside the 3.1.10 kernel then I'll build a bluez / bcm4329 / oldbl version.

    Ok, stop babbling, in for the news:

    - A LOAD OF OPTIMISATIONS AND FIXES (too many to list here, check my github if you're curious)
    - Sched PM is back
    - Timer Slack is enabled by default
    - OC/UV is back as you remember it on 2.6

    Oh, one last thing: if you're on cm11, before flashing this kernel make sure to hit settings->performance->profiles and set the default profile to balanced... or you risk a nasty boot loop.

    Have fun and let me know what you think ;)
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