[KERNEL][GPL]2013-03-02 b24 motley kernel for the Prime (4.2.2 alpha)

Search This thread

babymatteo

Senior Member
Aug 30, 2011
2,859
764
SoCal
Hey guys, if i wanted to flash this kernel I would have to ask the dev primalicious?

Sent from my Transformer Prime TF201 using Tapatalk 2
 

Demiurge7

Senior Member
Nov 17, 2011
360
350
Bellevue, WA
Xiaomi Mi 11 Ultra
Does this mean switching it to performance (5 on virtuous, 3 on stock) will not do anything on this kernel? Is there a way to edit this .sh from 5 to 3 myself? Would love to give this a whirl, but am happy with virtuous, and dont really want to go back just to run this oc properly.
 

_motley

Senior Member
Aug 17, 2010
858
2,360
Hey guys, if i wanted to flash this kernel I would have to ask the dev primalicious?

It's based on the stock ROM, so it should work. Just do a full backup first, as is always recommended and then use the Aroma installer to install the kernel. If you want to go back, just do a selective restore from CWM and restore your boot.img.

Also, Jermaine just posted an AnyKernel zip for this kernel (see his new thread). This a big step forward for flashing this kernel to work with any ROM since it will retain the initramfs and keep any changes the dev has made there.

Does this mean switching it to performance (5 on virtuous, 3 on stock) will not do anything on this kernel? Is there a way to edit this .sh from 5 to 3 myself? Would love to give this a whirl, but am happy with virtuous, and dont really want to go back just to run this oc properly.

All you have to do is use the Aroma installer, pick your heat and then reboot. Then, copy cpu3.sh to cpu5.sh and it should work fine.

rename cpu5.sh cpu5.sh.bak (backup)
cp cpu3.sh cpu5.sh (copy)
 
  • Like
Reactions: Demiurge7

cragains

Senior Member
Apr 6, 2012
204
40
Dallas, Tx
I just want to say thank you motley, Im confident when flashing your kernels,
I also am on Virtulous, and your kernel with aroma installer. Cant get above 1.7Ghz
I'd like to stay at 1.8 unless I push sleep button, having difficulties just making 1.7 stay active,
I must do more research, and find the best rom for your kernal
Just wanted to stop in, show some love, and I appreciate all your work!!!!!!

Sent from my Transformer Prime TF201 using Tapatalk 2
 
I just want to say thank you motley, Im confident when flashing your kernels,
I also am on Virtulous, and your kernel with aroma installer. Cant get above 1.7Ghz
I'd like to stay at 1.8 unless I push sleep button, having difficulties just making 1.7 stay active,
I must do more research, and find the best rom for your kernal
Just wanted to stop in, show some love, and I appreciate all your work!!!!!!

Sent from my Transformer Prime TF201 using Tapatalk 2

Did you copy cpu3.sh to cpu5.sh?

Sent from my Transformer Prime TF201 using XDA Premium HD app
 

SOTK

Senior Member
Oct 11, 2010
548
120
Pacific Northwest
Me and motley agreed that the standard app for benchmarking the gpu, will be glbench as it provides accurate readings of raw gpu performance

Can you pls test glbench, 720p offscreen egypt, let me know if system crashes or if it does give results pls post your fps, thanks

Sent from my Desire HD

It didn't crash. I got 79 fps.

I ran 64Noid twice last night and received two reboots.

Also, when I pulled out my Prime tonight, I had an SOD. Had to force a reboot. Not sure what's going on here. I had none of these problems with 2.4. Can't think of anything I'm doing different than I did on 2.4. Same exact setup. The only thing that's changed has been the kernel.

Sent from my Transformer Prime TF201 using Tapatalk 2
 
S

shaky156

Guest
It didn't crash. I got 79 fps.

I ran 64Noid twice last night and received two reboots.

Also, when I pulled out my Prime tonight, I had an SOD. Had to force a reboot. Not sure what's going on here. I had none of these problems with 2.4. Can't think of anything I'm doing different than I did on 2.4. Same exact setup. The only thing that's changed has been the kernel.

Sent from my Transformer Prime TF201 using Tapatalk 2

Did u run the benchmark a few times?

Sent from my Desire HD
 

Gage_Hero

Senior Member
Jul 22, 2010
1,423
235
Virtuous Prime

Starting from the beginning since I dont want a brick in the end my planned update path is...
unlock with primetime and install cwm
Update cwm to 5.8.2
Backup rom
flash virtuous prime
flash mortley 2.5.8
flash sctoch bonnet

enjoy.... anyone see anything wrong or potential issues? Not a noob at flashing just don't wanna screw up since it's my first tab flash.
 

_motley

Senior Member
Aug 17, 2010
858
2,360
Starting from the beginning since I dont want a brick in the end my planned update path is...
unlock with primetime and install cwm
Update cwm to 5.8.2
Backup rom
flash virtuous prime
flash motley 2.5.8:)
flash sctoch bonnet
rename/backup /system/etc/cpu5.sh.bak
copy /system/etc/cpu3.sh to /system/etc/cpu5.sh
(these last 2 steps are needed since on Virtuous, Diamondback hacked the UI to call the cpu5.sh instead of the cpu3.sh for performance mode. Without this change you can't OC to 1.8)


enjoy.... anyone see anything wrong or potential issues? Not a noob at flashing just don't wanna screw up since it's my first tab flash.

That looks pretty good. I added some stuff above


hi
had a SOD overnight.
stock rom motley 2.5.8, habanero skript

It didn't crash. I got 79 fps.

I ran 64Noid twice last night and received two reboots.

Also, when I pulled out my Prime tonight, I had an SOD. Had to force a reboot. Not sure what's going on here. I had none of these problems with 2.4. Can't think of anything I'm doing different than I did on 2.4. Same exact setup. The only thing that's changed has been the kernel.

I'll check into the SOD. I let my tablet sleep every night on the nightstand and I haven't experienced this issue in any 2.x version of the kernel. I am on stock ROM .21 and I leave WiFi on all the time. I typically close the app I am using and return to the home screen so it is the foreground app before I turn the screen off. I have heard some say they had SOD when leaving the browser running in the foreground (not necessarily this kernel or ROM), but I cannot verify. I just do it because I don't want any javacript running while it is sleeping taking battery etc. You can call me anal LOL, but yeah.

Let me know your ROM and WiFi setup so we can compare notes. Also after the SOD, reboot and try to grab a copy of /proc/last_kmsg

I will also check into area of the code to see if any improvements can be made.

As far as the 64NOID stuff. I have this on my list of testing...to play some games etc. to see if I can recreate this issue. As after the SOD, if you have this issue occur again, after the reboot try to grab a copy of /proc/last_kmsg. We may just roll back these GPU changes and run some tests since they are not showing the benefits we had hoped for. This is also on my list of To-dos. I have already done more tweaking in this area to force the GPU clock to go higher, but it doesn't have any effect. In fact, my scores were lower when I forced the clock speeds! When I release the 2.6 alpha, we can do some group testing and see what works best for everyone.
 
  • Like
Reactions: SOTK and Gage_Hero

DidierSchnee

Member
Mar 8, 2012
26
1
Before sending my TFP to sleep i close all apps, turn wifi off and switch to energy saver mode.

ROM = Primeval Stock rooted WW .21

You'll get the kmsg as soon the next SOD occurs!

THX in advance
 

benefit14snake

Senior Member
Dec 23, 2011
819
174
Henrico, VA
Does the cpu and gpu share a unified bus to the memory? Or does the gpu need more voltage? Back in my gpu oc days (multiple 6600 and 6800, 7800 7900 8800 4870x2) lower gpu score meant the gpu was giving miscalculation meaning it had to do the same work several times. Usually meant heat and or voltage. Gosh I've ran 3dmark at least 3000x lol.

Just throwing out ideas...

As far as the memory bus is concerned it would seem likely that there is not too much additional bandwidth available. I'm thinking from a power consumption standpoint they probably made the tolerances pretty low so an over clock of 1.8 plus gpu over clock may be not enough memory bandwidth. Idk.

Sent from my Axiom MAXX!!
 

Top Liked Posts

  • There are no posts matching your filters.
  • 106
    _motley kernel for the Prime

    Disclaimer: You know the gig...I am not responsible for damaging your device or voiding your warranty. Play at your own risk!

    New version released for testing on 4.2.2 ROMs I see popping up since this is likely our future unless Asus releases something. I have been dev'ing for the N4 and N7 lately, so I haven't had a lot of time to keep up with the Prime. However, I wanted to stop by to share the kernel I built over the course of the last two nights for my own device.

    Features:

    • Forked from namidairo (thanks!)
    • OC to 1.7GHz
    • GPU OC to 600MHz - configurable from 520-650MHz (see below)
    • Voltage Control (use Trickster or System Tuner)
    • Removed system_mode from Asus - boots to 1.4GHz - control with standard apps (use Trickster or System Tuner)
    • FSYNC - 3 modes (see below) (use Trickster)
    • Linaro built with optimizations
    • Kernel log spam reduced - important for our crappy eMMC
    • optimized ARM RWSEM algorithm
    • Other misc tweaks (see github)

    Build 24 (beta)
    • Initial release for 4.2.2
    • AnyKernel install works on 32GB Primes only
    • Added blob based installs for CM 10.1 and PA. Read notes carefully below when choosing an install zip.

    View attachment motley_anykernel_tf201_build_24.zip - 32 GB Primes ONLY (any 4.2.2 custom ROM)
    View attachment motley_b24_CM.zip.zip - CM10.1 based ROMs only (blob based install for 32/64GB Primes)
    View attachment motley_b24_AOSP_PA.zip - PA/AOSP 4.2.2 ROMs only (blob based install for 32/64GB Primes) (only tested on PA thus far! Using PA ramdisk as donor.)

    Git repo:
    https://github.com/motley-git/android_kernel_asus_tf201


    GPU OC

    Examples:

    Code:
    echo 520 > /sys/devices/system/cpu/cpu0/cpufreq/gpu_oc

    Code:
    echo 650 > /sys/devices/system/cpu/cpu0/cpufreq/gpu_oc


    FSYNC Control

    Notes: I thought about combining these options, but many kernel apps already support these two options. So, I have them both and they can be controlled in combination to give us the 3 modes. If you set fsync_enabled = 0 it will be OFF regardless of how Dyn_fsync_active is set.

    3 Modes:

    Dynamic (default in b35 and higher)- fsync is asynchronous when screen is on, when screen is off it is committed synchronously
    dynamic fsync ON
    fsync ON
    Code:
    echo 1 > /sys/kernel/dyn_fsync/Dyn_fsync_active
    echo 1 > /sys/class/misc/fsynccontrol/fsync_enabled

    Off (best performance, less safe) - fsync is always asynchronous (b32 and prior builds)
    dynamic fsync OFF
    fsync OFF
    Code:
    echo 0 > /sys/kernel/dyn_fsync/Dyn_fsync_active
    echo 0 > /sys/class/misc/fsynccontrol/fsync_enabled

    Stock (safest) - fsync is always committed synchronously
    dynamic fsync OFF
    fsync ON
    Code:
    echo 0 > /sys/kernel/dyn_fsync/Dyn_fsync_active
    echo 1 > /sys/class/misc/fsynccontrol/fsync_enabled
    There is a lot of info out there on fsync, that will not be discussed here. I have run fsync off on several devices for awhile now and haven't experienced any issues. If you are using a device that is not stable and crashes alot, I recommend enabling it via init.d or script manager on boot.


    See all my old tf201 kernel versions for ICS here:

    Requirements (please read carefully!)
    • alpha version is stable for most, but changes often until we hit a good stable version. Let me know how it works!
    • Do a CWM backup so you can restore your boot.img and ROM if necessary!
    • 64GB tabs please use blob based install with ramdisk. Anykernel method may not work on 64GB tablets
    • Recommend 1.6 or 1.7GHz. I have scored 14300+ on Antutu with 1.7GHz. 1.8 is just not necessary IMO and generates too much heat.
    • ICS ROMs only
    • You must be rooted with busybox. Busybox is used for init.d support.
    • You must be unlocked (Asus Unlock Tool provided on their web site)
    • Official CWM with latest update (see http://xdaforums.com/showthread.php?t=1533697)
    • You should have your current full and a stock ROM including kernel on your sdcard (just in case). This is always a good idea anyhow.
    • Beware of third party tweaks that may conflict. If you have installed another app that will load conflicting kernel modules or provide overclocking capability for the stock kernel, please uninstall or disable this on boot before you install this kernel. For example, if you are using ATP Tweaks and are loading the CFQ or SIO schedulerd at boot, it can cause a crash as soon as the conflicting kernel module loads into memory. This kernel now includes the many features that folks were previously using kernel modules for. Since this kernel supports these features natively, you know longer need to load a kernel module manually or via a third party application unless the feature is not listed above. For example, if you use CIFS Manager, you should remove the requirement to load the CIFS kernel module in the settings as it is no longer needed with this kernel.

    Stock/AOKP versions
    • Still using stock broadcom WiFi drivers (module built by me match stock modules)
    • Still use same scaling scripts from before (cpu3.sh etc.) or installed 2.6.11 first and then flash this kernel to be sure you have them right.
    • Same system modes apply as before (system_mode=3 for 1.6GHz, system_mode=4 for 1.7GHz, system_mode=5 for 1.8GHz etc.)

    Generic kernel versions
    • Supports Gummy, Team EOS, and CM9 since they have the same WiFi driver implemented in their device trees.
    • No need to use an OC app (SetCPU, No-frills etc.) to set the clock.
    • WiFi driver is built-in (no kernel modules) using opensource broadcom drivers (nl80211)
    • KSM=y (ROM needs to enable KSM in dalvik and set scan in the init file like in CM9)
    • Overclock - needs init.d to be functional to run a init.d script on boot (see sample script below).
    • Same system modes apply as before (system_mode=3 for 1.6GHz, system_mode=4 for 1.7GHz, system_mode=5 for 1.8GHz etc.)
    • If you don't get deep sleep, make sure you have implemented the init.d script properly. "echo N > /sys/module/cpu_tegra3/parameters/no_lp" seems to be necessary on generic ROMs to get the proper deep sleep.



    "Lite" kernel
    This kernel version has been kept very close to stock form, except for OC and some basic features. The kernel won't be updated often, only when Asus releases new versions or an important fixable bug is discovered.

    "Lite" Features
    • Based on stock Asus v9.4.2.28 base
    • Simple I/O scheduler as the default
    • OC from 1.5 to 1.7GHz (system_mode 3 = 1.5GHz, 4 = 1.6GHz, 5 = 1.7GHz)
    • Compiler optimizations (-o2), ARM toolchain - Code Sourcery Lite 2010.09-51
    • initramfs changes from stock - init.d support (your ROM must have the /system/etc/init.d folder and busybox) and the default.prop has been updated with ro.secure=0 (for "adb remount")
    • CIFS support (built-in, no need for kernel module)
    • NTFS/exFAT modules are provided in stock ramdisk - uses stock Tuxera modules. See http://www.tuxera.com/) - modules are loaded during init automatically with included initramfs.
    • Kernel compression mode LZMA
    • Input devices - PS3 (stock), XBox (CONFIG_INPUT_FF_MEMLESS and CONFIG_JOYSTICK_XPAD_FF), Other input device support (CONFIG_HID_APPLE, CONFIG_INPUT_MOUSEDEV, CONFIG_HID_LOGITECH)
    • Networking/VPN - in addition to stock: CONFIG_L2TP, CONFIG_IP_ADVANCED_ROUTER, CONFIG_NET_IPIP, CONFIG_NET_IPGRE, CONFIG_IP_MULTIPLE_TABLES, CONFIG_INET_AH, CONFIG_INET_IPCOMP, CONFIG_INET_XFRM_TUNNEL, CONFIG_INET_XFRM_MODE_TUNNEL, CONFIG_INET_XFRM_MODE_BEET, CONFIG_L2TP_DEBUGFS, CONFIG_L2TP_V3, CONFIG_L2TP_IP, CONFIG_L2TP_ETH, CONFIG_PPP_MULTILINK, CONFIG_PPPOE

    v1.0.0

    Stock ROM with ramdisk and 1.7GHz heat script (init.d added, unsecured ramdisk)
    CWM flashable: View attachment motley_lite_stock_full_kernel_and_ramdisk_1.0.0_build_1.zip
    (Stock and stock-based ROMs only - 32GB and 64GB primes)

    Anykernel for Stock or AOKP (won't touch your ramdisk, heat, or init.d scripts)
    CWM flashable: View attachment motley_lite_anykernel_stock_and_AOKP_1.0.0_build_1.zip
    (32GB stock-based ROMs or AOKP primes only!)

    AOKP MS 6.1 with full ramdisk and 1.7 init.d OC script
    CWM flashable: View attachment motley_lite_v1.0.0b_build_1_for_AOKP_MS_6.1.zip (updated zip 7/16/2012 10:40pm - will OC to 1.7 on boot, WiFi is working for me)
    (AOKP only - 32GB and 64GB primes)

    Generic Anykernel for EOS, Gummy, CM9 (won't touch your ramdisk or init.d scripts)
    CWM flashable: View attachment motley_lite_generic_anykernel_v1.0.0_build_2.zip
    (32GB EOS, Gummy, CM9 primes only!)



    Alpha 3.x kernel
    A more experimental kernel, with stable versions along the way.
    View attachment 986646

    Features - includes alpha
    • Asus v9.4.2.28 base with Asus keyboard dock support
    • Overclocking options: 1.6, 1.7, or 1.8GHz performance mode (choice of Asus modes)
    • Compiler optimizations (-o2)
    • I/O schedulers - CFQ (default), SIO, NOOP, and deadline
    • ZRAM (must be enabled by a script...see example below)
    • MMC drivers back-ported from Nvidia 3.1 kernel
    • Governors - optimized Interactive (default), Performance, On Demand, Power Saver
    • initramfs changes from stock - init.d support (your ROM must have the /system/etc/init.d folder and busybox) and the default.prop has been updated with ro.secure=0 (for "adb remount")
    • CIFS support (built-in, no need for kernel module)
    • NTFS/exFAT modules are provided in stock ramdisk - uses stock Tuxera modules. See http://www.tuxera.com/) - modules are loaded during init automatically with included initramfs.
    • Kernel compression mode LZMA
    • Userspace voltage control/undervolting (UV)- experimental, don't set on boot until you test your settings (use SetCPU or other voltage tweaking tool) (thanks richardtrip)
    • Input devices - PS3 (stock), XBox (CONFIG_INPUT_FF_MEMLESS and CONFIG_JOYSTICK_XPAD_FF), Other input device support (CONFIG_HID_APPLE, CONFIG_INPUT_MOUSEDEV, CONFIG_HID_LOGITECH)
    • Networking/VPN - in addition to stock: CONFIG_L2TP, CONFIG_IP_ADVANCED_ROUTER, CONFIG_NET_IPIP, CONFIG_NET_IPGRE, CONFIG_IP_MULTIPLE_TABLES, CONFIG_INET_AH, CONFIG_INET_IPCOMP, CONFIG_INET_XFRM_TUNNEL, CONFIG_INET_XFRM_MODE_TUNNEL, CONFIG_INET_XFRM_MODE_BEET, CONFIG_L2TP_DEBUGFS, CONFIG_L2TP_V3, CONFIG_L2TP_IP, CONFIG_L2TP_ETH, CONFIG_PPP_MULTILINK, CONFIG_PPPOE
    • MMC - CONFIG_ZIMMER by HTC Studio Engineering (reference OneX kernel) - Experimental - can't find the source of this hack, so it may be an HTC original or a variant of another hack upstream. It increases vm swappiness to 100 by default to force swapping of dead RAM. The theory is to clear out the stale RAM and open up the RAM for something more useful. While this may be counter-intuitive to I/O performance since swapping equates to more disk i/o, the code changes also implement some changes to the block, fs, and mm portions of the kernel. Essentially, from what I can tell, it flags and handles disk operations (aka "bios") differently if they are involved in swap operations (going to or coming from swap). A "bio" is essentially a manifest of an ongoing I/O block device operation, what sectors and memory locations it contains etc. Once the RAM is freed up, I have also been increasing the Dalvik vm RAM settings in the build.prop (see Demandarin's build.prop post) to allow for more RAM consumption.
    • Turned off GENTLE_FAIR_SLEEPERS - Theoretically should improve UI performance on Android.
    • ARM toolchain - Code Sourcery Lite 2010.09-51
    • Many other performance tweaks and many Nvidia patches/bug fixes applied beyond the stock version. See the release notes or github for details.

    alpha v3.0.7.0 - fix deep sleep issue

    Stock ROM with ramdisk and 1.7GHz heat script (init.d added, unsecured ramdisk)
    CWM flashable: View attachment motley_stock_full_kernel_and_ramdisk_3.0.7.0_b302.zip(build 302)
    (Stock and stock-based ROMs only - 32GB and 64GB primes)

    AOKP build 40 with full ramdisk and 1.7 init.d OC script
    CWM flashable: View attachment z_motley_tfp_v3.0.7.0_b302_for_AOKP_build_40_1.7GHz.zip(build 302)
    (AOKP only - 32GB and 64GB primes)

    Anykernel for Stock or AOKP (won't touch your ramdisk, heat, or init.d scripts)
    CWM flashable: View attachment z_motley_anykernel_stock_and_AOKP_3.0.7.0_b302.zip (build 302)
    (32GB stock-based ROMs or AOKP primes only!)

    Generic Anykernel for EOS, Gummy, CM9 (won't touch your ramdisk or init.d scripts)
    CWM flashable: View attachment motley_tfp_anykernel_generic_3.0.7.0_b303.zip (build 303)
    (32GB EOS, Gummy, CM9 primes only!)


    alpha v3.0.6.10 - fixed wifi issues in 3.0.6.9

    Stock ROM with ramdisk and 1.7GHz heat script (init.d added, unsecured ramdisk)
    CWM flashable: View attachment motley_stock_full_kernel_and_ramdisk_3.0.6.10.zip (build 247)
    (Stock and stock-based ROMs only - 32GB and 64GB primes)

    AOKP build 40 with full ramdisk and 1.7 init.d OC script
    CWM flashable: View attachment z_motley_tfp_v3.0.6.10_for_AOKP_build_40_1.7GHz.zip (build 247)
    (AOKP only - 32GB and 64GB primes)

    Anykernel for Stock or AOKP (won't touch your ramdisk, heat, or init.d scripts)
    CWM flashable:View attachment z_motley_anykernel_stock_and_AOKP_3.0.6.10.zip (build 247)
    (32GB stock-based ROMs or AOKP primes only!)

    Generic Anykernel for EOS, Gummy, CM9 (won't touch your ramdisk or init.d scripts)
    CWM flashable: View attachment motley_tfp_anykernel_generic_3.0.6.10.zip (build 250)
    (32GB EOS, Gummy, CM9 primes only!)

    Older alpha 3.0.x versions can be found in post 803
    Many are stable on v3.0.5 if the above versions don't work for you.


    v2.6.11 build 100 2012-04-22

    Asus stock-based ROMs (aroma installer): View attachment motley_tfp_2.6.11_Turge_installer.zip
    Flash with CWM to run the installer and pick your heat!

    Other ROMs: see alpha version 3.0.x above as previous generic kernels discontinued due to wifi incompatibility other than AOKP.

    Installation

    1. Backup stock boot.img (just do a full backup with the latest CWM)
    See http://xdaforums.com/showthread.php?t=1533697

    2. Flash the proper zip with CWM


    --------------------------------------------------------------------------------------------------------------------------------------
    If you want to set your modes and play with the scripts manually as before see this post:
    http://xdaforums.com/showpost.php?p=24565491&postcount=278)
    Don't set your core_cap_level higher than 1400mV as it is the highest core voltage available.
    system_mode numbers (3=1.6GHz, 4=1.7GHz, 5=1.8GHz)

    --------------------------------------------------------------------------------------------------------------------------------------

    Going back to stock:
    If you want to revert to stock boot image including stock kernel from your backup
    Use your CWM backup. You can do a selective restore and just restore your boot.img

    If you want to revert back to your Asus scaling scripts
    Flash the stock scaling script: View attachment Stock_scripts_1_to_5.zip
    --------------------------------------------------------------------------------------------------------------------------------------

    Github rep: https://github.com/motley-git/TF201-Kernel

    --------------------------------------------------------------------------------------------------------------------------------------
    Past versions

    v2.5.8 build 71 (GPU Love) 2012-04-14
    CWM flashable zip: v2.5.8
    Aroma installer with heat scripts: View attachment motley_tfp_2.5.8_Turge_installer.zip

    v2.4 build 34 (Neon glitter) 2012-04-06
    CWM flashable zip: View attachment 986645

    v2.3 build 25 (Need for speed)
    CWM flashable zip: View attachment 978413

    v2.2 build 23 (No fools, more Asus Tweaks)
    CWM flashable zip: View attachment 976821

    Thanks to:
    • Asus for the awesome machine and kernel source
    • viperboy, jermaine151, MasterZen88, di11igaf, Diamondback and shaky156 for sharing their knowledge and tools
    • raman84 (RaYmAn) and others for the blob tools that work on transformer
    • Turge - awesome Aroma installer base creation for us!
    • amarullz - Aroma Installer
    • Doktaphex - touch recovery thread used by Turge for the touchscreen components.
    • AnyKernel - Koush and TeamDRH (and Jermaine for bringing it to the Prime)
    • All of those that have helped with testing! Special thanks to CekMTL for his troubleshooting skills and Deathmo for really going above and beyond to help out.

    Sample overclock init.d script example (needed for AOKP or generic roms). AOKP uses /system/etc/init.d/cpu_overclock, so I recommend you edit that file for AOKP since it is already working.

    Code:
    #!/system/bin/sh 
    echo 4 > /sys/module/cpu_tegra/parameters/system_mode
    echo 1350 > /sys/kernel/tegra_cap/core_cap_level
    echo 0 > /sys/kernel/tegra_cap/core_cap_state
    echo 0 > /sys/devices/platform/tegra_grhost/enable_3d_scaling
    echo 10 > /sys/module/cpu_tegra3/parameters/mp_overhead
    echo 9999999 > /sys/module/cpu_tegra/parameters/pwr_cap_limit_1
    echo 9999999 > /sys/module/cpu_tegra/parameters/pwr_cap_limit_2
    echo 9999999 > /sys/module/cpu_tegra/parameters/pwr_cap_limit_3
    echo 9999999 > /sys/module/cpu_tegra/parameters/pwr_cap_limit_4
    setprop power.saving.mode 1
    setprop persist.tegra.NV_FPSLIMIT 0
    setprop persist.sys.NV_FPSLIMIT 0
    setprop persist.sys.NV_POWERMODE 0
    
    echo 1700000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
    echo N > /sys/module/cpu_tegra3/parameters/no_lp

    Sample ZRAM init script (thanks show-p1984) (needs to be run as "su" using script manager):

    Code:
    #!/system/bin/sh
    # auto zram activation init script with busybox search
    # by show-p1984
    
    echo "[90ZRAM]: Firing up /system/etc/init.d/90zram";
    
    if [ ! -e /sys/block/zram0/disksize ] ; then
            echo "[90ZRAM]: ERROR unable to find /sys/block/zram0/disksize";
            echo "[90ZRAM]: Is this a ZRAM kernel?";
            echo "[90ZRAM]: ZRAM NOT ACTIVATED. (404)";
    else
            #find busybox in /system
            bblocation=$(find /system/ -name 'busybox')
            if [ -n "$bblocation" ] && [ -e "$bblocation" ] ; then
                    echo "[90ZRAM]: busybox found in:" $bblocation;
                    echo "[90ZRAM]: Setting ZRAM disksize.";
                    echo $((100*1024*1024)) > /sys/block/zram0/disksize
    
                    echo "[90ZRAM]: Starting ZRAM...";
                    bblocation=${bblocation%/*}
                    cd $bblocation
                    ./busybox mkswap /dev/block/zram0
                    ./busybox swapon /dev/block/zram0
    
                    echo "[90ZRAM]: ZRAM activated.";
            else
                    echo "[90ZRAM]: ERROR! busybox not found!";
                    echo "[90ZRAM]: Is busybox installed? Symlinks set?";
                    echo "[90ZRAM]: ZRAM NOT ACTIVATED. (404)";
            fi
    fi
    24
    3.0.x alpha thread

    Moved to OP 2012-06-29 with 3.0.6.9 release

    Alpha 3.0.x Testing

    • alpha version, experienced users and testers only please!
    • Do a CWM backup so you can restore your boot.img and ROM if necessary
    • 64GB tabs please use blob based install with ramdisk. Anykernel method may not work on 64GB tablets
    • Recommend 1.6 or 1.7GHz. I have scored 14300+ on Antutu with 1.7GHz. 1.8 is just not necessary IMO and generates too much heat.
    Stock/AOKP version
    • Still using stock broadcom WiFi drivers (module built by me match stock modules)
    • Still use same scaling scripts from before (cpu3.sh etc.) or installed 2.6.11 first and then flash this kernel to be sure you have them right.
    • Same system modes apply as before (system_mode=3 for 1.6GHz, system_mode=4 for 1.7GHz, system_mode=5 for 1.8GHz etc.)
    Generic kernel version
    • Supports Gummy, Team EOS, and CM9 since they have the same WiFi driver implemented in their device trees.
    • No longer need to use an OC app (SetCPU, No-frills etc.) to set the clock.
    • WiFi driver is built-in (no kernel modules) using opensource broadcom drivers (nl80211)
    • KSM=y (ROM needs to enable KSM in dalvik and set scan in the init file like in CM9)
    • Overclock - needs init.d to be functional to run a init.d script on boot (see sample script below).
    • Same system modes apply as before (system_mode=3 for 1.6GHz, system_mode=4 for 1.7GHz, system_mode=5 for 1.8GHz etc.)
    • If you don't get deep sleep, make sure you have implemented the init.d script properly. "echo N > /sys/module/cpu_tegra3/parameters/no_lp" seems to be necessary on generic ROMs to get the proper deep sleep.

    motley TFP kernel alpha 3.0.5 change-log
    • Added Simple I/O Scheduler (SIO) - by popular demand.
    • deadline i/o scheduler - setting tweaks back to stock. Starving a second write is probably best for performance.
    • block: block-exec: blk_execute_rq() - change hang_check timer code back to stock Linux/Nvidia (now also matches the HTC OneX kernel)
    • MMC - removed Asus debug printk spamming during normal operations
    • MMC - CONFIG_ZIMMER by HTC Studio Engineering (reference OneX kernel) - Experimental - can't find the source of this hack, so it may be an HTC original or a variant of another hack upstream. It increases vm swappiness to 100 by default to force swapping of dead RAM. The theory is to clear out the stale RAM and open up the RAM for something more useful. While this may be counter-intuitive to I/O performance since swapping equates to more disk i/o, the code changes also implement some changes to the block, fs, and mm portions of the kernel. Essentially, from what I can tell, it flags and handles disk operations (aka "bios") differently if they are involved in swap operations (going to or coming from swap). A "bio" is essentially a manifest of an ongoing I/O block device operation, what sectors and memory locations it contains etc. Once the RAM is freed up, I have also been increasing the Dalvik vm RAM settings in the build.prop (see Demandarin's build.prop post) to allow for more RAM consumption. So far, this combination (at least for me so far) has really given me good UI performance and I haven't had to kill the browser often like I did before.
    • MMC - increase command retries to 10 from 3 (Nvidia)
    • ARM: vfp: only clear vfp state for current cpu in vfp_pm_suspend (github)

    Stock ROM with ramdisk and 1.7GHz heat script (init.d added, unsecured ramdisk)
    CWM flashable: View attachment motley_stock_full_kernel_and_ramdisk_3.0.5.zip (build 151)
    (Stock based ROMs only - 32GB and 64GB primes)

    AOKP build 38 with full ramdisk and 1.7 init.d OC script
    CWM flashable: View attachment z_motley_tfp_v3.0.5_for_AOKP_build_38_1.7GHz.zip (build 151)
    (AOKP only - 32GB and 64GB primes)

    Anykernel for stock and AOKP (won't touch your ramdisk or init.d scripts)
    CWM flashable: View attachment z_motley_anykernel_stock_and_AOKP_3.0.5.zip (build 151)
    (32GB stock-based ROMs or AOKP primes only!)

    Generic Anykernel for EOS, Gummy, CM9 (won't touch your ramdisk or init.d scripts)
    CWM flashable: View attachment motley_tfp_generic_3.0.5_with_nvram.zip (build 152)
    (32GB EOS, Gummy, CM9 primes only!)
    Updated: CONFIG_ZIMMER was turned off in build 152 generic posted above. Here is a new zip with it it turned on: View attachment motley_tfp_generic_3.0.5b_with_nvram.zip

    motley TFP kernel alpha 3.0.4 change-log
    • Merged Asus 9.4.2.28 kernel changes (GPS etc. See github for details)
    • Removed CONFIG_ASUS_OVERCLOCK_MODES since I don't use it anymore

    Stock ROM with ramdisk and 1.7GHz heat script (init.d added, unsecured ramdisk)
    CWM flashable: motley_stock_full_kernel_and_ramdisk_3.0.4b.zip
    (32GB and 64GB primes)
    2010-06-16 Updated to 3.0.4b (ramdisk change) to USB mount issues with some USB drivers. Thanks to mrwookie6379 for bringing this to my attention when users of his ROM found it.

    Stock/AOKP Anykernel (won't touch your ramdisk, init.d, or heat scripts)
    CWM flashable: View attachment z_motley_anykernel_stock_and_AOKP_3.0.4.zip
    (32GB primes only)

    Generic Anykernel for EOS, Gummy, CM9 (won't touch your ramdisk or init.d scripts)
    CWM flashable: View attachment motley_tfp_generic_3.0.4_with_nvram_file.zip
    (32GB primes only)


    motley TFP kernel alpha 3.0.3 change-log

    • Userspace voltage control/undervolting (UV)- experimental, don't set on boot until you test your settings (use SetCPU or other voltage tweaking tool) (thanks richardtrip)
    • ZRAM enabled – experimental, needs init.d script "91zram" to enable 100MB zram disk (see below).
    • Updated SHA-1 implementation to hopefully improve boot performance
    • Memcopy enhancements
    • Nvidia patches:
    • tps80031 regulator calculation fixes.
    • Spi fixes
    • Allow CPU-supported unaligned accesses - may provide slight performance improvement
    • Improvement for solid state drives.
    • Turned off GENTLE_FAIR_SLEEPERS - Theoretically should improve UI performance on Android.
    • kernel/mutex.c: update to upstream 3.0 - this fixes various mutex_lock problems.
    • Recommend using 1.7GHz if you are looking for Overclock. 1.8GHz is still present, but the TFP does run quite hot and it is kind of overkill in my opinion.
    • Updated ARM toolchain to Code Sourcery 2010.09-51

    Stock/AOKP Anykernel zip only View attachment z_motley_anykernel_stock_and_AOKP_3.0.3.zip
    (stock or AOKP 32GB tabs only, won't alter your ramdisk. Recommended for stock-based ROMs on 32GB primes)

    Blob based install (flash with CWM) for STOCK only based on Asus stock .21 ramdisk. Should work for 32 and 64GB primes: [/COLOR] View attachment motley_stock_full_kernel_and_ramdisk_3.0.3.zip

    Blob based install (flash with CWM) for AOKP only based on it's build 38 ramdisk and includes proper 1.7 OC init.d script. Should work for 32 and 64GB primes: [/COLOR] View attachment z_motley_tfp_v3.0.0_for_AOKP_build_38_1.7GHz.zip
    (zip really should say 3.0.3, zImage is the same as the anykernel install)

    Generic version - confirmed working with the latest Gummy. EOS, and CM9 ROMs motley_tfp_generic_3.0.3_with_nvram_file.zip (Anykernel CWM zip, 32GB primes only!)



    Sample overclock init.d script example (needed for AOKP or generic roms). AOKP uses /system/etc/init.d/cpu_overclock, so I recommend you edit that file for AOKP since it is already working.

    Code:
    #!/system/bin/sh 
    echo 4 > /sys/module/cpu_tegra/parameters/system_mode
    echo 1350 > /sys/kernel/tegra_cap/core_cap_level
    echo 0 > /sys/kernel/tegra_cap/core_cap_state
    echo 0 > /sys/devices/platform/tegra_grhost/enable_3d_scaling
    echo 10 > /sys/module/cpu_tegra3/parameters/mp_overhead
    echo 9999999 > /sys/module/cpu_tegra/parameters/pwr_cap_limit_1
    echo 9999999 > /sys/module/cpu_tegra/parameters/pwr_cap_limit_2
    echo 9999999 > /sys/module/cpu_tegra/parameters/pwr_cap_limit_3
    echo 9999999 > /sys/module/cpu_tegra/parameters/pwr_cap_limit_4
    setprop power.saving.mode 1
    setprop persist.tegra.NV_FPSLIMIT 0
    setprop persist.sys.NV_FPSLIMIT 0
    setprop persist.sys.NV_POWERMODE 0
    
    echo 1700000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
    echo N > /sys/module/cpu_tegra3/parameters/no_lp

    Sample ZRAM init script (thanks show-p1984) (needs to be run as "su" using script manager):

    Code:
    #!/system/bin/sh
    # auto zram activation init script with busybox search
    # by show-p1984
    
    echo "[90ZRAM]: Firing up /system/etc/init.d/90zram";
    
    if [ ! -e /sys/block/zram0/disksize ] ; then
            echo "[90ZRAM]: ERROR unable to find /sys/block/zram0/disksize";
            echo "[90ZRAM]: Is this a ZRAM kernel?";
            echo "[90ZRAM]: ZRAM NOT ACTIVATED. (404)";
    else
            #find busybox in /system
            bblocation=$(find /system/ -name 'busybox')
            if [ -n "$bblocation" ] && [ -e "$bblocation" ] ; then
                    echo "[90ZRAM]: busybox found in:" $bblocation;
                    echo "[90ZRAM]: Setting ZRAM disksize.";
                    echo $((100*1024*1024)) > /sys/block/zram0/disksize
    
                    echo "[90ZRAM]: Starting ZRAM...";
                    bblocation=${bblocation%/*}
                    cd $bblocation
                    ./busybox mkswap /dev/block/zram0
                    ./busybox swapon /dev/block/zram0
    
                    echo "[90ZRAM]: ZRAM activated.";
            else
                    echo "[90ZRAM]: ERROR! busybox not found!";
                    echo "[90ZRAM]: Is busybox installed? Symlinks set?";
                    echo "[90ZRAM]: ZRAM NOT ACTIVATED. (404)";
            fi
    fi
    15
    Has Motley forsaken us for the Nexus? Loads of cool stuff going on over there but the Prime kernel scene seems dead as a doornail. :(

    I'm still here Loccy! Started working on some new stuff yesterday:eek:
    15
    New "Lite" version released

    Hi everyone,

    I have released a new "Lite" version (see the OP). This will provide a stock-like base and may tell us some things about stability issues that some report. I am wondering if it might help some that have issues with video reboots, SOD etc. As for as dock SOD, I have seen this before on the stock kernel and all variances of my custom kernel. I can go weeks without seeing it and then bam, it happens a couple times in a short period of time. Not sure why it happens. I once thought it happened most often when the dock battery is drained and the tablet was sleeping in the dock. But, I have seen it once on stock when the dock was plugged in and charging...so go figure!

    I'll try to pop back in soon to help to answer questions etc. Been really busy with work and family stuff. Hope you are all doing well!

    Cheers,

    motley
    14
    Thanks for making another kernel mr motley!

    The kernel is working wonders with Paranoid Android on my 64 GB Prime. Have you implemented any of the optimizations from your old kernel for eMMC? I don't know if the driver for it is updated or not.

    Typing is a dream now since there is almost no lag now.

    Hi Motley, can i ask would it be possible for you to include SIO IO scheduler in your kernel? we had it on ICS and it was faster than others, well felt like anyway!

    thanks

    The ROW scheduler is now default. It aids in the slow flash memory, especially ours, by prioritizing Read Over Write, which is what the acronym represents. ROW is nearly identical to SIO except what I said above. This makes it so that fsync writes are scheduled further back and do not interfere with main operation all the time. It still does not solve the problem presented with our slow eMMC, but it helps loads.

    Hey guys, I will include SIO in the next build. I forgot to add it in. It is still one of my favorite IO schedulers. Then we can run some tests and see how they do. Since we are now on a 3.x kernel, many of the fixes for eMMC are included that I had ported before.

    Thanks, is there a motley kernel for stock JB base 4.1? I couldnt find one! Thanks

    Sent from my Transformer Prime TF201 using XDA Premium HD app

    Latest beta works on stock Asus ROM but it breaks wifi.

    If I have some extra time over the next week, I'll see if I can create a build for stock since there seems to be some interest.

    The dev at Trickster MOD has added the ability to control the GPU OC in his latest beta and I have been using it. So, we should be seeing that released sometime in the near future. I will also likely be moving the kernel downloads to Goo.im so you can install kernels via their app if you like.