[Asus  Eee Pad Transformer Prime] _motley:
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.

#!/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):

#!/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