[KERNEL][exp: (3.1.10) #5] Firtecy Kernel - a modified Kowalski Kernel - LG Optimus 2x

This is an EXPERIMENTAL Kernel that continues the work of @pengus77, but with some additions i make. That means a huge thank to pengus77! Please check his thread http://forum.xda-developers.com/showthread.php?t=2097788
This kernel is completely based on his latest release.
This kernel only supports newbl and will only work on roms with 3.1 support (these are atm only 4.4 (aka KitKat) Roms and tonyps TheRom that is compatible with the 3.1 kernel
Features:
Features from the kowalski kernel:
3.1.10 Kernel Version
bcmdhd wifi driver
Dynamic FSync
Overclock to 1.5 GHz (Not all phones work well with 1.5 Ghz!)
Undervolting
MultiCore Sched PM
Auto Hotplug
Fast charge
Wifi PM
and many more ...
Features added by me:
PKSM as enhanced KSM module
Built in ZRAM Modul (that makes it possible to use the android default zram solution)
Possibility to use deferred_timer for (P)KSM
0, 16 or 32 MB Ramhack
Support for extra free kbytes tunable (more a ROM dev feature)
Custom vibration force/strength through sysfs
120MHz and 168 MHz frequencies for more battery savings during wakelock
Known bugs:
Camera Bug
Gyro does not work properly
If you want to report a new kernel bug, you must describe your problem in detail, post your kmsg and last_kmsg (if available) (you can found them under /proc/kmsg and /proc/last_kmsg) otherwise the rule is: no log = no issue
Downloads:
This is more a personal kernel build. I have built these kernels for weeks for myself and used them in private. Now i just want to share them with you guys!
You can download the kernels here: https://s.basketbuild.com/devs/firtecy/p990/kernel/3.1/ They are labeled like this: firtecy_kernel_X-N.zip where X is either exp for an experimental kernel release and stable for a stable kernel and where N is the build number (this number is always incremental!)
Sourcecode:
You can find the sourcecode at github: https://github.com/Firtecy/kowalski/ the branch is exp. The config file is: "kowalski_defconfig"
The intention of this thread is to continue the 3.1 kernel development pengus started. Development related questions or discussions are appreciated
Have fun!
And to quote pengus77:
On a side note... i'm not really responsible if you decide to test it and your phone melts... right?
Thanks to:
@hjunii for bringing up 3.1 Kernel
@pengus77 for the kowalski kernel
XDA:DevDB Information
Firtecy Kernel - a modified Kowalski Kernel, Kernel for the LG Optimus 2x
Contributors
Firtecy, pengus77, hjunii, djnoxd
Kernel Special Features:
Version Information
Status: Beta
Current Beta Version: 3.1#5
Beta Release Date: 2014-08-25
Created 2014-10-31
Last Updated 2014-10-31

Changelog:
firtecy_kernel_exp-5 - 25.8.2014
Added intellactive governor (thanks to @faux123) and powersave
Some bug fixes
Added sync framework and exfat support (but not active for the moment)
Added a "kowalski touch driver" and dt2w files (since they are not stable enough for now, they are disabled)
The reason why I disabled those things is that I didn't had the time to test them. If you want to test them you have to build your own version. Especially for other developers that can be interesting.
Click to expand...
Click to collapse
firtecy_kernel_exp-4 - 25.6.2014
minor updates/fixes from other kernels
Added the min screen on freq back
Added a sysfs attribute to change the min screen on freq
when disabling pksm, it will be disabled completely
Screen on min freq
If your screen is on, this frequency is the lowest that will be used. If your screen goes off for whatever reason the cpu will go to the normal min frequency.
Note: It seems like 120MHz and 168MHz are stable even for screen on, but since there was the question if i can add it, here you go:
How to change the value:
Code:
echo [value] > /sys/module/cpu_tegra/parameters/cpu_screen_on_min_cap
You have to use a value that is in the frequency table, but you have to echo the frequency in KHz, so 120MHz -> 120000KHz:
Code:
echo 120000 > /sys/module/cpu_tegra/parameters/cpu_screen_on_min_cap
This option does not stick after a reboot
According to @BS86 this release should be more stable than exp3 and thanks for testing!
Click to expand...
Click to collapse
firtecy_kernel_exp-3 - 13.6.2014
tons of updates to zram/zcache (picked from faux123 tegra kernels)
crypto: added optimized AES and SHA1 routines
added permission checker for binder IPC
tegra video driver updates
Fixed the voltage table -> all values below 770 MHz are not supported by the regulator chip (thanks to all who helped researching! )
Click to expand...
Click to collapse
firtecy_kernel_exp-2 - 8.6.2014
Added the possibility to change the vibration force (or vibration strength)
Added 120MHz and 168MHz as cpu frequencies
Enabled 600 mV as lowest undervolting value (undervolting is very dangerous if you go too low! Better stay at defaults)
Fixed a nvidia or lg cpu derp.
For security reasons it is not possible that the cpu will go underneath 216MHz when screen is on!
Option to use: No ramhack, 16Mb Ramhack or 32 Mb Ramhack!
Vibration force:
to change the vibration force echo a number between 0 and 127 to /sys/module/tspdrv/parameters/vibration_force. Where 127 is the highest and the default. 20 seems to be the last noticeable value.
Code:
echo [force] > /sys/module/tspdrv/parameters/vibration_force
This option does not stick after a reboot. Rom support will be available (hopefully) soon. I'm preparing a patch for tonyps Rom, so that it is possible to change it in the Rom settings.
120 and 168Mhz:
These values are useful for the case where the phone helds a wake lock. This means because of the wake lock it won't enter deepsleep. The phone would run at 216MHz even if it isn't needed. Running at 168Mhz or even 120MHz should result in a better battery life.
If you experience any problems, try to raise the voltage at this frequencies to a higher value and test again. If it is still unstable report it (with a description of the problem) and change the minimum frequency to 216Mhz.
Click to expand...
Click to collapse
firtecy_kernel_exp-1 - 1.6.2014
Initial release
Base source: kowalski kernel
Added built in ZRam (no need to use zram.ko for longer)
Added PKSM as replacement for ksm (http://code.google.com/p/pksm/)
Enabled deferred timers for pksm and ksm
Notice: Since there is no ksm available, but pksm you will not find the options for ksm in any app. All configurations are no longer under: /sys/kernel/mm/ksm/ , but under: /sys/kernel/mm/pksm/
To deativate pksm run this command as root:
Code:
echo 0 > /sys/kernel/mm/pksm/run
This option does not stick after a reboot
Click to expand...
Click to collapse

How to build your own kernel:
You need a Linux PC with either 32 or 64Bit. I'm using Linux Mint Debian Edition 64Bit. And you will need the following packages:
build-essential kernel-package libncurses5-dev bzip2
For example to install them run:
Code:
sudo apt-get install -y build-essential kernel-package libncurses5-dev bzip2
Hint: If you run into troubles with installing packages, check this post
1. Create a new directory for your kernel building (for example: ~/kernel_p990)
Code:
mkdir ~/kernel_p990
2. cd to your kernel dir
Code:
cd ~/kernel_p990
3. Run this command to download the source code for compiling:
Code:
git clone https://github.com/Firtecy/kowalski
4. Now we need to download the toolchain for compiling: Download it from here: http://www.linaro.org/downloads/ under the Bare-Metal section. It is labeled GCC ARM Embedded. Version: 4.7-2013.q3 ; Release: 13.11
5. Now extract the toolchain to a new dir, for example: ~/kernel_p990/toolchain
6. Now we have to define some values for the build enviroment:
Set the CROSS_COMPILE var to your path where you have downloaded your toolchain. For example:
Code:
export CROSS_COMPILE=~/kernel_p990/toolchain/gcc-arm-none-eabi-4_7-2013q3/bin/arm-none-eabi-
Notice at the end you find this prefix: arm-none-eabi- this is not a dir, but the prefix for all files inside the bin directory(for example: arm-none-eabi-gcc)
7. Set the architecture (processor architecture) for which the kernel should be build. So in our case arm:
Code:
export ARCH=arm
and
Code:
export SUBARCH=arm
8. The next step defines the configurations for the kernel (in this case the configuration is named kowalski_defconig)
Code:
make kowalski_defconfig
Notice: this takes the configuration from the file located under arch/arm/configs and will write it to .config
9. Now we can finally build the kernel :victory: Run:
Code:
make
You will find the kernel under: arch/arm/boot/zImage. You just have to copy the zImage and replace the one found in the flashable zip (e.g. my downloads) under kernel/zImage with your own.
Troubleshooting:
Before you can build or run any from step 8 or 9 you have to make sure that all three vars are set correctly (so ARCH, CROSS_COMPILE and SUBARCH). You can check it by running:
Code:
echo $ARCH
for ARCH (for CROSS_COMPILE and SUBARCH it is the seem, but you have to change the name)
If they are not set correctly repeat step 6 and 7.
If you get a compile error first try to run:
Code:
make clean
and try to build the kernel again.
How to diff 2 files or directories in linux
If you are running linux and have two files on your computer and you want to find the differences you can run the diff command in the terminal.
Let's say you have a file "hjunii/traps.c" and "kowalski/traps.c", this is how you compare them:
Code:
diff -u hjunii/traps.c kowalski/traps.c
The command will compare both and will print an output to the terminal that will be similar to this:
Code:
@@ -27,6 +27,7 @@
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/sched.h>
+#include <linux/slab.h>
#include <linux/atomic.h>
#include <asm/cacheflush.h>
@@ -483,25 +484,38 @@
static inline void
do_cache_op(unsigned long start, unsigned long end, int flags)
{
- struct mm_struct *mm = current->active_mm;
- struct vm_area_struct *vma;
-
if (end < start || flags)
return;
+ return flush_cache_user_range(start, end);
+}
+
+static inline int
+do_cache_op_iov(const struct iovec __user *uiov, unsigned long cnt, int flags)
+{
+ int i, ret = 0;
+ unsigned long len = cnt * sizeof(struct iovec);
+ struct iovec *iov = kmalloc(len, GFP_KERNEL);
- down_read(&mm->mmap_sem);
- vma = find_vma(mm, start);
- if (vma && vma->vm_start < end) {
- if (start < vma->vm_start)
- start = vma->vm_start;
- if (end > vma->vm_end)
- end = vma->vm_end;
+ if (iov == NULL) {
+ ret = -ENOMEM;
+ goto out;
+ }
- up_read(&mm->mmap_sem);
- flush_cache_user_range(start, end);
- return;
+ if (copy_from_user(iov, uiov, len)) {
+ ret = -EFAULT;
+ goto out_free;
}
- up_read(&mm->mmap_sem);
+
+ for (i = 0; i < cnt; ++i) {
+ unsigned long start = (unsigned long __force)iov[i].iov_base;
+ unsigned long end = start + iov[i].iov_len;
+ do_cache_op(start, end, flags);
+ }
+
+out_free:
+ kfree(iov);
+out:
+ return ret;
}
/*
@@ -550,6 +564,10 @@
do_cache_op(regs->ARM_r0, regs->ARM_r1, regs->ARM_r2);
return 0;
+ case NR(cacheflush_iov):
+ do_cache_op_iov((const struct iovec __user *)regs->ARM_r0,
+ regs->ARM_r1, regs->ARM_r2);
+
case NR(usr26):
if (!(elf_hwcap & HWCAP_26BIT))
break;
Each line starting with a "+" are lines that were added, for example:
Code:
+#include <linux/slab.h>
On the other side lines starting with a "-" are lines that were deleted, for example:
Code:
- struct mm_struct *mm = current->active_mm;
A line like the following should just show you were you find the changes:
Code:
@@ -550,6 +564,10 @@
with the following syntax:
Code:
@@ -[line number in 1. file],[number of lines that were printed from 1.file] + [line number in 2. file], [number of lines that were printed from 2.file] @@
But the basic syntax is the following:
Code:
diff -u [base file] [file containing the changes you want to display]
You can also compare whole directories!
ProTip: Install the program "colordiff". It will color the console output, that means the output is more readable!
Syntax:
Code:
diff -u [base file] [file containing the changes you want to display] | colordiff
Example:
Code:
[COLOR="Plum"]@@ -1,8 +1,8 @@[/COLOR]
[COLOR="Red"]-VERSION = 2
-PATCHLEVEL = 6
-SUBLEVEL = 39
-EXTRAVERSION = .4
-NAME = Flesh-Eating Bats with Fangs[/COLOR]
[COLOR="RoyalBlue"]+VERSION = 3
+PATCHLEVEL = 1
+SUBLEVEL = 10
+EXTRAVERSION =
+NAME = "Divemaster Edition"[/COLOR]

Nice New kernel!

will try that one as soon as possible.
thanks for the work.we dont let the 2x die!

Will this work on Mokee rom?
If you don't understand the subconscious you will always bump into it calling it fate...

themistoklisv said:
Will this work on Mokee rom?
If you don't understand the subconscious you will always bump into it calling it fate...
Click to expand...
Click to collapse
Which kernel is included by default in the Rom or can you paste a link?
Gesendet von meinem LG-P990 mit Tapatalk

[email protected]#126
If you don't understand the subconscious you will always bump into it calling it fate...

themistoklisv said:
[email protected]#126
If you don't understand the subconscious you will always bump into it calling it fate...
Click to expand...
Click to collapse
Then I am sorry, but it is not compatible.
The 3.1 kernel differs too much to be compatible with ROMs that are build for an 2.6 kernel
Gesendet von meinem LG-P990 mit Tapatalk

Oh my God, amazing! Finally some serious development! Great work Firtecy. Time to bust CM11 back on my device and try this ramhacked wonder

Oh...i see...this why no ksm settings
Btw...i would suggest a higher ramhack like 32mb like m1 ramhack...but this kernel works great so far...just classic low ram problem exist (well...obviously) need to set an aggresive value (i'm using swap without zram)
Do i need to post a logcat?
Sent from my LG-P990

Will this work with cm 10.1?
Wysłane z mojego LG-P990 przy użyciu Tapatalka

No, it has a different wifi driver, sorry for my english
Sent from my ME173X using XDA Free mobile app

Okey
Wysłane z mojego LG-P990 przy użyciu Tapatalka

The first change:
Okay since there was the wish that there should be a 32 MB ramhack version and the poll showed the same i built one. You can find it at my basketbuild https://s.basketbuild.com/devs/firtecy/p990/kernel/3.1/.
So the 32 MB Ramhack version is labeled: firtecy_kernel_exp-1_32MB-RH.zip and the previous one is labeled: firtecy_kernel_exp-1_16MB-RH.zip
I have flashed it and in the settings app, I had 372MB available (Settings > About)
The second change:
Since i have been asked to explain how to build my kernel from source code i wrote a small how to in the third post of the thread. Check it and maybe try to build it for your own.
If you wish i can also write how to change the kernel by your own. (So add new stuff or something similiar)

Great job firtecy...downloading asap
--------------------++-
Very fluid ui with 32rh and with performance control app i can set lmk on boot (dunno..the one come with rom 0527 always reset after reboot)
So far...no bugs for me (except known bugs)
Btw i'm using swap only..no zram but zram works too (i turned it off)
Sent from my LG-P990

Would like to know if random reboot and phone always waking is a kernel related or rom?
Sent from my LG-P990 using Tapatalk 2

mkchan said:
Would like to know if random reboot and phone always waking is a kernel related or rom?
Sent from my LG-P990 using Tapatalk 2
Click to expand...
Click to collapse
I haven't got random reboots or always waking phone in fact on 3.1 kernel there's a bug for waking phone (need press power button twice or thrice)
Maybe your memory full ocupied and still lot queued job to do...that's sometimes happen to me...that's why i need to set lmk a bit aggresive...
Well as dev always said...log or it's not happen
Sent from my LG-P990

Firtecy said:
How to build your own kernel:
You need a Linux PC with either 32 or 64Bit. I'm using Linux Mint Debian Edition 64Bit. And you will need the following packages:
build-essential kernel-package libncurses5-dev bzip2
For example to install them run:
Code:
sudo apt-get install -y build-essential kernel-package libncurses5-dev bzip2
Click to expand...
Click to collapse
I have even had to install libc6-dev-i386 in my 64bit vbox image, then the make seems to have started working :good:
If you wish i can also write how to change the kernel by your own. (So add new stuff or something similiar)
Click to expand...
Click to collapse
+1 (if you don't mind and have time for it )
Thanks!

Thx for your dev. but can you build this kernel for su660?
나의 LG-P990 의 Tapatalk에서 보냄

Related

[Guide] How to compile stock LG2X kernel from scratch

For some weeks I've been trying to set up an environment in which I'm able to compile the stock kernel for my LG2X on my own. Following various tips and hints were unsuccessful and several restarts were required until a kernel which was compiled on my own box was running on my phone. Since I had to patch together all the information because there was no complete guide available/findable, I'd like to list here all the steps from the beginning which I had to perform to boot my own compiled kernel. Maybe this is also useful for others. Note: again, this approach is for compiling STOCK kernel sources which are based on the public sources from LG. (The build process for CM is different and cannot be applied to stock kernels)
I began with a freshly installed Ubuntu 11.10 32bit (http://www.ubuntu.com/download/ubuntu/download) running in a VMware virtual machine. In it I entered a shell and switched to root to be able to perform the required actions:
Code:
sudo su -
The next step was to add the package-sources for the cross-compiler toolchain (see next step) and to bring the system up to the latest state.
Code:
add-apt-repository ppa:linaro-maintainers/toolchain
apt-get update
apt-get upgrade
This takes some time but after it's finished I installed the cross-compiler toolchain to be able to compile applications for the LGs ARM platform
Code:
apt-get install gcc-linaro
apt-get install gcc-linaro-arm-linux-gnueabi
After this I've been ready to begin with the source-works. I closed the root-shell and opened up a new one (required to make sure that all paths are correctly set and recognized again). Test it by executing
Code:
arm-linux-gnueabi-gcc --version
When this executed without error I started with downloading the sources for version 20q from http://www.lg.com/global/support/opensource/opensource-detail.jsp?detailCustomerModelCode=LGP990 into a new directory.
When the file 'LGP990_Android_Gingerbread_V20Q.zip' had finished downloading I unzipped the complete package by
Code:
unzip LGP990_Android_Gingerbread_V20Q.zip
resulting in three files. A README, one .tar.gz with the ROM sources and finally one .tar.gz with the kernel sources. To unpack the kernel sources I issued
Code:
tar xvzf P990_Stardop_IFX_GingerBread_V20Q_KERNEL.tar.gz
and the complete LG 20q kernel sources were finally located in a new 'kernel' subdirectory.
The kernel sources themselves are not yet ready to be compiled. This is because LG most probably has a different/special build environment and our standard environment produces errors and unbootable kernels. Some patching is required to succeed to a running kernel.
Firstly the compilation options for the wireless module have to be tweaked as the default settings break compilation at some unused variables in the source. This is set to be just treated as warnings for the wireless-module by applying following patch:
Code:
diff -u -r original/kernel/drivers/net/wireless/bcm4329/Makefile kernel/drivers/net/wireless/bcm4329/Makefile
--- original/kernel/drivers/net/wireless/bcm4329/Makefile 2012-01-31 04:36:22.000000000 -0800
+++ kernel/drivers/net/wireless/bcm4329/Makefile 2012-02-14 11:41:59.972467559 -0800
@@ -53,7 +53,7 @@
-DBCMLXSDMMC \
-DBCMPLATFORM_BUS \
-DSDIO_ISR_THREAD \
- -Wall -Wstrict-prototypes -Werror \
+ -Wall -Wstrict-prototypes -Werror -Wno-unused-but-set-variable -Wno-array-bounds \
-I$(SRCROOT) \
-I$(SRCROOT)/include \
-I$(SRCROOT)/shared \
Also the main Makefile requires tuning to contain the proper compilation options to produce code which correctly runs on the phone (thanks to spica1234 for providing me with the correct options).
Code:
diff -u -r original/kernel/Makefile kernel/Makefile
--- original/kernel/Makefile 2012-01-31 04:36:21.000000000 -0800
+++ kernel/Makefile 2012-02-28 13:21:20.038003539 -0800
@@ -323,12 +323,12 @@
CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ \
-Wbitwise -Wno-return-void $(CF)
-MODFLAGS = -DMODULE
-CFLAGS_MODULE = $(MODFLAGS)
+MODFLAGS = -DMODULE -mfloat-abi=softfp -mfpu=vfpv3-d16 -mtune=cortex-a9 -march=armv7-a -fno-common -fsingle-precision-constant -fno-gcse -funsafe-math-optimizations -ffinite-math-only -fgcse-las -fgcse-sm -fivopts -fbtr-bb-exclusive -fvect-cost-model -fmodulo-sched -fmodulo-sched-allow-regmoves
+CFLAGS_MODULE = $(MODFLAGS)
AFLAGS_MODULE = $(MODFLAGS)
LDFLAGS_MODULE = -T $(srctree)/scripts/module-common.lds
-CFLAGS_KERNEL =
-AFLAGS_KERNEL =
+CFLAGS_KERNEL = -mfloat-abi=softfp -mfpu=vfpv3-d16 -mtune=cortex-a9 -march=armv7-a -fno-common -fsingle-precision-constant -fno-gcse -funsafe-math-optimizations -ffinite-math-only -fgcse-las -fgcse-sm -fivopts -fbtr-bb-exclusive -fvect-cost-model -fmodulo-sched -fmodulo-sched-allow-regmoves
+AFLAGS_KERNEL = -mfloat-abi=softfp -mfpu=vfpv3-d16 -mtune=cortex-a9 -march=armv7-a -fno-common -fsingle-precision-constant -fno-gcse -funsafe-math-optimizations -ffinite-math-only -fgcse-las -fgcse-sm -fivopts -fbtr-bb-exclusive -fvect-cost-model -fmodulo-sched -fmodulo-sched-allow-regmoves
CFLAGS_GCOV = -fprofile-arcs -ftest-coverage
# 20100705, [email protected],[LGE_START]
@@ -544,7 +544,8 @@
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
KBUILD_CFLAGS += -Os
else
-KBUILD_CFLAGS += -O2
+KBUILD_CFLAGS += -Ofast
+KBUILD_CFLAGS += $(call cc-option, -Wno-unused-but-set-variable)
endif
We're not finished yet. We've to create the correct kernel configuration and (again) apply some patches. I'm not so sure about these changes but the kernel refused to boot on my phone without them. It is again provided by spica1234 and contains a number of changes. I did not research which of these changes allowed to boot since most of them are generally useful and I didn't do the work trying them out one-by-one.
Code:
make ARCH=arm star_ifx_defconfig
Code:
--- .config.orig 2012-02-28 13:22:09.322001449 -0800
+++ .config.spica_working 2012-03-02 08:41:21.757696988 -0800
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.32.9-HP_2X_Xtreme_RC12-RevOTF
-# Tue Feb 28 13:22:09 2012
+# Tue Feb 28 13:24:15 2012
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -56,16 +56,16 @@
CONFIG_LOG_BUF_SHIFT=18
CONFIG_GROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
-# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_RT_GROUP_SCHED=y
# CONFIG_USER_SCHED is not set
CONFIG_CGROUP_SCHED=y
CONFIG_CGROUPS=y
# CONFIG_CGROUP_DEBUG is not set
# CONFIG_CGROUP_NS is not set
-CONFIG_CGROUP_FREEZER=y
-CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FREEZER is not set
+# CONFIG_CGROUP_DEVICE is not set
# CONFIG_CPUSETS is not set
-CONFIG_CGROUP_CPUACCT=y
+# CONFIG_CGROUP_CPUACCT is not set
# CONFIG_RESOURCE_COUNTERS is not set
# CONFIG_SYSFS_DEPRECATED_V2 is not set
CONFIG_RELAY=y
@@ -121,7 +121,8 @@
# GCOV-based kernel profiling
#
# CONFIG_GCOV_KERNEL is not set
-# CONFIG_SLOW_WORK is not set
+CONFIG_SLOW_WORK=y
+# CONFIG_SLOW_WORK_DEBUG is not set
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
@@ -146,10 +147,10 @@
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
# CONFIG_DEFAULT_AS is not set
-# CONFIG_DEFAULT_DEADLINE is not set
-CONFIG_DEFAULT_CFQ=y
+CONFIG_DEFAULT_DEADLINE=y
+# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
-CONFIG_DEFAULT_IOSCHED="cfq"
+CONFIG_DEFAULT_IOSCHED="deadline"
CONFIG_FREEZER=y
#
@@ -1676,16 +1677,25 @@
# File systems
#
CONFIG_EXT2_FS=y
-# CONFIG_EXT2_FS_XATTR is not set
-# CONFIG_EXT2_FS_XIP is not set
+CONFIG_EXT2_FS_XATTR=y
+# CONFIG_EXT2_FS_POSIX_ACL is not set
+# CONFIG_EXT2_FS_SECURITY is not set
+CONFIG_EXT2_FS_XIP=y
CONFIG_EXT3_FS=y
CONFIG_EXT3_DEFAULTS_TO_ORDERED=y
CONFIG_EXT3_FS_XATTR=y
# CONFIG_EXT3_FS_POSIX_ACL is not set
# CONFIG_EXT3_FS_SECURITY is not set
-# CONFIG_EXT4_FS is not set
+CONFIG_EXT4_FS=y
+CONFIG_EXT4_FS_XATTR=y
+# CONFIG_EXT4_FS_POSIX_ACL is not set
+# CONFIG_EXT4_FS_SECURITY is not set
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_FS_XIP=y
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
+CONFIG_JBD2=y
+# CONFIG_JBD2_DEBUG is not set
CONFIG_FS_MBCACHE=y
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
@@ -1769,7 +1779,22 @@
# CONFIG_ROMFS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
-# CONFIG_NETWORK_FILESYSTEMS is not set
+CONFIG_NETWORK_FILESYSTEMS=y
+# CONFIG_NFS_FS is not set
+# CONFIG_NFSD is not set
+CONFIG_SMB_FS=m
+# CONFIG_SMB_NLS_DEFAULT is not set
+CONFIG_CIFS=m
+# CONFIG_CIFS_STATS is not set
+# CONFIG_CIFS_WEAK_PW_HASH is not set
+# CONFIG_CIFS_UPCALL is not set
+# CONFIG_CIFS_XATTR is not set
+# CONFIG_CIFS_DEBUG2 is not set
+# CONFIG_CIFS_DFS_UPCALL is not set
+# CONFIG_CIFS_EXPERIMENTAL is not set
+# CONFIG_NCP_FS is not set
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
#
# Partition Types
After these patches, were finally ready to compile the kernel
Code:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- STAR_TMUS_REV=TMUS_10 TARGET_STAR_HWREV=TMUS_E TARGET_MODEM=ifx
Now go grab some coffee. This takes a while. When it's finished, the compressed kernel-image is found in
arch/arm/boot/zImage
For the experienced kernel-hackers this might be enough. It wasn't for me and I wanted to have it easily installable like other kernels from the forum. So I downloaded a kernel zip package, eg. the one from spica1234 at http://forum.xda-developers.com/showpost.php?p=18253696&postcount=1
Any version will do as long as the kernel is contained in a .zip archive and installable via CWM. In my case I downloaded the kernel zip in a new directory 'build' and unpacked it.
Code:
unzip HP_2x_RC12-RevOTF-PRO.zip
This creates the subdirectories 'data', 'kernel', 'META-INF' and 'system'. Here we now have to replace the kernel and the kernel-modules with our self-compiled versions.
Code:
cd ~build/kernel
rm zImage
cp ~kernel/arch/arm/bootzImage ./zImage
cd ../system/lib/modules
rm *.ko
find ~kernel/ -name "*.ko" -exec cp '{}' . \;
cd ../../..
One last step, creating the zip which carries the new kernel:
Code:
zip -r -FS new_kernel.zip data/ kernel/ META-INF/ system/
This new_kernel.zip can now be flashed with CWM and should boot without problems.
For easier usage, I've attached the three patched files in the build_set.zip attachment so you don't have to patch the stock files by hand. Just extract it in the kernel directory and overwrite the existing files.
I hope I did not make any error in the compilation of this information and that it can be helpful for the interested reader.
Thanks goes especially to spica1234 and the material which he provided me to come through to a successful boot.
Very good explanation. I wish such useful info available b4 an year for me while i published 1st kernel at samdroid for my older device
Sent from my LG-P990 using Tapatalk
Bloody hell! I never realised it took so much to simply compile!!!! (I build JEE systems at work, but we scripted most of it, stuff that used to take a day and half now takes a few minutes).
Excellent guide Kosi! I'm a linux and kernel n00b and I understand your instructions pretty well.
Ubuntu 11 is not the best choice though I currently use it myself. v11 can cause problems, especially when not compiling kernels but compiling Android ROMs.
Ubuntu 10 is the better choice.
Also there is a VMware Android Developer Environment available for download, providing nearly all the necessary tools for compilation preinstalled and set-up.
http://forum.xda-developers.com/showthread.php?t=1386918
You can compile your kernel directly in the virtual machine p.ex. on your Windows 7 PC. That's the way I do it for my kernel. VMware Player is available for free, so you can just run the image.
Also install VMware tools, so you can set up a directory for exchanging files between your Windows Host and the virtual Machine Ubuntu. In this directory I usually paste the compiled kernel for further use under Win7 (making the CWM update ZIPs).
Just note that you should have a dual/quadcore CPU strong enough to host the linux and compile the kernel in an acceptable time (usually it takes me 1-2 minutes for complete kernel compilation under virtual machine ubuntu using -j24 option on make).
Can u guys add a bit in this tutorial, example, at which file / folder need to edit for OCUV, add swap function, enable ext4, etc.. seriously like this thread..
Sent from my LG-P990 using XDA
ghadap said:
Can u guys add a bit in this tutorial, example, at which file / folder need to edit for OCUV, add swap function, enable ext4, etc.. seriously like this thread..
Click to expand...
Click to collapse
As the topic of this thread is just how to get the stock kernel compiling I won't step into modifying it. Please open a separate thread for that.
Small hints though, OCUV requires deeper code changes, swap and ext4 can just be enabled in the kernel config.
Hey,
I follow the guide, but ubuntu (11.04 64 bit) doesn't find the pack
Code:
apt-get install gcc-linaro
so I can't install the pack
Code:
apt-get install gcc-linaro-arm-linux-gnueabi
Edit: With Ubuntu 11.10, it works.
Has anyone compiled and booted a kernel successfully with this guide? Can't get mine to boot, so before I look any further I'd thought I'd check if anyone else has gotten a workable kernel out of it.
TrymHansen said:
Has anyone compiled and booted a kernel successfully with this guide? Can't get mine to boot, so before I look any further I'd thought I'd check if anyone else has gotten a workable kernel out of it.
Click to expand...
Click to collapse
Which version it shows "arm-linux-gnueabi-gcc --version"
If its 4.6.2?
Sent from my LG-P990 using Tapatalk
Stefan Gündhör said:
Ubuntu 11 is not the best choice though I currently use it myself. v11 can cause problems, especially when not compiling kernels but compiling Android ROMs.
Ubuntu 10 is the better choice.
Also there is a VMware Android Developer Environment available for download, providing nearly all the necessary tools for compilation preinstalled and set-up.
http://forum.xda-developers.com/showthread.php?t=1386918
You can compile your kernel directly in the virtual machine p.ex. on your Windows 7 PC. That's the way I do it for my kernel. VMware Player is available for free, so you can just run the image.
Also install VMware tools, so you can set up a directory for exchanging files between your Windows Host and the virtual Machine Ubuntu. In this directory I usually paste the compiled kernel for further use under Win7 (making the CWM update ZIPs).
Just note that you should have a dual/quadcore CPU strong enough to host the linux and compile the kernel in an acceptable time (usually it takes me 1-2 minutes for complete kernel compilation under virtual machine ubuntu using -j24 option on make).
Click to expand...
Click to collapse
Ubuntu 11.xx is still a good choise if you want to build ROMs it is very easy to set it up (it is just one step more then on 10.xx)
i also use ubuntu 11.10 and it is working fine for me with building android ROMs
and of course it can take 1-2 minutes but it also can take up to an hour for a kernel to compile
it all depends on how good your computer is
on my home computer i build a kernel in a matter of seconds (clobber builds)
but when i am at my girlfriend my build (also clobber) on her craptop will take up to 20 minutes
nice guide kosi2801!
spica1234 said:
Which version it shows "arm-linux-gnueabi-gcc --version"
If its 4.6.2?
Click to expand...
Click to collapse
Yap. This
Code:
arm-linux-gnueabi-gcc (Ubuntu/Linaro 4.6.2-14ubuntu2~ppa1) 4.6.2
to be specific.
Trymhanson, Try to downgrade with 4.5.3. 4.6.2 is causing this unable to boot issue which was not happening earlier with 4.6.1
try this
apt-get install gcc-4.5-arm-linux-gnueabi
apt-get install g++-4.5-arm-linux-gnueabi
rm /usr/bin/arm-linux-gnueabi-gcc
ln -s /usr/bin/arm-linux-gnueabi-gcc-4.5 /usr/bin/arm-linux-gnueabi-gcc
Thanks, that did it. I also had to change the -Ofast flag back to -O2 as -Ofast wasn't recognized by the 4.5.3 version. So now I'm thinking maybe the -Ofast flag was to blame, so I'll try a fresh 4.6.2 install with -O2. Thanks again.
TrymHansen said:
Thanks, that did it. I also had to change the -Ofast flag back to -O2 as -Ofast wasn't recognized by the 4.5.3 version. So now I'm thinking maybe the -Ofast flag was to blame, so I'll try a fresh 4.6.2 install with -O2. Thanks again.
Click to expand...
Click to collapse
no may be ofast is not to blame but 4.6.2. Ofast was introduced with 4.6.0 and doesnt work with < 4..6. 4.6.2 doesnt even work with o2. And IMHO kernel compiled with 4.5.3 ismore stable
Sent from my LG-P990 using Tapatalk
http://db.tt/jN4fU9Vz
Thisis my recent sr3r2 patch created against original v20Q sourceswith Full OTF V2.0. Anybody interested can use it. It will transform to fully noo oc version of SR3r2
It wont work with CM but only stock v20q
Sent from my LG-P990 using Tapatalk
For anyone interested, currently I'm building with
arm-linux-gnueabihf-gcc (Ubuntu/Linaro 4.6.1-7ubuntu2) 4.6.1
For my usage patterns the kernel works pretty well, but YMMV.
Thanks spica for the updated patch!
kosi2801 said:
For anyone interested, currently I'm building with
arm-linux-gnueabihf-gcc (Ubuntu/Linaro 4.6.1-7ubuntu2) 4.6.1
For my usage patterns the kernel works pretty well, but YMMV.
Thanks spica for the updated patch!
Click to expand...
Click to collapse
Use my recent cflags its most stable and used in sr3r2
As you are using gnueabihf relace mfloat-abi=softfp with mfloat-abi=hard
Sent from my LG-P990 using xda premium
spica1234 said:
Use my recent cflags its most stable and used in sr3r2
As you are using gnueabihf relace mfloat-abi=softfp with mfloat-abi=hard
Click to expand...
Click to collapse
Thanks for the tip. I already thought about that some time ago but forgot again. Gained some additional performance points
Can someone upload a compiled stock v20q kernel flashable zip? Thanks!

[CM7 KERNEL][OCT12] symbi0sis v1.3.1 | smooth, fast, stable, powersaving + GuesteOC

symbi0sis kernel v1.3.1 + GuesteOC v2.2.1 (TrymHansen)
- If you like my work, you could vote positively for this thread or buy me a beer.
Info: Better Battery Stats is working! Use the latest XDA-version.
If you want to test you device's stability: Try TrymHansen's Myrt Torture Tester! - this tool is awesome : http://forum.xda-developers.com/showthread.php?t=1645938 -- read the instructions first!​
Donators from XDA:
flat__line
Actarus-73
Thank you !! :good:
Donators from Handy-Faq:
amoebe1 (on XDA: franky_z)
Thank you too !! :good:
Also many donations have been made already for my Hybrid ROM which includes this kernel, thanks again!
Basic description:
a symbiosis of temasek's CM7 kernel and guestekrnL (stock) - Thanks, appreciation and credits to temasek, as his kernel has been used as base for this kernel! :good:
this is a Cyanogenmod 7 kernel! not for Stock
focus on stability, smoothness and great power consumption
Linux 2.6.32.59
allows Ramhack from 0-96 MByte (this means 0-96 MB additional real RAM, lowering GPU Ram), can be set easily with GuesteOC app, reboots aren't affected by ramhack.
comes with TrymHansen's famous GuesteOC app - following kernel-features can currently be controlled with it:
stepless or stepful over- and underclocking from 216 MHz - 1450 MHz
complete deactivation of second cpu core (and reactivation of course)
maximum screen-off frequency
second cpu core activation speeds/times and auto-calculation of those
change of IO schedulers and read-ahead buffer
swappiness
3-way virtual RAM enhancement: you can choose between Swap, ZRam, CompCache and enable/disable them on the fly
disable fsync (can be used for higher benchmarks) - attention, disabling is bad for your data in case of sudden power loss and also it can both decrease or increase power consumption
touch-light brightness (101 intensity steps choosable)
special feature: changing auto-backlight intensity (8 intensity steps choosable)
on-the-fly changing of virtual RAM size (16 - 256 MByte)
slider for vibration intensity (from very low to strong)
changing Ramhack-Size directly from within GuesteOC with a slider - 0-96 MB; modifying boot image and reboot happens automatically on applying
app for Undervolting included (MyrtUV by TrymHansen)
Default CPU speed is 1000 MHz - but you can OC using the included app of course
...
The toolchain affects: stability, smoothness, performance & power consumption.​
Changelog latest version:
v1.3.1
additional UHOC (ulta high OC) version is available too with default clock of 1,1 GHz and max clock 1,536 GHz - the frequency/voltage table looks like this:
<=216 MHz - 770 mV \ <=389 MHz - 770 mV \ <=503 MHz - 800 mV \ <=760 MHz - 875 mV \ <=912 MHz - 925 mV \ <=1150 MHz - 1025 mV \ <=1312 MHz - 1125 mV \ <=1408 MHz - 1225 mV \ <=1536 MHz - 1325 mV
Click to expand...
Click to collapse
(9 steps because symbi0sis offers one faked additional freq/volt step unlike other kernels)
only use UHOC version if you really need overclocking > 1,45 GHz! otherwise use default version with OC up to 1,45 GHz
new symbi0sis toolchain v2 with full arm hard-float ABI support instead of softfp, updated components and tweaks
Which version of the kernel should I take?
only take a version with "-UHOC" at the end of the filename if you really need highest overclocking
symbi0sis toolchain is always changing and work in progress. its purpose is to beat guestekrnL toolchain in kernel smoothness, performance and battery. There is no guarantee yet that it succeeds, therefore YOUR feedback is needed. guestekrnL toolchain on the other hand is the chain which has proven to be stable, smooth and energy efficient for more than 4 months. So: basically it's recommended to always try the kernel builds built with latest symbi0sis chain and to compare with the guestekrnL chain builds. If you notice strange behavior or high power drain, you can always fall back to the good old guestekrnL chain
rktdi said:
hmm which version to choose? gueste or symbiosis tool chain? what is the difference?
Click to expand...
Click to collapse
As mentioned the compilation toolchains are used for compiling the kernel under linux (= making binary kernel image out of kernel source files) and affect battery, stability, smoothness (scrolling) and performance of the kernel. I might open a new thread for offering the chains separately soon.
Currently I like symbi0sis chain v2 the most. It's hard to say which one is smoother though. [Edit OCT 14 2012: guestekrnL chain still seems to be most liked by majority of the users concerning scrolling smoothness, but there are many positive feedbacks on power consumption of symbi0sis-chain v2 edition] Gueste Chain is from May 31 2012 (initially created for guestekrnL) while symbi0sis v2 is from October 10 2012. Gueste is the "good old stable&smooth one" and symbi0sis is the one aiming to beat (be better than) gueste --- war of the chains :laugh:
Some differences:
- symbi0sis chain v2 uses gcc compiler v4.5.4 (2012) while gueste uses gcc v4.5.3 (2011)
- symbi0sis chain v2 uses some newer libs and components than gueste chain
- symbi0sis chain v2 is a full hard-float chain while gueste chain is softfp (probably performance improvement)
- some differences in build flags
- minor other differences
So just try whatever edition you like, they are both not bad at all.​
fixed LED button notification bug one more time, hopefully finally this time
enhanced kernel building script which automatically builds all 4 versions of the kernel (2 toolchains + UHOC/nonUHOC) - advantage for me basically because it saves time :laugh:
tun.ko no longer as module but directly compiled in kernel again
switched back to ZRam without snappy compression due to some lagginess reasons
drastically improved smoothness (same or better than 1.1.2 of the kernel)
various changes in kernel configuration, inspired by 1.1.2 of the kernel
added full arm hard-float ABI support for performance
SIO IO-scheduler is now default again - there have been some changes in the default values, so the currently recommended settings will be set in GuesteOC automatically after kernel flash. Try them.
changed auto-brightness steps: the lowest step now is 99% identical to CM7 kernel original default auto-brightness
new build flags for kernel modules
some tweaks
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Changelog previous versions:
v1.3
additional UHOC (ulta high OC) version is available too with default clock of 1,1 GHz and max clock 1,536 GHz - the frequency/voltage table looks like this:
<=216 MHz - 770 mV \ <=389 MHz - 770 mV \ <=503 MHz - 800 mV \ <=760 MHz - 875 mV \ <=912 MHz - 925 mV \ <=1150 MHz - 1025 mV \ <=1312 MHz - 1125 mV \ <=1408 MHz - 1225 mV \ <=1536 MHz - 1325 mV
Click to expand...
Click to collapse
(9 steps because symbi0sis offers one faked additional freq/volt step unlike other kernels)
updated GuesteOC app by TrymHansen (thank you!!!) for controlling new kernel feature, supporting new kernel modules structure & mounting and fixing some bugs
compiled with newly created symbi0sis toolchain (different from the one used for testbuild), providing improved performance and smoothness [the chain affects battery, performance, stability and smoothness]
tweakable kernel logging (logging disabled by default)
completely fixed LED button notification bugs, led button brightness now will always be restored correctly on ScreenOn to the value set in GuesteOC
screen-state-based kernel behavior: giving for example the possibility of kernel logging only when screen is on
kernel modules can now be loaded with "modprobe <module-name>" and don't need to be loaded with "insmod <full_module_path/module-name.ko>" - advantage: modprobe doesn't need full module path and also loads dependent modules if there are dependencies
added tun.ko module
compiled snappy compression/decompression as modules, will be loaded along with ZRam and unloaded if ZRam is disabled
stability improvements
removed Compcache (ZRam is better)
many changes in kernel configuration
battery-related changes
some other, minor things
I introduced a completely new kernel OnTheFly feature:
Code:
kernel_logging
(OTF name)
It accepts values 0, 1 or 2
0 = no logging [GuesteOC-default, set on boot after kernel flash]
1 = logging only when screen is on
2 = logging all the time [kernel-internal default, used until overwritten by GuesteOC]
This can be controlled/set via GuesteOC (see screenshot).
[Kernel logging is what you see when you open the app "aLogcat"]
less or no logging is believed to save some battery juice
v1.2.1.1
additional UHOC (ulta high OC) version is available again with default clock of 1,1 GHz and max clock 1,536 GHz - the frequency/voltage table looks like this:
<=216 MHz - 770 mV \ <=389 MHz - 770 mV \ <=503 MHz - 800 mV \ <=760 MHz - 875 mV \ <=912 MHz - 925 mV \ <=1150 MHz - 1025 mV \ <=1312 MHz - 1125 mV \ <=1408 MHz - 1225 mV \ <=1536 MHz - 1325 mV
Click to expand...
Click to collapse
(9 steps because symbi0sis offers one faked additional freq/volt step unlike other kernels)
building modules with -Os flag instead of -O2
using SLUB memory allocator instead of SLAB allocator for better performance
using VR scheduler as default instead of SIO (in my opinion it stays most lag-free after days of uptime)
disabled CPU alignment again (for battery)
now using Google SNAPPY compression for ZRam instead of LZO - should provide better performance. However CompCache uses LZO and in my opinion phone feels smoother when using CompCache. Just try both and compare, set the desired compressed RAM method in GuesteOC.
fixing "incompatibility" of symbi0sis with OC tools other than GuesteOC - now all tools recognize 216 MHz as lowest CPU freq instead of 389 -- possible problem: you maybe can't set min CPU freq to 389 MHz anymore in some OC tools, you would have to use 5xx instead.
fixing some smaller issues, like a touch LED bug
some changes in kernel configuration for provision of higher smoothness & battery (?)
some stability changes
Improved smoothness
v1.2
enabled CPU alignment - allowing the processor to perform unaligned accesses for many types of memory accesses
disabled uaccess with memcpy
small changes in battery driver
same toolchain as before, Flix123 toolchain unfortunately didn't work with this kernel
fixed cpufreq stats build error
building kernel modules with O2 optimization level instead of O3
reverted pwrgood_latency to default value
merged/included FORCE_FAST_CHARGE - credits to chad0989
chad0989 said:
This patch allows one to force AC or USB charging for any charger. It also provides additional security when connecting to public charging stations because with either force AC or force USB mode on, USB transfers are disabled, protecting your data.
Fast charge can be toggled by issuing:
echo 1 > /sys/kernel/fast_charge/force_charge_mode
Slow charge:
echo 2 > /sys/kernel/fast_charge/force_charge_mode
and off:
echo 0 > /sys/kernel/fast_charge/force_charge_mode
Plug your phone into the charger AFTER toggling the desired mode.
In addition I have created a toggle fast charge widget that may be used to toggle fast/slow charge on and off right from your home screen:
https://play.google.com/store/apps/details?id=com.incredicontrol.fastchargewidget
Click to expand...
Click to collapse
disabled some kernel logging
auto-removal of ETaNA kernel remains on installation of symbi0sis kernel
added a small tweak file by carburano basically for better balanced RAM management
ZRam with 200MB will now be enabled automatically on kernel installation
some other less important changes
v1.1.2
Various internal changes for providing better power consumption (really seems to be improved)
additionally: an ultra-high-OC version (UHOC) for power users and nerds.
UHOC version coming in two flavors, low voltage and high voltage
low voltage version uses following steps [cpu freq \ voltage]:
216-770 \ 503-800 \ 655-850 \ 912-900 \ 1150-1000 \ 1312-1100 \ 1408-1200\1536-1300
Click to expand...
Click to collapse
high voltage version will use following steps [cpu freq \ voltage]:
216-770 \ 503-850 \ 800-900 \ 1050-950 \ 1200-1050 \ 1322-1150 \ 1438-1250 \ 1556-1350
Click to expand...
Click to collapse
high voltage version will be built tonight
this means OC up to 1,536 GHz - will NOT work on every phone - if you get bootloops after too high OC, re-flash the kernel
UHOC version for power users and capable phones, higher power consumption possible but on normal frequencies not necessarily
if you use UHOC-lowVolt version, you could run it @1150MHz as default, because this uses the same voltage as 1000MHz. It doesn't mean it will consume the same energy (is a bit more complicated) but at least not much more and you still get more power.
Again: UHOC version will NOT work on every phone
default version with OC up to 1450 MHz is still recommended
v1.1.1
Amazing new features by TrymHansen for GuesteOC:
on-the-fly changing of virtual RAM size (16 - 256 MByte)
slider for vibration intensity (from very low to strong)
changing Ramhack-Size directly from within GuesteOC with a slider - 0-96 MB; modifying boot image and reboot happens automatically on applying - THX again to TrymHansen, you are the best!
reverted some changes in defconfig for hopefully providing a bit better battery again compared to v1.0
enabling optimized crypto routines in defconfig
changed the OTF name "gpu_ram_size" to "ramhack_size", now showing size of Ramhack in MB and not size of GPU Ram
increased max possible vibration intensity just a bit
shortened kernel name - still don't forget that this is a fork of Temasek's kernel, who has done a great job
played around with creating new toolchains, still fell back to the old one I made for my stock kernel which still provides good smoothness and battery
disabled kernel-side haptic feedback on change of vibration strength - GuesteOC tool does this anyway
added 3 small binaries to kernel setup zip for providing GuesteOC app the possibility to change ramhack size
kernel setup now (from 1.1.1 upwards) does not change ramhack size, so if you used ramhack before it will be remembered even if you flash a new symbi0sis kernel. This also means if you used a kernel without ramhack before, it won't be enabled by default after flashing a new symbi0sis kernel. Just enable it with the desired size in GuesteOC
credits during development of this version to TrymHansen
v1.1
improved smoothness
3-way virtual RAM enhancement
Ramhack possible from now on, 48 MB hack default
reduced internal logging
defconfig changes
optimized AES and SHA1 routines
current size of GPU RAM (= 128 - Ramhack value) is OTF readable in /proc/gueste/gpu_ram_size --> so 128 MB - gpu_ram_size = size of ramhack -> default: 128 - 80 = 48 MB Ramhack
OTF changeable vibrator (haptic feedback) intensity in both /proc/gueste/strong_haptic_feedback (0 or 1 , 0 sets vib to 3000 and 1 sets it to 3600) and /proc/gueste/vibe_intensity (values 1500-3600)
updated deadline & SIO IO schedulers
credits during changes of this release to morphic, wkpark, vadonka, faux123 and vork - If I forgot someone he/she is most likely mentioned in the git commits or source code merges
v1.0
Initial release
symbi0sis of temasek's CM7 kernel and guestekrnL 1.8.1 (Stock)
credits during changes of this release to temasek
proven good power consumption (as of many feedbacks)
Ramhack:
Ramhack size in MB (set it in GuesteOC):
MisjudgedTwat said:
0 -- Everything is working
32 -- Everything is working [in rare cases problems with video rec]
48 -- Everything is working [in some cases problems with video rec]
64 -- 1080p video recording/playback doesn't work
80 -- 1080p video recording/playback and some very heavy 3D games doesn't work (Chainfire3D texture resolution adjust help)
96 -- 1080/720p video recording/playback, and many 3D games doesn't work (Chainfire3D texture resolution adjust help)
Click to expand...
Click to collapse
Questions:
Is this kernel compatible with MIUI? Yes it should be, there have been multiple positive feedbacks. But backup first!
What does virtual memory/RAM mean? Virtual memory means that the real available RAM (the more the bigger Ramhack is) can either be compressed to simulate additional RAM (= ZRAM or ComCache) or it can be enhanced using a Swap file which will be stored on the SD card. Swap is slower than compressed RAM, and compressed RAM is faster but needs more battery!
I OC'd / UV'd too high and get bootloops - what now? If you OC'd too high and get bootloops, re-flash only the kernel, it will remove OC / UV ! No need to re-flash whole ROM.
Download: http://www.mediafire.com/?2m7r8ya1gksn3
Installation: Just flash. Preferably use a clean system without many left-overs from other kernel so you don't get a wrong impression of symbi0sis kernel.
Stefan Gündhör said:
Hi! Nice to hear that you are willing to try symbi0sis :good:
Well since some version symbi0sis kernel deletes the init scripts and some additional stuff flashed along with Etana kernel (if you used older versions of etana kernel before and didn't do a full wipe since then there might be some files not being deleted by symbi0sis setup script).
Easiest way would be if symbi0sis cleaned the whole init.d folder, but I always criticized this about kernel DEVs doing this because in this cause all custom init.d scripts added by creators of custom ROMs would be lost too.
However there are some things symbi0sis can't/doesn't clean: If I remember correctly, Etana kernel also tweaks /system/build.prop file with performance/networking/whatever tweaks. These entries will be left over even if you change your kernel.
You could of course replace this file with the original file of the ROM you use.
Additionally in past Etana kernel sometimes also replaced some system files with tweaked or different ones. You can't really undo that.
But basically this is no problem, the tweaks will work with symbi0sis kernel as well. I just mentioned it because user experience / power consumption / stability of "clean cm7 + symbi0sis" versus "cm7 with etana previously + symbi0sis" might be different.
But just go ahead, try symbi0sis and if you think you need a full wipe you can still do that later on
Click to expand...
Click to collapse
Complete Source: https://www.mediafire.com/folder/2m7r8ya1gksn3//symbi0sis Kernel
Screenshots: (the Antutu shots are from different versions; first shot shows ramhack 48 (=420 MB real RAM) + ZRam (=210 MB additional virtual RAM); Info: GuesteOC app by TrymHansen comes in many languages!)
better than the best...
The best among all...guys this kernel has performance with battery saving...truly it justified it's name symbiosis...performance gueste and battery temask....awesome work was waiting for something like this....hats off to you
galaxyfitankit said:
The best among all...guys this kernel has promenade with battery saving...truly it justified it's name symbiosis...performance gueste and battery temask....awesome work was waiting for something like this....hats off to you
Click to expand...
Click to collapse
Thx I hope battery of 1.1 is as good as 1.0 ! Otherwise I will have to undo some changes.
Excellent work Stefan. I'll update GuesteOC within two-three days to support the vibration-steps. (And possibly the ram-hack size.)
TrymHansen said:
Excellent work Stefan. I'll update GuesteOC within two-three days to support the vibration-steps. (And possibly the ram-hack size.)
Click to expand...
Click to collapse
Great I planned to PM you but you were faster
I reused nearly every feature of GuesteOC app
Thank u that's great - the ram-hack size (or in fact the gpu ram size) can only be read OTF, so u could display it in GuesteOC but not change - for changing I thought I make simple CMW ZIPs conatining only a small script for setting the desired Ramhack value (the boot.img /boot params have to be altered, don't know any other way yet).
The vibro-steps will be awesome as slider! 1500 - 3600 is currently allowed, but maybe I should increase a bit more? But I think 3600 should be enough.
Also the checkbox for strong vib can stay! It will set vib to 3600 or 3000 (when checked / unchecked) - and when the steps are set to 3600 (current max), then the strong-vib boolean will be updated too and set to 1 and as soon as <3600 it will be set to 0 kernel internally.
So long story short the checkbox and slider can co-exist, just make sure to update both when one is changed
Stefan Gündhör said:
Great I planned to PM you but you were faster
I reused nearly everything of GuesteOC app
That's great - the ram-hack size (or in fact the gpu ram size) can only be read OTF, so u could display it in GuesteOC but not change - for changing I thought I make simple CMW ZIPs conatining only a small script for setting the desired Ramhack value (the boot.img /boot params have to be altered, don't know any other way yet).
Click to expand...
Click to collapse
Hmmm, ok. I'll have a look at your zips and see if it's possible to do the same thing from Android. (I'm thinking dd to a location in the boot-partition at the moment, maybe not possible.)
The vibro-steps will be awesome as slider! 1500 - 3600 is currently allowed, but maybe I should increase a bit more? But I think 3600 should be enough.
Click to expand...
Click to collapse
Probably fine. I've done this before for Vadonka's kernel, which goes from 1500 to 3700.
Also the checkbox for strong vib can stay! It will set vib to 3600 or 3000 (when checked / unchecked) - and when the steps are set to 3600 (current max), then the strong-vib boolean will be updated too and set to 1 and as soon as <3600 it will be set to 0 kernel internally.
So long story short the checkbox and slider can co-exist, just make sure to update both when one is changed
Click to expand...
Click to collapse
Ok. Not sure I agree (I think it's poor design to have two controls for one value), but I can live with it
TrymHansen said:
Hmmm, ok. I'll have a look at your zips and see if it's possible to do the same thing from Android. (I'm thinking dd to a location in the boot-partition at the moment, maybe not possible.)
Probably fine. I've done this before for Vadonka's kernel, which goes from 1500 to 3700.
Ok. Not sure I agree (I think it's poor design to have two controls for one value), but I can live with it
Click to expand...
Click to collapse
Yeah we / you 'd need to unpack and re-pack boot.img from within android I believe!
and do sth like
#!/sbin/sh
echo \#!/sbin/sh > /tmp/createnewboot.sh
echo /tmp/mkbootimg --kernel /tmp/zImage --ramdisk /tmp/boot.img-ramdisk.gz --cmdline \"[email protected] [email protected] loglevel=0 muic_state=1 lpj=9994240 CRC=3010002a8e458d7 vmalloc=256M brdrev=1.0 video=tegrafb console=ttyS0,115200n8 usbcore.old_scheme_first=1 tegraboot=sdmmc tegrapart=recovery:35e00:2800:800,linux:34700:1000:800,mbr:400:200:800,system:600:2bc00:800,cache:2c200:8000:800,misc:34200:400:800,userdata:38700:c0000:800 androidboot.hardware=p990\" --base $(cat /tmp/boot.img-base) --output /tmp/newboot.img >> /tmp/createnewboot.sh
chmod 777 /tmp/createnewboot.sh
/tmp/createnewboot.sh
return $?
Click to expand...
Click to collapse
but with exchanged values for ramhack like
mem=$((383+$hack))[email protected] nvmem=$((128-$hack))[email protected]$((384+$hack))M loglevel=0 muic_state=1 lpj=9994240 CRC=3010002a8e458d7 vmalloc=256M brdrev=1.0 video=tegrafb console=ttyS0,115200n8 usbcore.old_scheme_first=1 tegraboot=sdmmc tegrapart=recovery:35e00:2800:800,linux:34700:1000:800,mbr:400:200:800,system:600:2bc00:800,cache:2c200:8000:800,misc:34200:400:800,userdata:38700:c0000:800 androidboot.hardware=p990
Click to expand...
Click to collapse
Ok. Not sure I agree (I think it's poor design to have two controls for one value), but I can live with it
Click to expand...
Click to collapse
Yeah I only left the boolean thing because GuesteOC currently supports it! But if you make a slider, you could perform a check if kernel supports a slider for vibration and then just don't display the checkbox anymore!
Should I increase maximum Vibration to 3700 or sth. too with next version? Stupid thing is this version has 3600 already :/ so slider of new GuesteOC wouldn't work on this correctly
Stefan Gündhör said:
Yeah we / you 'd need to unpack and re-pack boot.img from within android I believe!
Click to expand...
Click to collapse
Well, that shouldbe possible, but I'd have to bundle to binaries with the app, making it quite a bit larger. (Or possible only enable the feature if the binaries are already present - and create a cwm-zip to install them.) I'd have to do tons of testing though, can't risk bricking someone's device.
Yeah I only left the boolean thing because GuesteOC currently supports it! But if you make a slider, you could perform a check if kernel supports a slider for vibration and then just don't display the checkbox anymore!
Click to expand...
Click to collapse
That was the plan, since it still has to work on the stock kernel.
Should I increase maximum Vibration to 3700 or sth. too with next version? Stupid thing is this version has 3600 already :/ so slider of new GuesteOC wouldn't work on this correctly
Click to expand...
Click to collapse
Hehe, I haven't made the new GuesteOC yet, so do whatever you please. It'll be a few days, so make any changes you wish until then. (I can read back the value after setting it to detect if it goes to 3700 or 3600.)
downloading, trying tonight
So i will try to combine with miui
Edit: V1.1 is freezing miui. Maybe my phone cant handle preloaded OC? Can i get version with 1000 Mhz?
Sent from LG 2X using Tapatalk 2 Elite
Simply Spectacular!
Thank you...
etana's kernel has a new competitor in the daily kernel usage panorama
whoah, an update... gonna flash 1.1 now... been using 1.0 since stefan posted in temasek's thread, i'm on temasek's #132
So far, working perfect for me.
Together with CM7.2 Misjudgedtwat's build 37. RH 48 mb as default. OC to 1200.
Sent from my Optimus 2X using xda app-developers app
galaxyfitankit said:
The best among all...guys this kernel has performance with battery saving...truly it justified it's name symbiosis...performance gueste and battery temask....awesome work was waiting for something like this....hats off to you
Click to expand...
Click to collapse
Guy, did you have in test a pre-release of this? How can you say that 30 minutes after its publishing? It is supposed to have at least 5 charges to analyse battery drain.
Sent from my LG-P990 using xda app-developers app
wals46 said:
Guy, did you have in test a pre-release of this? How can you say that 30 minutes after its publishing? It is supposed to have at least 5 charges to analyse battery drain.
Sent from my LG-P990 using xda app-developers app
Click to expand...
Click to collapse
He's talking about the 1.0 release of the kernel, which has only been posted in some CM7 threads 3 days ago
I didn't open the thread for 1.0 already, as I wanted to add some more features first (v1.1)
thx for the feedback so far @ all
Rayman96 said:
So i will try to combine with miui
Edit: V1.1 is freezing miui. Maybe my phone cant handle preloaded OC? Can i get version with 1000 Mhz?
Sent from LG 2X using Tapatalk 2 Elite
Click to expand...
Click to collapse
Default cpu speed already is 1000 MHz so I'm afraid it's not compatible with MIUI! :/ Some more feedbacks on MIUI would be nice though.
Edit: Maybe I have to enhance kernel installer for MIUI compatibility! First priority is CM7 but I will look into it.
Hi
i installed version 1.1 and there is a thing which is not clear about the OC frequencies.
In GuesteOC the min freq is 216MHz in Myrt Torture tester on Undervolt the min freq is 389MHz.
Could it be something wrong with my installation? I installed is over Etana, so there could be some leftover.
4lph4 said:
Hi
i installed version 1.1 and there is a thing which is not clear about the OC frequencies.
In GuesteOC the min freq is 216MHz in Myrt Torture tester on Undervolt the min freq is 389MHz.
Could it be something wrong with my installation? I installed is over Etana, so there could be some leftover.
Click to expand...
Click to collapse
What you noticed there is a special tweak I made for and use in my kernels, allowing to "fake" an additional OC voltage step which in fact helps lowering power consumption. complicated to explain but it is good for your battery and real lowest CPU freq is still 216 MHz! the voltage you set for 389 will also be used for the freqs 216-389 !
However besides that we need to review power consumption of v1.1 - in v1.0 it is nearly perfect, but maybe it got worse. If so, I will revert some changes and release v1.1.1
Stefan Gündhör said:
He's talking about the 1.0 release of the kernel, which has only been posted in some CM7 threads 3 days ago
I didn't open the thread for 1.0 already, as I wanted to add some more features first (v1.1)
thx for the feedback so far @ all
Click to expand...
Click to collapse
Disappointed, sorry Stefan.
Sent from my LG-P990 using xda app-developers app

[ KERNEL AOSP ] Dhollmen Espresso

My Dhollmen kernel.
Galaxy Tab 2 : Marshmallow - AOSP compatible.
Sources in Git-Hub
Credits for Kernel Team, Google, Samsung, Cyanogenmod and anyone else who has worked on it.
Cpu boot at 1216 MHz.
Gpu boot at 384 MHz.
Undervolt.
Boot with 'pegasusq' as cpufreq governor.
Boot with 'sioplus' as block scheduler.
Boot with 'slub' as allocator.
CPU overclock selectable up to 1520 MHz.
GPU overclock selectable up to 512 MHz.
PowerVR SGX 540 kernel modules blob build [email protected]
Activated ZRAM with LZ4 compression
Tweaked Init process.
Android F2 File system (F2FS) support.
Windows NTFS support.
Windows CIFS support.
Unix/Linux NFS support.
Windows exFAT support.
ISO 9660 support.
Manages /etc/init.d/ and /etc/sysctl.conf.
Init's improvements built in kernel.
I think it does not need further sysctl.conf tweaks.
GENERAL NOTES:
Booting pegasusq because it is very soft with frequency scaling and looks as good compromise between performance and battery saving.
Naturally, each user should choose the one that best suits your needs.
This kernel not use and remove, if any when it installs, /system/lib/hw/power.*.so, as they are redundants here and interfere with CPU's
management frequency, increasing eat CPU cycles.
User can insert boot actions by scripts in /etc/init.d. Here, it is important to establish the order of execution starting with numbers script names,
to run always the latter that has the largest number.
Has been included an interface to the OC of the GPU, using "cat /sys/devices/system/cpu/cpu0/cpufreq/gpu_frequency"' command to view current frequency.
Kernel will stop secundary processor when its performance is not necessary for the functioning of the tablet.
Maybe I can tune a little more, but for now the second processor still remain stopped with low power requirement, even the first reaches 600 MHz.
I have further reduced the working voltage used by the Core, GPU, and CPU frequencies up to 1216 MHz.
I have completely replaced the memcopy & memmove functions code for memory data movement. The new code can be up to 10 times faster.
I have lately added several optimizations to improve performance and reduce overhead.
Download Latest releases
MARSHMALLOW VERSION CHANGELOG:
2016.05.16
Possibility of loading several roms.
Removed zram and swap.
Rebuild init.
Several changes designed to increase performance.
Several changes designed to reduce battery consumption.
2016.03.20
Adding dynamic tiler allocation.
2016.03.19
In line with Cyanogenmod at date.
Added the majority of previous improvements.
CHANGES OC OPTIONS BY HAND:
Code:
# GPUFREQ --> X = 1 (384 MHz) || 0 (307 MHz) || 2 (512 MHz)
echo 'X' > /sys/devices/system/cpu/cpu0/cpufreq/gpu_oc
# CPUFREQ --> X = 1216000 || 1008000 || 1360000 || 1420000 || 1460000
echo 'X' > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
# SCHEDULER --> X = row || cfq || sioplus
echo 'X' > /sys/block/mmcblk0/queue/scheduler
# GOVERNOR --> X = pegasusq || interactive || ondemand || lulzactive
echo 'X' > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
WARRANTY: You agree that this product is provided "as is" without any warranty, either expressed or implied, on its operation.
DISCLAIMER: You assumes at your SOLE RESPONSIBILITY and RISK all results produced by the "software" and/or instructions in this thread.
XDA:DevDB Information
KERNEL Dhollmen - AOSP - Espresso Tab2, Kernel for the Samsung Galaxy Tab 2
Contributors
tuxafgmur
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: 2016.05.16
Stable Release Date: 2016-05-16
Created 2014-07-14
Last Updated 2016-05-16
.
This post refers only to previous 2016.03.19 versions
Cpu boot at 1200 MHz.
Gpu boot at 384 MHz.
Undervolt.
Boot with 'pegasusq' as cpufreq governor.
Boot with 'sio' as block scheduler.
Boot with 'slqb' as allocator.
CPU overclock selectable up to 1480 MHz.
GPU overclock selectable up to 512 MHz.
PowerVR SGX 540 kernel modules blob build [email protected]
Last ducati-m3.bin firmware supported.
Without debug code.
SElinux Support.
SNAPPY and LZ4 compression libs for SWAP soported.
Activated ZRAM with LZ4 compression
Tweaked Init process.
Android F2 File system (F2FS) support.
Union file system (AUFS) support.
Windows NTFS support
Windows CIFS support.
Unix/Linux NFS support.
Windows exFAT support.
ISO 9660 support.
UDF DirectCD and CDRW/DVD support.
Apple HSFS and HSFS+ R/W support.
DIrectories /mnt/mntpoint1, /mnt/mntpoint2 and /mnt/mntpoint3 suitables for your needs.
Battery images replaced.
Manages /etc/init.d/ and /etc/sysctl.conf.
Init's improvements built in kernel.
I think it does not need further sysctl.conf tweaks.
GENERAL NOTES:
Booting pegasusq because it is very soft with frequency scaling and looks as good compromise between performance and battery saving.
Naturally, each user should choose the one that best suits your needs.
This kernel not use and remove, if any when it installs, /system/lib/hw/power.*.so, as they are redundants here and interfere with CPU's
management frequency, increasing eat CPU cycles.
User can insert boot actions by scripts in /etc/init.d. Here, it is important to establish the order of execution starting with numbers script names,
to run always the latter that has the largest number.
With this kernel, the user not need a separate script to run at the end of the boot.
Has been included an interface to the OC of the GPU, using "cat /sys/devices/system/cpu/cpu0/cpufreq/gpu_frequency"' command to view current frequency.
Kernel will stop secundary processor when its performance is not necessary for the functioning of the tablet.
Maybe I can tune a little more, but for now the second processor still remain stopped with low power requirement, even the first reaches 600 MHz.
I have further reduced the working voltage used by the Core, GPU, and CPU frequencies up to 1200 MHz.
I have completely replaced the memcopy & memmove functions code for memory data movement. The new code can be up to 10 times faster.
I have lately added several optimizations to improve performance and reduce overhead.
DhollmenL : Lollipop versions
DhollmenK : Kit-Kat versions
If your Rom have problems after installing kernel, you must install the blobs file.
Download Latest releases
​LOLLIPOP VERSION CHANGELOG:
2015.06.30
Included 'lulzactive' governor.
Included Cgroups as requested by Lollipop
A lot of little optimizations.
2015.02.15
Reverted MAG2GA patches
2015.02.13
First LP version
KIT-KAT VERSION CHANGELOG:
2015.06.24
Restored 'lulzactive' governor.
A lot of little optimizations.
2015.01.17
Updated F2Fs driver.
Last Boeffla codec.
Restored Gpu 512MHz overclock.
Google 4.8 toolchain compilation.
Many code optimizations.
2014.10.19
Solves encrypted /data partition mount.
New Fstrim management.
Mokee rom support.
Linaro 4.8.3 compilation.
Several code optimizations.
2014.09.18
Several code optimizations.
2014.08.19
Camera blob.
2014.08.17
Linaro 4.9 compilation.
Secure futex uptream patches.
Rework F2Fs files system.
Updates exFat file system.
Sio tweak.
VFS, sync, writeback and readahead changes.
Introducing Boeffla codec.
Changes init script for F2Fs support.
A few more improvements.
2014.07.14
More reduced voltages
Included camera's patch (If needed).
Multiple optimizations.
2014.04.12
Restored SELinux permissive behavior.
Adding AUFS support.
Multiple optimizations.
2014.04.01
Reworked frequencies governor.
Adding F2Fs support. You still need Rom and Recovery support for this.
Unified my prev JB and KK releases.
Code slightly reduced.
CHANGES OC OPTIONS BY HAND:
Code:
# GPUFREQ --> X = 1 (384 MHz) || 0 (307 MHz) || 2 (512 MHz)
echo 'X' > /sys/devices/system/cpu/cpu0/cpufreq/gpu_oc
# CPUFREQ --> X = 1216000 || 1008000 || 1360000 || 1420000 || 1460000
echo 'X' > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
# SCHEDULER --> X = row || cfq || sio
echo 'X' > /sys/block/mmcblk0/queue/scheduler
# GOVERNOR --> X = pegasusq || interactive || ondemand || lulzactive
echo 'X' > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
Latest for JB-4.3 Roms --> View attachment 2351512
Latest for CM-10.1 Rom --> View attachment 2133759
NOTE: I not own a 7-inch model, so I can't try it personally. Above is reference of my P51XX version.
WARRANTY: You agree that this product is provided "as is" without any warranty, either expressed or implied, on its operation.
DISCLAIMER: You assumes at your SOLE RESPONSIBILITY and RISK all results produced by the "software" and/or instructions in this thread.
Good to see new options will give it a try maybe tomorrow
Re: [ KERNEL ] DhollmenCM for P31xx Cyanogenmod 10.1
It would be good for gpu to max To Reduce stress on cpu and cpu lock at 1420,
Stablest frequency of our tab 2 p31XX.
Sent from my GT-P3100 using Tapatalk HD
Re: [ KERNEL ] DhollmenCM for P31xx Cyanogenmod 10.1
zeuscluts said:
It would be good for gpu to max To Reduce stress on cpu and cpu lock at 1420,
Stablest frequency of our tab 2 p31XX.
Sent from my GT-P3100 using Tapatalk HD
Click to expand...
Click to collapse
For redusing cpu load ....we have to do some.....xxxxxx work.... (means many work.....)
This kernel has ultimate stability. ......good....
But my interest is some where roming.....
I want 2.....
Am not happy untill and unless my Gtab2 is 2....
Confusing dont read. .....
★If You Feel Am Helping Raise My Thanks Meter To Infinity By Hitting Thanks Button★
Re: [ KERNEL ] DhollmenCM for P31xx Cyanogenmod 10.1
Has someone tried in Stock?
Enviado desde mi GT-P3110 usando Tapatalk 2
Re: [ KERNEL ] DhollmenCM for P31xx Cyanogenmod 10.1
moliverac8 said:
Has someone tried in Stock?
Enviado desde mi GT-P3110 usando Tapatalk 2
Click to expand...
Click to collapse
Dear, its clearly mention for DhollmenCM for P31xx Cyanogenmod 10.1
Sent from my GT-P3100 using Tapatalk HD
Re: [ KERNEL ] DhollmenCM for P31xx Cyanogenmod 10.1
zeuscluts said:
Dear, its clearly mention for DhollmenCM for P31xx Cyanogenmod 10.1
Sent from my GT-P3100 using Tapatalk HD
Click to expand...
Click to collapse
I know but sometimes works anyway.
Enviado desde mi GT-P3110 usando Tapatalk 2
moliverac8 said:
I know but sometimes works anyway.
Enviado desde mi GT-P3110 usando Tapatalk 2
Click to expand...
Click to collapse
I don't test ... for now.
Hello, may i know how to OC the GPU?
I jus changed the number from 1 to 2. But when i reopen the file it still shows 1.
Re: [KERNEL - New Unified Version] DhollmenCM for P31xx Cyanogenmod 10.1
adishakthi said:
For redusing cpu load ....we have to do some.....xxxxxx work.... (means many work.....)
This kernel has ultimate stability. ......good....
But my interest is some where roming.....
I want 2.....
Am not happy untill and unless my Gtab2 is 2....
Confusing dont read. .....
★If You Feel Am Helping Raise My Thanks Meter To Infinity By Hitting Thanks Button★
Click to expand...
Click to collapse
Useless crap not needed in every thread
Sent on my GT-P3100 using xda premium.
hwwr said:
Hello, may i know how to OC the GPU?
I jus changed the number from 1 to 2. But when i reopen the file it still shows 1.
Click to expand...
Click to collapse
I've test now.
It seems unification breaks this option, that I've nver test.
I'll modify my code for next version.
Thanks.
tuxafgmur said:
I've test now.
It seems unification breaks this option, that I've nver test.
I'll modify my code for next version.
Thanks.
Click to expand...
Click to collapse
Cant wait to see the OC of the GPU to the max.
Currently only ur kernel has that high support.
hwwr said:
Cant wait to see the OC of the GPU to the max.
Currently only ur kernel has that high support.
Click to expand...
Click to collapse
I've uploaded new revision :good:
hwwr said:
Cant wait to see the OC of the GPU to the max.
Currently only ur kernel has that high support.
Click to expand...
Click to collapse
All imoseyon, cmenard, and blackhawk derivative has it
ketut.kumajaya said:
All imoseyon, cmenard, and blackhawk derivative has it
Click to expand...
Click to collapse
Hi Ketut. Nice to read you here in my thread
tuxafgmur said:
Hi Ketut. Nice to read you here in my thread
Click to expand...
Click to collapse
A good thing you dare come to my cage
ketut.kumajaya said:
A good thing you dare come to my cage
Click to expand...
Click to collapse
R: [KERNEL - New Unified Revision] DhollmenCM for P31xx Cyanogenmod 10.1
This kernel works really great at 1480 on my P3110.
Fast and stable!!
Thank you for your work!!
New revision 1 available for download :good:

[KERNEL][4.1.2][4.2.2][4.3][DUAL BOOT][I9100G] Blazing Kernel v16

Blazing Kernel v16​
**Note: Those coming from older versions and has dual booted, you must extract and place the whole "system/lib/modules" folder from the kernel zip package into /sdcard/SDRoms/update, so it will be like this: /sdcard/SDRoms/update/system/lib/modules. Just reboot and everything will be fine!
Standard disclaimer from CyanogenMod:
Code:
#include
/*
* 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.
*
*/
Oh yeah!!! I finally made it! A kernel similar to Siyah kernel! You can use this on AOSP 4.2.2 ROMs or stock Sammy 4.1.2 ROMs, it will work in both! Plus, using a similar dual booting method like what @fuss132 did, you can now dual boot stock+stock, AOSP+AOSP or stock+AOSP!
Features:
** Most of my kernel features can be controlled using Trickster Mod Kernel Settings
- Can be flashed directly using stock recovery!
- Supports DUAL BOOTING
- Compiled using CM source
- Compiled using Linaro toolchain 4.7.4 by me! (optimised for Cortex-A9 architecture by me)
- Linux kernel version 3.0.98
- 3 versions of recovery available (different zImage): Philz, TWRP and CWM!
- Modified CWM to support /preload partition and gesture control: https://github.com/Ryuinferno/android_bootable_recovery
- Default scheduler is cfq
- Default governor is interactive
- MMC_CAP_ERASE already disabled by Samsung -> no more brick bug
- Supports CIFS
- Supports NFS
- USB fast charge
- Custom voltage settings
- Frandom support!
- Patched /dev/random
- More RAM (original=769 MB, Blazing Kernel=774MB)
- Additional governors: HYPER, Scary, wheatley, abyssplug, minmax, lulzactive, lazy, pegasusq, lagfree, smartassV2
- Addtional I/O schedulers: vr, sio, row
- swap support
- zRAM support
- exFAT module support
- Dynamic Fsync
- Dynamic Dirty Page Writeback
- Battery Life eXtender (BLX)
- CK3 tweaks
- Timer slack
- Dynamic timer slack control
- Miscellaneous tweaks
Stock only features:
~ Custom bootanimation (just place bootanimtion.zip in /system/media; to restore original bootanimation, just delete the bootanimtion.zip in /system/media) [AOSP already has this]
~ Custom boot sound (just place PowerOn.ogg in /system/media; to mute, create an empty file named "mute" in /system/media; to unmute, create an empty file named "unmute" in /system/media ; to restore original boot sound, create an empty file named "ori_sound" in /system/media)
~ Init.d scripts support (Place scripts in /system/etc/init.d or /data/etc/init.d) [AOSP already has this]​
Bugs:
** These bugs in AOSP are a compromise to get the kernel working, the code used for vibrations and touchkey lights are completely different, until I become a sensei in C, it can't be fixed for now
AOSP 4.2.2
- Cannot control vibration intensity
- Cannot control touchkey light duration or turn on/off
AOSP 4.3:
- Cannot control vibration intensity
- Slim ROM: Cannot control touchkey lights because Slim is still using old method for now
Stock:
- Cannot control touchkey light duration or turn on/off Solved​
Requirements:
- Running a stock 4.1.2 Samsung ROM or stock 4.1.2 based ROM
- Running a AOSP 4.2.2 ROM
- Running a AOSP 4.3 ROM
- At least 3 GB in internal storage if you want to dual boot​
Instructions:
Flash via stock or custom recovery (Safest and easiest method):
1. Choose your recovery type: CWM6 or TWRP.
2. Download the corresponding zip package.
3. Place in sdcard (external sdcard for those running stock recovery)
4. Flash the zip.
5. Reboot. It may take a little while as the kernel has lots of things to configure.​
NOTE:
To those who wanna provide logs, kindly refer to this post: http://forum.xda-developers.com/showpost.php?p=39014273&postcount=201​
Downloads:
Dual Boot Setup:
Terminal Emulator (Play Store link)
Terminal Emulator (Direct APK link)
DualBoot_BL_v3.apk
v16:
Blazing_Kernel_v16_CWM6_MOD.zip
Blazing_Kernel_v16_TWRP.zip
Blazing_Kernel_v16_PHILZ.zip
v15:
Blazing_Kernel_v15_CWM6_MOD.zip
Blazing_Kernel_v15_TWRP.zip
Blazing_Kernel_v15_PHILZ.zip
v12:
Blazing_Kernel_v12_CWM6_MOD.zip
Blazing_Kernel_v12_TWRP.zip
Blazing_Kernel_v12_PHILZ.zip
v11:
Blazing_Kernel_v11_CWM6_MOD (old).zip
Blazing_Kernel_v11_CWM6_MOD.zip
Blazing_Kernel_v11_TWRP.zip
Blazing_Kernel_v11_PHILZ (old).zip
Blazing_Kernel_v11_PHILZ.zip
v10:
Blazing_Kernel_v10_CWM6_MOD.zip
Blazing_Kernel_v10_TWRP.zip
v9:
Blazing_Kernel_v9_CWM6_MOD.zip
Blazing_Kernel_v9_TWRP.zip​
Thanks to:
@codeworkx
@fuss132
@chuandinh
@superatmos
@bluefa1con
@Phil3759
@mnazim​
XDA:DevDB Information
Blazing Kernel v16, a Kernel for the Samsung Galaxy S II
Contributors
Ryuinferno
Kernel Special Features: Dual boot and various kernel optimisations!
Version Information
Status: Stable
Created 2013-07-07
Last Updated 2013-10-24
Kernel Features Explained
What is frandom?
v6 and onwards supports frandom, which is a faster (10-50 times) random number generator than urandom...it generally decreases lag in GUI...if you are using CrossBreeder, it will automatically utilise it...if not, place this script in /etc/init.d and set permissions as rwxrwxrwx (name it whatever you want) and reboot:
Code:
#!/system/bin/sh
# Ryuinferno @ XDA
chmod 666 /dev/frandom
chmod 666 /dev/erandom
mv /dev/random /dev/random.ori
mv /dev/urandom /dev/urandom.ori
ln /dev/frandom /dev/random
ln /dev/erandom /dev/urandom
It is working if you have /dev/random.ori and /dev/urandom.ori after a reboot...to revert, just remove the script (or else, it will be applied on every boot)...
What is swap?
Swap is, in short, virtual RAM. With swap, a small portion of the hard drive is set aside and used like RAM. The computer will attempt to keep as much information as possible in RAM until the RAM is full. At that point, the computer will begin moving inactive blocks of memory (called pages) to the hard disk, freeing up RAM for active processes. If one of the pages on the hard disk needs to be accessed again, it will be moved back into RAM, and a different inactive page in RAM will be moved onto the hard disk (‘swapped’). The trade off is disks and SD cards are considerably slower than physical RAM, so when something needs to be swapped, there is a noticeable performance hit.
Unlike traditional swap, Android’s Memory Manager kills inactive processes to free up memory. Android signals to the process, then the process will usually write out a small bit of specific information about its state (for example, Google Maps may write out the map view coordinates; Browser might write the URL of the page being viewed) and then the process exits. When you next access that application, it is restarted: the application is loaded from storage, and retrieves the state information that it saved when it last closed. In some applications, this makes it seem as if the application never closed at all. This is not much different from traditional swap, except that Android apps are specially programed to write out very specific information, making Android’s Memory Manager more efficient that swap.
To use swap, the easiest way is to install Swapper2
What is zRAM?
android1234567 said:
That looks accurate, but it's a little hard to understand. A basic explanantion of zRAM is that zRAM compresses an actual block of RAM in order to have more RAM available to the system. If you make the compression too high with zRAM then your device will actually go slower as a result. An example of going over the top would be adding 256MB of RAM using zRAM on a phone that only has 768MB RAM (that's almost a 50% compression rate because ~600MB is available to the user). zRAM also requires the CPU to compress and decompress the data.
Click to expand...
Click to collapse
To use zRAM, the easiest way is to install Trickster MOD Kernel Settings
What is exFAT?
Read this: http://www.differencebetween.net/technology/software-technology/difference-between-exfat-and-fat32/#ixzz1k5uLzt4l
Summary:
1.exFAT allows for higher drive capacities than FAT32.
2.exFAT has a larger file size limit than FAT32.
3.exFAT uses a free space bitmap while Fat32 doesn’t.
4.FAT32 has greater support than exFAT.
5.FAT32 doesn’t have file number limits while exFAT does.
What is BLX?
This feature has been developed by Ezekeel and allows to set a customized battery charging limit (100% is the default stock value, if you want, you can set a lower value).
As Ezekeel said, it is commonly accepted that both very low and very high charge states accelerate the degradation of the battery capacity (that is why you should store Li-Ion batteries at around 40% charge).
If you set a charging limit equal to 100, this feature will be disabled.
What is 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.
What is 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.
How to customize the dynamic dirty page writebacks feature (default enabled):
Three new procfs parameters are exposed inside /proc/sys/vm path:
- dynamic_dirty_writeback is the activation status of this feature, set 1 to enable it, set 0 to disable it and use the standard behaviour
- dirty_writeback_active_centisecs is the interval for the dirty page writebacks when the system is active (screen on), the default value is 1500 centisecs (15 seconds)
- dirty_writeback_suspend_centisecs is the interval for the dirty page writebacks when the system is suspended (screen off), the default value is 500 centisecs (5 seconds)
1) By directly editing one of the file written above inside /proc/sys/vm and setting the preferred value (note that set value will be lost after a reboot/shutdown)
2) By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run this command to disable the dynamic dirty page writebacks feature
Code:
su
echo 0 > /proc/sys/vm/dynamic_dirty_writeback
- Or run this command to re-enable the dynamic dirty page writebacks feature
Code:
su
echo 1 > /proc/sys/vm/dynamic_dirty_writeback
- Run this command to set customize the two intervals (30 seconds while the screen is on, 10 seconds when the screen is off)
Code:
su
echo "3000" > /proc/sys/vm/dirty_writeback_active_centisecs
echo "1000" > /proc/sys/vm/dirty_writeback_suspend_centisecs
What is timer slack controller and dynamic management of the minimal timer slack value?
The timer slack controller is a feature developed by Kirill Shutemov and it allows to set the minimal timer slack value for every process contained within a control group (cgroup).
A timer slack allows the kernel to manage processes wakeup requests at some future time.
Thanks to this feature, the kernel can set a specific timer slack for the involved processes, minimizing the number of wakeups and allowing a lower system's power consumption.
For further info: Timer slack for slacker developers
Chirstoper83 also implemented a new feature in addition to the above one that allows the dynamic management of the minimal timer slack value.
So, it's possible to use different minimal timer slack value when the system is active and when has been suspended.
How to customize the dynamic timer slack controller feature:
Three new cgroup parameters are exposed inside each processes hierarchy contained in /dev/cpuctl path:
- timer_slack.min_slack_ns is the timer slack used when the system is active for the current processes hierarchy
- timer_slack.min_slack_suspend_ns is the timer slack used when the system is suspended for the current processes hierarchy
- timer_slack.effective_slack_suspend_ns is the timer slack currently used
At the moment, the values chosen and used by Blazing Kernel are the following:
- core processes (/dev/cpuctl), 0 ns when the system is active, 50000 ns when the system is suspended
- foreground apps/processes (/dev/cpuctl/apps), 0 ns when the system is active, 250000 ns when the system is suspended
- background non interactive apps/processes (/dev/cpuctl/apps/bg_non_interactive), 100000000 ns when the system is active, 250000000 ns when the system is suspended
1) By directly editing one of the file written above inside /dev/cpuctl and inside each hierarchy subfolder, by setting the preferred value (note that set value will be lost after a reboot/shutdown)
2) By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run these commands to set the minimal timer slack for generic and core apps/processes
Code:
su
echo 0 > /dev/cpuctl/timer_slack.min_slack_ns
echo 50000 > /dev/cpuctl/timer_slack.min_slack_suspend_ns
- Run these commands to set the minimal timer slack for apps/processes in foreground
Code:
su
echo 0 > /dev/cpuctl/apps/timer_slack.min_slack_ns
echo 100000 > /dev/cpuctl/apps/timer_slack.min_slack_suspend_ns
- Run these commands to set the minimal timer slack for apps/processes in background and non interactive
Code:
su
echo 100000000 > /dev/cpuctl/apps/bg_non_interactive/timer_slack.min_slack_ns
echo 250000000 > /dev/cpuctl/apps/bg_non_interactive/timer_slack.min_slack_suspend_ns
What are CK3 tweaks?
They are actually patches by Con Kolivas (author of BFQ scheduler), more info in commit message here: https://github.com/Ryuinferno/Blazing_Kernel_t1/commit/3fa18eb9feee1c204b20a63f16136dc2b066581d
ROMs Supported:
Basically ALL ROMs!
- stock Samsung ROMs [4.1.2]
- stock based ROMs [4.1.2]
- MIUI [4.1.2]
- CM 10.1 [4.2.2]
- CM 10.1 [4.3]
- CM 10.1 based ROMs [4.2.2]
- CM 10.2 based ROMs [4.3]
- AOKP [4.2.2]
- AOKP based [4.2.2]
- AOKP based [4.3]
- AOSP based[4.2.2]
- AOSP based[4.3]
CHANGELOG:
Code:
[U]v16:[/U]
- Support for PAC ROM
- Support for CM's newly implemented multi-sim framework
- Updated to Linux kernel 3.0.101 (EOL)
- ExFAT module now compiled from source
- Updated recovery to CWM 6.0.4.4
- For explicit changelogs, refer to my Github (commits are more detailed now)
[U]v15:[/U]
- Support for Android 4.3
- Updated to Linux kernel 3.0.98
- Reduced size of kernel modules (kernel zip package now a lot smaller
- Updated recoveries to CWM 6.0.4.0, TWRP to 2.6.3 and Philz to 5.15.0
- New modified CWM recovery! Features:
- Touch control!
- Battery status
- Prompt before commencing backup (avoids accidental backups)
- Advanced restore for /preload
- Rainbow mode! (to activate, scroll down the list for 5 times, scroll back up again to deactivate)
- For explicit changelogs, refer to my Github (commits are more detailed now)
[U]v12:[/U]
- Full rebase of kernel source! Now it is at [url]https://github.com/Ryuinferno/Blazing_Kernel_t1[/url]
- With the rebase of sources, hiccups are eliminated, try it and you will know why...;)
(there were some code errors when patching the old source)
- Updated to Linux kernel 3.0.88
- Data usage stats fixed
- Compiled with Linaro 4.7.4 toolchain optimised for Cortex-A9 (yes, toolchain compiled by me too)
- Updated recoveries to CWM 6.0.3.5, TWRP to 2.6 and Philz to 5.08.5
- Timer slack and dyanmic timer slack control
- CK3 tweaks
- Updated graphics driver (now also compiled with Linaro!)
- For explicit changelogs, refer to my Github (commits are more detailed now)
[U]v11:[/U]
- Updated to Linux kernel 3.0.75
- BLX
- Dynamic Fsync
- Dynamic Dirty Page Writeback
- Dyanmic mutex spin management
- CRC32 algorithm
- Updated voltage control
- Latest sync with CM for better compatibility
- Fixed MTP not working in stock for certain people
- Philz recovery now available!
- Compiled using Linaro 4.7.4 toolchain
[U]v10:[/U]
- Updated to Linux kernel 3.0.60 (this is a real update, applied patches [B]step by step[/B] instead of skiping those in between
(there's one kernel that skipped most of the patches and went to 3.0.75 straight away lol,
reverted the 3.0.76 and applied 3.0.77, and claims that it is on 3.0.77 now...lol...
and I tried to advice him, but always ignored...:silly:))
- Fixed random reboots in recovery
- Removed interactiveX governor (main cause of the reboots)
- zRAM support (for fun...lol)
- swap support (for fun...lol)
- exFAT module support (sdcards can be formatted in exFAT format now)
- Compiled using Linaro 4.7.3 toolchain
[U]v9:[/U]
- Initial dual base kernel commit
- Bring forward all features from v8
- Dual boot support
Source code:
https://github.com/Ryuinferno/GT-I9100G-Blazing_Kernel (old)
https://github.com/Ryuinferno/Blazing_Kernel_t1 (new)
Dual Booting
This feature requires extra attention, so please read carefully!
1. Decide which ROM you want to place as secondary ROM. The most suitable ROM would be the one that has less updates and stable. Keep in mind that currently all secondary ROMs will start off clean, means ALL DATA WILL BE CLEARED, and /data is 1GB in size.
Now, decide between step 2 or 3:
Step 2 (Current ROM->Primary, another ROM->Secondary)
1. If you decide to keep using the current ROM you are running as primary ROM, please make a FULL BACKUP now.
2. Since you decide to use another ROM as secondary ROM, AFTER making a backup, flash the other ROM. Then, flash the latest kernel zip package.
3. Now, reboot the phone and install the control app & Terminal Emulator (install Terminal Emulator first). You will see this:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
4. Hit the Deploy Files button, then the Dual Boot Setup button and wait for the process to finish.
5. The default ROM now is your phone ROM (primary ROM). To boot into SD ROM (secondary ROM) or from SD ROM to phone ROM, hit the Switch ROM button.
6. Restore your primary ROM now. But remember to flash the kernel zip package again.
7. Booting time may take longer as you are dual booting and dalvik-cache is building up.
8. Repeat all the steps above every time you wanna change new ROMs (means new zip packages).
Step 3 (Current ROM->Secondary, another ROM->Primary)
1. If you decide to use the current ROM as secondary and do not mind about data loss, please flash the latest kernel zip package now.
2. Now, reboot the phone and install the control app & Terminal Emulator (install Terminal Emulator first). You will see this:
3. Hit the Deploy Files button, then the Dual Boot Setup button and wait for the process to finish.
4. The default ROM now is your phone ROM (primary ROM). To boot into SD ROM (secondary ROM) or from SD ROM to phone ROM, hit the Switch ROM button. (Will show current ROM in the future)
5. Flash the new ROM you want to use as primary now. Remember to flash the kernel zip too.
6. Booting time may take longer as you are dual booting and dalvik-cache is building up.
7. Repeat all the steps above every time you wanna change new ROMs (means new zip packages).
**NOTE: MTP, USB mass storage or ADB and GPS does not work on secondary ROM
Aosp + Stock dualboot?
Wow hows that working?
All in one kernel?
Sent from my GT-I9100G using xda app-developers app
And here we go.
fuss132 said:
Aosp + Stock dualboot?
Wow hows that working?
All in one kernel?
Sent from my GT-I9100G using xda app-developers app
Click to expand...
Click to collapse
Yeah, took me a lot of brain juice...published the code in Github...
iXanza said:
And here we go.
Click to expand...
Click to collapse
Wohoo~~
Guys, anyone using stock based MIUI ROM, please check in /system/framework and see whether you have a file named "framework2.jar" or not...If you don't have, DO NOT use this on MIUI yet! I repeat, DO NOT USE IT YET! I need to configure more files......and please report back here...
Yup, confirmed working...
congrats mate
really excited to see this original work from you
best of luck
Gonna test this soon
Sent from my GT-I9100G using Tapatalk 2
Great work.... Since v3 am with you.... Great progress....:thumbup:
Sent from my GT-I9100G using xda premium
WOW , stock+AOSP dual boot
Holy $h!t XD
Sent from my GT-I9100G using xda app-developers app
Oh my god!!!!! Was my first expression wen i read the title......
Oh [email protected]#k was the reaction wen i read op......
Awesome work brother......
Lots and lots of thnx to u buddy.....
Genius is the only word tht comes to me for u now.....:thumbup:
Sent from my GT-I9100G using xda app-developers app
Well.....................................I'm IMPRESSED! :beer:
Sent from my GT-I9100G using Tapatalk 2
fantastic =).....any question...do you compile it with cm source and this command
. build/envsetup.sh
breakfast i9100g
make bootimage
or no ? =) thanks for all
Hmmmmmmmmmm don't know what 2 say yet but will still stay on v8 for a couple of days b4 trying this out cos I just flashed v8 2day......wanna ask if some1 doesn't want 2 dual boot, do d person really need this kernel over v8.....? Looks like d v8 will be as stable as pre 8 for me....its working fine since mrng....so this thread means d other thread is closed I guess
Well I can't forget 2 say thanks 4 d progress.....thumbs up
Sent from my GT-I9100G using xda premium
biagio7xD said:
fantastic =).....any question...do you compile it with cm source and this command
. build/envsetup.sh
breakfast i9100g
make bootimage
or no ? =) thanks for all
Click to expand...
Click to collapse
No
mortallkombat said:
Hmmmmmmmmmm don't know what 2 say yet but will still stay on v8 for a couple of days b4 trying this out cos I just flashed v8 2day......wanna ask if some1 doesn't want 2 dual boot, do d person really need this kernel over v8.....? Looks like d v8 will be as stable as pre 8 for me....its working fine since mrng....so this thread means d other thread is closed I guess
Well I can't forget 2 say thanks 4 d progress.....thumbs up
Sent from my GT-I9100G using xda premium
Click to expand...
Click to collapse
Just flash it over...the source used for compilation is different from v8...you can use the kernel as usual...the dual boot is just for those who wants it (which requires extra steps)...
Ryuinferno said:
Just flash it over...the source used for compilation is different from v8...you can use the kernel as usual...the dual boot is just for those who wants it (which requires extra steps)...
Click to expand...
Click to collapse
so this mean that this is totally different from v8 blazing kernel ?
One word..Ryuinferno rule..:thumbup::thumbup:
Sent from my GT-I9100G

[ROM] AOKP 4.2.2 milestone1 [July-20]

AOKP (Android Open Kang Project) Milestone1 - Jellybean 4.2.2
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Updates:: Here is AOKP milestone1 (Android 4.2.2) built from source using my CM repos and kernel. Should run about just as well as the CM version with all of the same bugs or lack there of
Screenshots
Installation Instructions
Requirements
* Rooted (obviously)
* A brain
Installation
1: If you are coming from another ROM do a full wipe
1a: if this is just an update to THIS ROM BASE you can simply wipe cache and dalvik cache
1b: if your device is S-ON you must flash your boot.img either with fastboot or some type of GUI program EVERY FLASH (google is your friend)
2: Flash gapps (download below)
3: Reboot
4: Enjoy AOKP
Please read the whole post for changelog, Download links, and other important info
. As always: remember it takes a FULL charge from AC, and a full discharge then re charge batteryt to be accurate. Also leave it plugged in for up to an hour at 100%, Another thing i find helps battery life is to make custom auto-adjustment values if you use auto-brightness. Check below for full changelog Feedback always welcome Please read the Kernel section for more info and full config options for the kernel.
Albinoman887
Working
SMS/MMS
Wi-FI
Data
GPS
Audio
Radio
Camera
Google Now
Internal/External SD card
Bluetooth
H/W Accelerated Video Playback
Native Wi-Fi Tethering
1080p Video Recording
Not Working
????????????
Changelog
July-20
* Synced with upstream - maybe gallery issue will be fixed?
July-18
* initial build
Kernel
ChronicKernel
* Compiled with linaro
* Set flash to disable if battery is below 10% to prevent the random shut-off when taking a pic
* Removed/Disabled KSM
* Removed ZRAM
* User-configurable GPU OC (Not OC'd by default)
* Optimized and compiled with with the "Optimize a lot, or -o3 option)
* Added more I/O schedulers
* Tweaked voltages a bit
* Reverted CRT hack to smooth animation in Android 4.2.2
* Increased PMEM_MDP as it is needed in Android 4.2.2 to fix soft-reboots
* PM_FAST enabled by default (high power wi-fi when screen is off)
These settings were changed by me to help make the kernel more stable with our ROM, observed with tests by me. If you want more features of the Sultan kernel feel free to flash it, but support will not be provided in this thread.
Other Features of the kernel include:
* OC to 1866Mhtz (default 1566Mhtz)
* Undervolted
* User-configurable CPU OC
* User-configurable CPU default governor (ondemand = default)
* User-configurable I/O scheduler (default = SIO)
* User-configurable badass gonvernor (default = balanced)
* Sweep2Wake
You can edit many of the settings in /system/etc/init.d/99kernel, here is a snippet of the script with all the config options
Kernel init script: Click Show Content to expand
Code:
#Script originally made by Axetilen. Modified by Sultan (android1234567)
#Updated for albinoman887's ChronicKernel (98% of the credit goes to android1234567. Thanks so much man :)
# Configure your options here #
# Config default CPU Gonvernor (Disabled by default: When disabled uses internal Kernel setting)
# For better battery life switch to badass
# Kernel Default: ondemand
# Possible values
# badass
# ondemand
# interactive
#= lagfee
# performance
GOV=ondemand;
# Config I/O scheduler
# deadline
# cfq
# noop
# vr
# sio (default)
IO=sio;
# Config CPU max frequency
# Default: 1566000 (1566Mhtz)
# Overclockable to - 1836000 (1836Mhtz)
# for badass set to 1566mhtz (best performance/battery life)
MAXFREQ=1566000;
# Config CPU min frequency
# Default: 384000 (384Mhtz)
# Range 384000 - 1944000 (384Mhtz - 1944Mhtz)
MINFREQ=384000;
# Config 3D GPU clock
# 228571000 = 228mhz
# 266667000 = 267mhz (default)
# 300000000 = 300mhz (Recomended For balance of Performance and Battery life)
# 320000000 = 320mhz
GPU=266667000;
# Config 2D GPU clock
# 145455000 = 145mhz
# 160000000 = 160mhz
# 200000000 = 200mhz (default)
# 228571000 = 228mhz (Recomended For balance of Performance and Battery life)
# 266667000 = 267mhz
DD=200000000;
# Badass
# possible values
# 1 = performance
# 2 = balanced
# 3 = battery saving
BADASS=2
# Enable Sweep2Wake
# 0 = disabled (default)
# 1 = enabled
# 2 = enabled (with no button backlight during sweep)
SWEEP=0
# Enable Fastcharge
# 0 = disabled
# 1 = substitute AC to USB charging always
# 2 = substitute AC to USB charging only if there is no USB peripheral detected
FASTCHARGE=0;
# Fsync Control
# Disabled by default (recomended)
# 2 = Fsync disabled
# 1 = Fsync enabled
FSYNC=2;
# TUN
# Disabled by default
# 0 = Disabled
# 1 = Enabled
TUN=0
# End of configurable options #
Please note this is not the full script just a small portion, Check /system/etc/init.d/99kernel for the full script
Bugs
* MHL doesn't work
* Sweep2wake sometimes causes issues with the proximity sensor during calls
Notes
* As of AOSP 4.2.2 ADB now has a whitelist feature. On first connect with adb it will say device offline You need to update your ADB then with the phone connected. Disable and Re-Enable Android Debugging in the Developer Options menu. It will ask if you want to accept and show the PC's RSA key. Select Yes and it will now work as expected
* As of AOSP 4.2.1 Developer Options and Performance setting menu options are hidden until you go into about phone and tap build number repeatedly (aprox. 6 times) this only needs to be done once
* If you are having a lot of soft reboots when waking the device set you min CPU freq. to 384htz in Performance settings. (What? no Performance settings? ummm look up hehe)
* If you are coming from another ROM i highly recommend you perform and Wipe Date/Factory Reset in recovery menu when applying this ROM.
* The gapps linked to does not have photosphere. As far as i know it's not supposed to. If you want photophere search for the flashable zip
* If you can't get MMS to work. Send yourself a MMS. or just wait a day. eventually they will work again
* For the best battery life I suggest the stock settings with the exception of the ONDEMAND governor. Switching to BADASS will yield best battery results
DOWNLOAD
ROM : aokp_holiday_Albinoman887_2013-07-20.zip
Gapps : gapps-jb-20130301-signed.zip
Goo.im Repo : CLICK HERE
* This ROM can also be downloaded directly with GooManager *
Source Code
Team Hydra Github (main): https://github.com/Team-Hydra
CyanogenMod Github: https://github.com/AOKP
Credits
* android1234567 for getting this porting project going, it was a joint effort between us to get this going
* billibox for his relentless testing
* of course cyanogen, the CyanogenMod project and all who contribute.
* The AOKP project and all who contribute
* And any and all users in this thread who contirbuted or will contribute to making this ROM as stable as possible
* dastin1015 for answering all my n00bish questions, and providing helpful hints and solutions
* android1234567 for all the help with the kernel, without you we wouldn't have new kernel
* tarfu for fixing camera p2z
* NLJ for fixing the Sweep2Wake proximity sensor issue
* A bunch of thanks to arco, for all his updates to our kernel, our display libs, our media libs, and for fixing the video playback glitching, and for being a good friend and dev mentor.
Donations
I really didn't want to do this but people keep asking so here is a donation link if you want to buy me a coffee or pack of smokes (I go through a lot sitting on the PC messing around lol) go ahead. But not required or expected by any means
Note: The name on the paypal account may say patricia, this is because it's a family paypal account.
For more information, like kernel info (and possibly newer kernel builds) from our kernel chef android1234567 read the 2nd post
Happy Flashing
Albinoman887
Reserved
Too much ROMs omg good work albino and bili
Sent from my Vivid 4G using xda premium
lol
Since these ROMs all seem to be the same, this one have a center clock? Only thing I don't like about CM
Sent from my Vivid 4G using xda premium
joe3681 said:
Since these ROMs all seem to be the same, this one have a center clock? Only thing I don't like about CM
Sent from my Vivid 4G using xda premium
Click to expand...
Click to collapse
What do you mean? And these Roms are very different.
camo_flage said:
Too much ROMs omg good work albino and bili
Sent from my Vivid 4G using xda premium
Click to expand...
Click to collapse
If you think this is too much you're in a whirl of trouble my friend....
Can't even turn on WiFi
Sent from my Vivid 4G using xda premium
joe3681 said:
Can't even turn on WiFi
Sent from my Vivid 4G using xda premium
Click to expand...
Click to collapse
Did you flash boot img??
No. I'll try that. Works without flashing on other roms
Sent from my Vivid 4G using xda premium
NIiice
OT:
I was trying myself to sync the AOKP repos a few weeks ago (when you had first got CM10.1 up) but it ened up freezing half way through some 20 million lines of w.e it was doing and after like 70gb of w.e. was downloaded. I gave up after hours of nothing happening lol.
So am I glad that a dev came through on this thank you! I really dont know how you even keep all that source stuff straight..I am no noob with computers by any means but jeez lol thats some confusing-ness.
ROM REPORT:
So, first build aannnd....its AWESOME! So far everything works as expected. So far no reboots (knock on wood), sound, data, wifi, calls, etc. work great. Seems smooth and very stable (in the few hours I have been testing).
THANKS:
Thank you thank you for helping the few of us left. And they said we couldn't have CM10 because of mic...if we just had these devs when phone came out, I think it would have got way more spotlight. Which is quite sad because I think this phone is one of the nicer on the market (for a 2011 phone).
Thanks, and no problem
Sent from my SGH-M919 using Tapatalk 2
another good rom, much faster then pac, and a little faster than cm10.1, and what i like - it just works)
albinoman887, thank you very much for your work)
I am having a bit of a problem with the gallery app. I did flash the correct one for this version of jellybean.(gapps-jb-20130301-signed.zip)
It can't find my other photos and the app force closes after selecting "details" on a newly taken picture.
I can open my other photos by opening them through the file manager and selecting gallery. Anyone else experiencing similar problems?
ulsigem said:
I am having a bit of a problem with the gallery app. I did flash the correct one for this version of jellybean.(gapps-jb-20130301-signed.zip)
It can't find my other photos and the app force closes after selecting "details" on a newly taken picture.
I can open my other photos by opening them through the file manager and selecting gallery. Anyone else experiencing similar problems?
Click to expand...
Click to collapse
My DU rom does the same thing I believe. Albino and I are talking about it
EDITED!: Don't listen to whatever i posted before this was edited
I'm a crazy tired guy xD We will see whats up
ulsigem said:
I am having a bit of a problem with the gallery app. I did flash the correct one for this version of jellybean.(gapps-jb-20130301-signed.zip)
It can't find my other photos and the app force closes after selecting "details" on a newly taken picture.
I can open my other photos by opening them through the file manager and selecting gallery. Anyone else experiencing similar problems?
Click to expand...
Click to collapse
I am thinking so.
I had a weird one happen too. I think maybe I took a few pictures, had dropbox installed and setup to transfer instantly to my account. After a few shots, dropbox just started FCing along with a system.media FC. I could not even log in to dropbox after that, it kicked me out and FC any time I hit log in, along with the media FC.
I tried clearing data of the app, no go. Tried wiping dalvik in recovery. No go. Then noticed all my photos were missing in gallery before my few pictures I took with this build (I only saw those few pics). I thought weird, I hope they didnt get deleted during install of ROM. But nope, I flashed the sense 4.1 backup I had (its the most stable I got) and everything went back to normal, all pics were there, dropbox works fine, no FC.
I think something is indeed weird with the gallery. 'IS' anyone else having any issues too?
i know it sounds dumb but anyone try redoing permissions? either with "fix permisions" or just running chown -R 1000:1000 /sdcard/ and then chmod -R 644 /sdcard/
if not... try taking the gallery2.apk from cm and see what happens
bilibox said:
My DU rom does the same thing I believe. Albino and I are talking about it
EDITED!: Don't listen to whatever i posted before this was edited
I'm a crazy tired guy xD We will see whats up
Click to expand...
Click to collapse
sorry for offtopic, but.. can you build aosp? (just 4.2.2 without any options.. like vanilla android on nexus devices?) (+root)
kkruglov said:
sorry for offtopic, but.. can you build aosp? (just 4.2.2 without any options.. like vanilla android on nexus devices?) (+root)
Click to expand...
Click to collapse
Ill look into it in the morning
i'll be updating this rom sometime today....just got a lot to compile

Categories

Resources