Hello everyone, sorry for my english I'm using google translate. I was able to compile the toolchain linaro 4.7.4 kernel 3.0.72 is that the whole of the AOSP rom from source Google Samsung Galaxy Nexus.
Kernel + ramdisk:
Kernel updated to: 3.0.72 (compiled with Linaro GCC 4.7.4-2013.06.26)
Compressed zImage – LZO
Disabled ro.adb.secure
Enable adb remount
Available I/O Schedulers: Deadline – CFQ – No-op
Available CPUFreq govenor: performance – powersave – userspace – ondemand – interactive – conservative – hotplug
Enabled CIFS support
Enabled NFS support
Enabled TUN support
Fix shell adb in standard GNU/Linux
Enabled Local Version
Enabled /proc/config.gz
Enabled extract config zImage
System:
AOSP Jelly Bean 4.3 build JWR66V (compiled with Linaro GCC 4.7.4-2013.06.26)
Installed busybox
The rom has no root, also lack the google apps, if you want you can install ClockworkMod recovery, the links at the bottom of the download.
Installation Guide:
Install the ClockworkMod Recovery
Download the rom and copy the zip on sdcard
Reboot into recovery, do wipe data / factory restore and flash it.
Download
- Galaxy-Nexus-4.3-linaro-odexed
- Galaxy-Nexus-4.3-linaro-deodexed
- Root SuperUser 1.51
- gapps-jb-4.3
Galaxy Nexus 4.3 compiled with toolchain linaro 4.7.4 with cflags -O3
Galaxy_Nexus_4.3_linaro_odexed_02
The rom odexed seems much smoother and faster, to increase the speed of the luncher, go to Settings - enabled Developer options - select scale window animation, transition and animator 0.5x.
Credits:
- Google Android Source
- Team Project Linaro
- EstebanSannin
If you like my rom thank me with a Donation
Guide for completing the sources linaro:
- You must have installed ubuntu 10.04 64-bit compilation but also goes with ubuntu 13.04 64-bit tested by me and the oracle java 6
- Download the source AOSP Android 4.3, the Android Developers website explains how to do
- Download the kernel sources of the Galaxy Nexus:
Code:
git clone https://android.googlesource.com/kernel/omap.git
cd omap
git branch -a (This command will list the various kernel versions)
master
* remotes/origin/android-omap-tuna-3.0-jb-mr2
remotes/origin/HEAD -> origin/master
remotes/origin/android-omap-3.0
remotes/origin/android-omap-panda-3.0
remotes/origin/android-omap-steelhead-3.0-ics-aah
remotes/origin/android-omap-tuna-3.0
remotes/origin/android-omap-tuna-3.0-ics-mr1
remotes/origin/android-omap-tuna-3.0-jb-mr0
remotes/origin/android-omap-tuna-3.0-jb-mr1
remotes/origin/android-omap-tuna-3.0-jb-mr1.1
remotes/origin/android-omap-tuna-3.0-jb-mr2
remotes/origin/android-omap-tuna-3.0-jb-pre1
remotes/origin/android-omap-tuna-3.0-mr0
remotes/origin/android-omap-tuna-3.0-mr0.1
remotes/origin/glass-omap-xrr02
remotes/origin/glass-omap-xrr35
remotes/origin/glass-omap-xrr64b
remotes/origin/glass-omap-xrr88
remotes/origin/linux-omap-3.0
remotes/origin/master
remotes/origin/sph-l700-fh05
git checkout remotes/origin/android-omap-tuna-3.0-jb-mr2 (choose the last updated version of the 3.0.72 kernel jelly beans)
git checkout -b remotes/origin/android-omap-tuna-3.0-jb-mr2
- Download the toolchain linaro 4.7-2013.07 (4.7.4) from here
- Set the variables to compile the kernel:
Code:
export ARCH=arm
export CROSS_COMPILE=/home/utente/Scrivania/Galaxy_Nexus/Toolchain-Linaro/arm-linux-gnueabi-linaro_4.7.4/bin/arm-unknown-linux-gnueabi-
make tuna_defconfig (This command will load the config gnexus)
make menuconfig (this command using a graphic interface you can select and load the modules in the kernel and change the configuration)
make (start compilation)
- To compile the source google AOSP, we have to download this toolchain linaro 4.7.4: http://snapshots.linaro.org/android/~linaro-android/toolchain-4.7-bzr/447/android-toolchain-eabi-4.7-daily-linux-x86.tar.bz2
- We extract and copy it in the folder: sorgenti-aosp/prebuilts/gcc/linux-x86/arm/ in this folder are the gcc toolchain to google, I do not to confuse it with the other folders called arm-linaro-4.7, now we just have to edit the file TARGET_linux-arm.mk which is located in the sorgenti-aosp/build/core/combo and let's change the name of the folder on TARGET_TOOLCHAIN_ROOT,
by this way:
Code:
# You can set TARGET_TOOLS_PREFIX to get gcc from somewhere else
ifeq ($(strip $(TARGET_TOOLS_PREFIX)),)
TARGET_TOOLCHAIN_ROOT := prebuilts/gcc/$(HOST_PREBUILT_TAG)/arm/arm-linux-androideabi-$(TARGET_GCC_VERSION)
TARGET_TOOLS_PREFIX := $(TARGET_TOOLCHAIN_ROOT)/bin/arm-linux-androideabi-
endif
in this way:
Code:
# You can set TARGET_TOOLS_PREFIX to get gcc from somewhere else
ifeq ($(strip $(TARGET_TOOLS_PREFIX)),)
TARGET_TOOLCHAIN_ROOT := prebuilts/gcc/$(HOST_PREBUILT_TAG)/arm/arm-linaro-$(TARGET_GCC_VERSION)
TARGET_TOOLS_PREFIX := $(TARGET_TOOLCHAIN_ROOT)/bin/arm-linux-androideabi-
endif
Once this is done you can start filling out the following site guides android source
Command to compile the AOSP rom odexed:
Code:
make DISABLE_DEXPREOPT=false WITH_DEXPREOPT=true
Oh I forgot before he ends up filling in the system you have to copy the folder that is created out of the blob proprietary Galaxy Nexus that you can take from your stock rom 4.3, otherwise the rom will not boot.
News:
I recompiled the rom with the cflags -O3, to set it in the sources I have modified the file TARGET_linux-arm.mk by so:
Code:
TARGET_arm_CFLAGS := -O2 \
-fomit-frame-pointer \
-fstrict-aliasing \
-funswitch-loops
# Modules can choose to compile some source as thumb.
TARGET_thumb_CFLAGS := -mthumb \
-Os \
-fomit-frame-pointer \
-fno-strict-aliasing
in so:
Code:
TARGET_arm_CFLAGS := -O3 \
-fomit-frame-pointer \
-fstrict-aliasing \
-funswitch-loops
# Modules can choose to compile some source as thumb.
TARGET_thumb_CFLAGS := -mthumb \
-O3 \
-fomit-frame-pointer \
-fno-strict-aliasing
I first tried to compile the rom exporting only the variables:
Code:
export CFLAGS="-O3 -pipe"
export CXXFLAGS="-O3 -pipe"
before giving the command make, but I was not sure so compiled with cflags -O3 , the compilation is completed without error but I have not tried the rom.
Compiling with the change to the file TARGET_linux-arm.mk[/ B] is finished without errors, the system.img who created me is 259.1 Mb, instead system.img with the export of cflags is 250 Mb, the same size as the system.img that I compiled without the cflags -O3, so I think that with the changes to the file are able to compile the cflags -O3, I just have to try the rom and take tests benchmark to see if the rom has been optimized and is smoother and faster.
I did some benchmark tests with Antutu on rom compiled with the cflags -O3, with freq to 1200 and governor performance did score of 7830, higher than the rom compiled without cflags -O3 and stock rom.
thanks bro.. i'm limited to 8 thanks per day.. i will thank you tomorrow
:thumbup:
Does this work with Linaro 4.8 ? I tried it and it wouldn't compile !
Shyam
I tried to compile the kernel with only 4.8 linaro but it is unstable and is across reboot
i have galaxy nexus with team win on it (and rooted) today i got the 4.3 jellybean update OTA, but when i click install, the phone restarts and go to team win, from there what are the steps to get the update? TNX
Sent from my Galaxy Nexus using xda app-developers app
homedog said:
i have galaxy nexus with team win on it (and rooted) today i got the 4.3 jellybean update OTA, but when i click install, the phone restarts and go to team win, from there what are the steps to get the update? TNX
Sent from my Galaxy Nexus using xda app-developers app
Click to expand...
Click to collapse
I don't think a rooted GNex can be updated through OTA. You better download the flashable zip of the stock rom and flash it through recovery, or you can download the image file from the source and flash it through fastboot.
Code:
#include <std_disclaimer.h>
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this KERNEL
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/
Introduction/About
This kernel is born because of me not satisfy with stock kernel, horrible heat management, some things doesn't works like firewall, vpn is buggy etc... But not meant to be stable as the stock kernel, just to hack things up
Should boot with all roms based on android 4.1.2, be it stock rom, stock based custom rom, lewa, baidu, aosp, cm10 etc as long as its 4.1.2 based roms.
Click to expand...
Click to collapse
Features:
Based on dhacker29's nokia x kernel, branch jellybean. He already patched it from original 3.4.0 to upstream 3.4.86 and many other fix/patch.
Things that i've added:
Further patched to upstream. Currently on 3.4.106.
Applied fix to compile with linaro toolchain, and i've compiled with custom linaro 4.9.3 2014.11 for generic arm processor by christopher83.
Modified cpu table, added more cpu frequencies; 122mhz, 700mhz, 806mhz and 902mhz.
Modified ion reserve value in boardconfig for higher userspace ram, now got 410mb same as stock 1.1.2.2 kernel.
Compiled with arm cortex-a5, neon, graphite and link time optimization flags.
Compiled with cpu supported unalign acccess. Supposedly to be faster than software based unalign access.
All cpu frequencies undervolted 50mv.
Disabled mpdecision service by default. mpdecision is qualcomm's userspace proprietary cpu hotplug control. Its closed source so no easy way to tweak it as u like or prefer, what u see is what u get.
Added Hotplug cpu governor for replacing the disabled mpdecision.
Added exFAT (Extended File Allocation Table) driver. exFAT is a Microsoft file system optimized for flash drives.
Added F2FS (Flash-Friendly File System) driver. F2FS is a flash file system initially developed by Samsung Electronics for the Linux operating system kernel.
Added and made fiops as default booting disk io scheduler. Use Trickster MOD to change it and change its parameter yourself.
Using slub memory allocator.
Optimized AES and SHA1 routines for ARM cpu architecture.
Optimized ARM RWSEM (read/write semaphore) algorithm.
Added Force Fastcharge. This feature allows force AC charging for any charger that is detected as USB (eg. PC USB ports, USB Car Chargers) and pull the full current the charger can support, in such a way as to speed up the time required for a complete battery recharge. By enabling this feature, the USB/ADB data transfers will be disabled (security limitation to protect your data). Default is disabled. Use Trickster MOD to enable/disable it.
Added Dynamic FSync. This feature has been developed by Faux123 and allows to dynamically manage the synchronous writes performed on file system (FSync). It uses asynchronous writes when the screen is on, instead of synchronous writes, to have better performance and a slightly lower battery drain, while when the screen is off the synchronous writes are re-enabled to flush all the outstanding writes and prevent possible data loss. Default is enabled. Use Trickster MOD to enable/disable it.
Added Dynamic dirty page writebacks. This feature has been developed by christopher83 and allows to dynamically manage the dirty page writebacks with two different intervals, one when the screen is on and another when the screen is off. It is based on a commit of Francisco Franco, but instead of using hard coded values and of disabling at all the dirty page writebacks while the screen is on (possibility of data loss), I preferred to use a customizable higher dirty page writebacks interval (15 seconds) than the default one (5 seconds) while the screen is on and a customizable default interval (5 seconds) when the screen is off. By using a higher interval we have better performance and less battery consumption, with a very low risk of data loss. Default is enabled.
Added more gpu steps and overclock it. Looking in specsheet, our Adreno203 support upto 400mhz but for cautious reason i've only compiled with max 350mhz. Use Trickster MOD to lower/raise it.
Enabled all tcp congestion control and changed default to westwood. Use Trickster MOD to change it yourself.
Zram and zsmalloc backported from kernel 3.10.
Using google snappy compression for zram.
Updated lowmemorykiller driver taken from Sony Xperia Z kernel.
Sysfs interface to control android logger, ie logcat and dmesg. Default is disable, to enable just do
Code:
echo "1" >> /sys/kernel/logger_mode/logger_mode
Using AnyKernel 2.0 based installer/flasher. Original AnyKernel is developed by Koushik Dutta aka Koush. Its a template for update.zip that can apply any kernel to any ROM, regardless of ramdisk. Basically what it does is to extract kernel directly from device, unpack it, repack ramdisk with supplied kernel in the installer and flash in onto device. AnyKernel 2.0 pushes the format even further by allowing kernel developers to modify the underlying ramdisk for kernel feature support easily using a number of included command methods along with properties and variables to customize the installation experience to their kernel. AnyKernel 2.0 is developed by osm0sis.
Added init.d support.
Probably many, many other things i forgot...
Click to expand...
Click to collapse
Changelog:
Code:
20150203
- Updated to upstream linux 3.4.106.
Code:
20150121
- Modified cpu table, added more cpu frequencies; 122mhz, 700mhz, 806mhz and 902mhz.
- Changed default minimum cpu frequency on boot to 122mhz.
- Changed default gpu frequency on boot to 320.
- Disable multicore power savings by default.
- Added sysfs interface to control android logger.
Code:
20150111
- Added and compiled using graphite optimization flag.
- Modified hardcoded value for all cpu frequencies, undervolted 50mv.
- Added motorola memutils for memcopy and memmove.
- Enabled arch random.
- Added and enabled lz4 compression support.
- Added and enabled google snappy compression support.
- Using google snappy as zram compressor.
- Some zram enhancement/fix.
- Some enhancement/fix for ksm.
- Enabled ksm.
- Some enhancement/fix for oom.
- Some enhancement/fix for net tcp.
- Changed tcp congestion control to westwood.
- Added freezable blocker call for some process.
- Disabled useless tuner.
- Disabled tracing.
- Disabled cleancache.
- Disabled zcache.
Code:
20141212
- Revert dynamic memory allocation of ION heap through CMA (Contiguous Memory Allocator) and using back old reserve value method.
- Changed ram reserved value for kgsl and audio. Hopefully no more out of memory kgsl error in logcat.
- Added F2FS driver.
Code:
20141210
- Using dynamic memory allocation of ION heap through CMA (Contiguous Memory Allocator) for more free ram. Now got 420mb free ram.
- Raised ram reserved value for MSM_PMEM_MDP_SIZE. Hopefully no more out of memory kgsl error in logcat.
- Disabled KSM as it might cause problem with CMA.
- Added Hotplug cpu governor and made it as default booting cpu governor.
- Removed msm_mpdecision.
- Added exFAT driver.
Code:
20141209
- Updated to upstream linux 3.4.105.
- Updated crosscompile toolchain to custom linaro 4.9.3 2014.11 for generic arm processor.
- Changed some memory values.
Code:
20141029
- Updated to upstream linux 3.4.104.
- Updated crosscompile toolchain to custom linaro 4.9.2 2014.10 for generic arm processor.
Code:
20140731
- Updated to upstream linux 3.4.100.
- Updated crosscompile toolchain to custom linaro 4.9.1 2014.07 for generic arm processor.
- Some changes in memory management.
Code:
20140716
- Updated to upstream linux 3.4.98.
Code:
20140701
- Updated to upstream linux 3.4.95.
- Removed uksm and use default ksm instead.
Code:
20140617
- Updated to upstream linux 3.4.93.
- Updated crosscompile toolchain to custom linaro 4.9.1 2014.06 for generic arm processor.
- Updated cleancache driver.
- Added 350mhz max gpu overclock.
- Made 300mhz as default booting gpu frequency.
- Removed Dynamic timer slack controller, it doesn't work properly.
Code:
20140609
- Updated to upstream linux 3.4.92.
- Added link time optimization flags.
- Modified cpu frequency table to define static hardcoded voltage values.
- Added true cd emulation capability.
- Increased zram disk size to 125mb.
Code:
20140531
- Modified ion reserve in boardconfig to give more ram to userspace.
- Backported zram from kernel 3.10.
- Backported zsmalloc from kernel 3.10.
- Disabled deprecated qcache and enabled newer zcache.
- Added uksm 0.1.2.2.
- Updated lowmemorykiller driver taken from Sony Xperia Z kernel.
- Updated crosscompile toolchain to custom linaro 4.9.1 2014.05 for generic arm processor.
- Added more compile flags.
- Updated anykernel 2 installer to fix flashing on twrp and twrp based recoveries.
- Added script to enable 75mb of zram and making uksm dynamic based on screen on/off.
Code:
20140521
- Updated to upstream linux 3.4.91.
- Disabled some useless modules and making some other as built-in.
- Featuring AnyKernel 2.0 based installer/flasher. Now kernel can be flashed onto any 4.1.2 based roms.
- Updated wifi binary modules taken from latest dhacker29's cm10.
Code:
20140517
- Temporary fixed for wifi by force allow loading of precompiled wifi modules taken from dhacker29's cm10 rom.
- Gave a name to the kernel.
- Updated to upstream linux 3.4.90
- Added more gpu steps and overclocked it.
- Added Force Fastcharge.
- Added Dynamic FSync.
- Added Dynamic dirty page writebacks.
- Added more neon optimizations.
- Added fiops disk io scheduler.
- Enabled all tcp congestion control and changed default from cubic to veno.
- Added Dynamic timer slack controller.
- Optimized AES and SHA1 routines for ARM cpu architecture.
- Optimized ARM RWSEM (read/write semaphore) algorithm.
- Fixed init.d permission.
- Updated ramdisk. All stock rom init script moved to ramdisk.
- Compressed kernel with xz compression. Smaller kernel and probably faster boot time.
Code:
20140510
- First public release.
Click to expand...
Click to collapse
What Works:
Everything else not mention below in Known issue and problem section.
Do tell me if u found bugs/things doesn't work so i can list and try to fix them.
Click to expand...
Click to collapse
Known Issues & Problems:
Currently, none that i know of.
Click to expand...
Click to collapse
Todo:
Replace qualcomm's thermald, proprietary userspace thermal management with other better opensource alternative like msm_thermal or intellithermal.
Overclock cpu.
Click to expand...
Click to collapse
Download:
Click to expand...
Click to collapse
Installation Instructions:
You need to already have custom recovery installed.
Backup your whole rom first for cautious reason.
Flash the zip.
Click to expand...
Click to collapse
Source:
As kernel is GPL licensed, i'm obliged to provide source for my modification but sorry, didn't have github account. Really hated git, hard to use. So i've uploaded source as patch tarball, its to be patch onto vanilla linux kernel 3.4.0 from kernel.org.
Click to expand...
Click to collapse
Thanks To/Credits:
God
Linus Torvalds and whole linux kernel team and contributors.
Google
Nokia
dhacker29
christopher83
show-p1984
osm0sis
and many, many other kernel devs whose their source i've cherry picked here and there...
Click to expand...
Click to collapse
XDA:DevDB Information
NULL, Kernel for the Nokia X
Contributors
mdfzhi
Kernel Special Features: force fastcharge, dynamic fsync, dynamic dirty page writebacks, overclock gpu, custom cpu table and cpu frequencies, preundervolted cpu voltage
Version Information
Status: Stable
Current Stable Version: 20150203
Stable Release Date: 2015-02-03
Current Beta Version: 20140531
Beta Release Date: 2014-05-31
Created 2014-05-10
Last Updated 2015-02-03
Reserved
Reserved
so if I compile from dhacker's source then wifi won't work? duh sheet
AngSanley said:
so if I compile from dhacker's source then wifi won't work? duh sheet
Click to expand...
Click to collapse
thats not what i said. he's using the same source to built his aosp and wifi works with it.
mdfzhi said:
thats not what i said. he's using the same source to built his aosp and wifi works with it.
Click to expand...
Click to collapse
So what caused your kernel cant support wifi?
Sent from my Nokia_X using Tapatalk
AngSanley said:
So what caused your kernel cant support wifi?
Sent from my Nokia_X using Tapatalk
Click to expand...
Click to collapse
i can't build the modules needed using compat-wireless source provided by nokia, its in dhacker29's repo too. if i'm not mistaken its compat-wireless for kernel 3.2. strange why nokia didn't use higher compat-wireless from higher kernel as those can be build against our lower kernel 3.4.
i can build modules using compat-wireless for kernel 3.8, 3.9 or even 3.12 but doesn't know correct order to insmod the modules one by one.
just now installed.... Have to check the performance and battery performance.... Will report after testing......
Thnx for custom kernel.... Waiting for this...
Sent from my Nokia_X using XDA Free mobile app
i've managed to oc gpu, added force fastcharge, added dynamic fsync but wifi still doesn't work. dang ar6003 so hard to work with
mdfzhi said:
i've managed to oc gpu, added force fastcharge, added dynamic fsync but wifi still doesn't work. dang ar6003 so hard to work with
Click to expand...
Click to collapse
Waiting for overclocked , stable kernel
Thanks for your efforts, Sir.
i've updated to 20140517. wifi works!
now that wifi finally works albeit i'm using dirty hack to make it works, kernel graduated from alpha to beta. happy flashing and testing
mdfzhi said:
i've updated to 20140517. wifi works!
now that wifi finally works albeit i'm using dirty hack to make it works, kernel graduated from alpha to beta. happy flashing and testing
Click to expand...
Click to collapse
Waiting to use it in aosp rom.
Great work.
i've updated to 20140521.
featuring anykernel 2.0 flasher, now kernel can be flashed onto any android 4.1.2 based rom, be it stock rom, stock based custom rom, lewa, baidu, aosp, cm10 etc as long as its 4.1.2 based roms then it will boot. i've tested on stock, b-rom, lewa and baidu.
the anykernel 2.0 flasher got problem with twrp tho, so must use cwm to flash it.
mdfzhi said:
i've updated to 20140521.
featuring anykernel 2.0 flasher, now kernel can be flashed onto any android 4.1.2 based rom, be it stock rom, stock based custom rom, lewa, baidu, aosp, cm10 etc as long as its 4.1.2 based roms then it will boot. i've tested on stock, b-rom, lewa and baidu.
the anykernel 2.0 flasher got problem with twrp tho, so must use cwm to flash it.
Click to expand...
Click to collapse
hi bro. How do u think, if we merged my kernel project with yours?
merge how?
mdfzhi said:
i've updated to 20140521.
featuring anykernel 2.0 flasher, now kernel can be flashed onto any android 4.1.2 based rom, be it stock rom, stock based custom rom, lewa, baidu, aosp, cm10 etc as long as its 4.1.2 based roms then it will boot. i've tested on stock, b-rom, lewa and baidu.
the anykernel 2.0 flasher got problem with twrp tho, so must use cwm to flash it.
Click to expand...
Click to collapse
I'm using your kernel with Baidu48.
Can u please tell me which tool will be best for this kernel?
sumondhk1 said:
I'm using your kernel with Baidu48.
Can u please tell me which tool will be best for this kernel?
Click to expand...
Click to collapse
do read first post.
mdfzhi said:
do read first post.
Click to expand...
Click to collapse
i read the first post and already used tickster mod.
Is there any other mod i meant ?
Thanks for the kernel, its a pleasure to use updated kernel alwyes.
got many other kernel manager in googleplay but i've only tested with trickster mod. u could try others but theres no guarantee that they'll work.
Hello @mdfzhi, first off, thank you for this great kernel. I'm loving the kernel but anyway, I have a question. Inside Trickster MOD, I see that the Core #1 is offline all the time. Is this how it's supposed to be? Will it only use the second core of the CPU only under heavy load, is that correct? I tried using the Performance governor, but the second core is still not running. Perhaps it's controlled by the CPU itself, I don't know.
I'm still sad to see that I can't watch 720p smoothly even with this kernel. But anyhow, thank you for your great work. I'll be using this for a few days to make sure there's no stability issues.
Kernel for Sony Smartwatch 3 [LCA43]
Kernel Features:
Interactive governor
FIOPS scheduler
ZRam with multi stream functionality and lz4 compression
UKSM
LZ4 kernel compression
Latest Linux kernel release
Latest Linaro toolchain with cortex-a7 optimizations
Click to expand...
Click to collapse
Actual versions:
tetra 2.27.1
Same as version 2.26, except:
2 active cores
UKSM disabled
tetra 2.27
4 active cores
Minor changes and optimizations
Download tetra_2.27
Download tetra_2.27.1
Click to expand...
Click to collapse
Version history:
tetra 2.26.1
Same as version 2.26, except:
2 active cores
UKSM disabled
tetra 2.26
4 active cores
Increased swap size
Defconfig optimizations
tetra 2.25.1
Same as version 2.25, except:
2 active cores
UKSM disabled
tetra 2.25
4 active cores
Some optimizations in Defconfig
Changed CrossCompiler to optimized
tetra 2.23.1
Same as version 2.23, except:
2 active cores
UKSM disabled
tetra 2.23
4 active cores
Minor changes
Updated compiler flags
tetra 2.22
Updated with android-wear-6.0.1_r0.5 kernel sources
tetra 2.12.1
Interactive governor tweaks
Scheduler updates
Minor updates
Compiled with Linaro GCC 5.3-2016.02
tetra 2.11
Interactive governor tweaks
Swap subsystem improvements
tetra 2.10
Interactive governor tweaks
tetra 2.9
Linux 3.10.101
tetra 2.8
Interactive governor improvements
Disable some unnecessary logging
tetra 2.72
Optimize math options
Changes in swap subsystem when ZRAM is used.
tetra 2.7
lz4 compressed kernel
tetra 2.6
Linux kernel 3.10.100
tetra 2.5
Linux kernel 3.10.99
Changed size for ZRAM Swap
Compiled with Linaro 5.3 RC1
tetra 2.2
Interactive governor
FIOPS scheduler
ZRam with multi stream functionality and lz4 compression
UKSM support (More CPU-friendly and effectively than KSM) with various governors
Kernel mode NEON support
Disabled HIGHMEM (as our device have only 512 MB RAM)
Optimized ARM RWSEM algorithm
Improved performance in lz4 compression and decompression
USB MTP Mode (thanks to @craigcharlie).
See this post for instruction.
Click to expand...
Click to collapse
Versions 1.x.
Note: This kernel based on @crpalmer's LCA43 kernel.
tetra 1.22
Linux kernel 3.10.98
Interactive governor improvements
Kernel mode NEON support
New ZRam release, with multi stream functionality and new lz4 algorithm
Added FIOPS scheduler, and set as default
Disabled HIGHMEM
Turn on some ARM-related features
USB MTP Mode
UKSM support (More CPU-friendly and effectively than KSM)
Optimized ARM RWSEM algorithm
Download tetra_1.22
Click to expand...
Click to collapse
Installation:
In fastboot type:
fastboot flash boot tetra.img
fastboot reboot
Click to expand...
Click to collapse
Code:
[COLOR="Red"]DISCLAMER[/COLOR]
Your warranty is now void.
I am not responsible for bricked devices, dead SD cards, thermonuclear war, or
you getting fired because the alarm app failed. Please do some research if you
have any concerns about features included in this ROM before flashing it!
YOU are choosing to make these modifications, and if you point the finger
at me for messing up your device, I will laugh at you.
If you like my work- Donate to me
Contributors:
alex6600
crpalmer
Version Information
Status: Stable
Created 2016-01-29
Last Updated 2016-05-11
hello,
could you give some details as to what the differences/advantages/benifits to using this over crpalmers kernel?
thanks.
Most of changes - is updated Linux kernel patch version. And new linaro toolchain with cortex-a7 optimizations
Thanks will give it a try.
Sent from my GT-N7105 using Tapatalk
And one more change- disabled KSM. Due to poor efficiency.
Memory economy with ksm ~4%, and higher cpu usage.
OP updated with version 1.12.1
I'll give a try! what advantage between 2/4 core?
lupick said:
I'll give a try! what advantage between 2/4 core?
Click to expand...
Click to collapse
Take look at this post.
But really needed 4 cores for watch?.. The decision is yours.
Stock Sony kernel use only 2 cores.
Always nice to see development for this watch! Will give it a try later.
Is there a Kernel that can fully disable burn in safety settings? So that ambient mode can be similar to normal mode on the sw3?
axzy said:
Is there a Kernel that can fully disable burn in safety settings? So that ambient mode can be similar to normal mode on the sw3?
Click to expand...
Click to collapse
If you do that say goodbye to your battery in 3 hours
For those who want to test.
tetra 1.12.2:
Add LZ4 compression algorithm for ZRAM (fastest compression & decompression).
Increased vm.page-cluster.
Click to expand...
Click to collapse
Download tetra_1.12.2
alex6600 said:
For those who want to test.
Download tetra_1.12.2
Click to expand...
Click to collapse
2 or 4 cores?
Veter0k said:
2 or 4 cores?
Click to expand...
Click to collapse
2 cores.
I can compile with 4 cores, if you need.
PS. Now I've implement UKSM in kernel. UKSM more CPU-friendly, and effective then KSM.
alex6600 said:
2 cores.
I can compile with 4 cores, if you need.
PS. Now I've implement UKSM in kernel. UKSM more CPU-friendly, and effective then KSM.
Click to expand...
Click to collapse
Waiting 1.12.3 with ukms and 4 cores. :good:
OP updated with beta/test versions.
Feedback is very welcome!
For beta-version users- please give output :
cat /proc/meminfo
dumpsys meminfo
grep '' /sys/kernel/mm/uksm/*
great work , nice to see some development... will try later on and give feedback and comparison with crpalmers kernel
OP Updated with version 1.12.4.
Only one change with 1.12.3- Improve performance in lz4 compression and decompression.
For now betas will be 4 cores (if you need 1,2,3-cores version- PM me).
I had been using crpalmer's kernal for 5 months with no power drains.
When I loaded up version 2 of your kernal I had a massive power drain when the watch was disconnected from my phone for a couple of hours. This was the same problem as I had with the default kernal. I have attached the wear battery stats screenshot
Sorry, I was unable to get any logs for you as I had to load crpalmer's kernal back onto my watch as I need to know the watch will last the day.
foggy69 said:
I had a massive power drain when the watch was disconnected from my phone for a couple of hours. This was the same problem as I had with the default kernal.
Click to expand...
Click to collapse
In stock and crpalmer kernel, sometimes, when watch disconnected from phone, same result was in many people.
I'm think that not depends directly from the kernel. But, if it happens again- try to get dmesg, logcat -v time and top -m 30 -n 1.
Thanks for feedback.
For now- differences between version 1.12.4 and crpalmer's kernel:
Linux kernel 3.10.96 (latest for now)
Add improved lz4 compression algorithm for ZRAM (faster compression & decompression of zram swap than default LZO)
Add UKSM (Much more CPU-friendly and effectively than KSM)
Increased vm.page-cluster
Some changes in defconfig
Latest Linaro toolchain (version 5.2-2015.11-2) with ARMv7 optimizations