Quantcast
Channel: xda-developers - Android Software and Hacking General [Developers Only]
Viewing all articles
Browse latest Browse all 3614

[GT-I9070][Kernel][Gingerbread] CoCore Kernel

$
0
0



Finally, i come back with the kernel.
This custom kernel is base on diego-ch's TWRP kernel.
I have tested it for weeks.
It named CoCore. :)



( Responsibility )

I'M IN NO WAY RESPONSIBLE OF ANY DAMAGE CAUSED BY USING THIS CUSTOM KERNEL.
Usually, a kernel which has no overclocked will not damage your phone. :)

( Features )

TWRP Recovery
15 Governers
6 I/O Schedulers
IO Unlocked ( increased a bit speed )
Init.d Script Supported ( see below )
Custom Bootanimation Supported ( see below )
Deeper Sleep Mode ( see below )
zRAM, SWAP Supported
NTFS Supported ( see below )
CIFS Supported
RCU Tweaked
NET Schedulers Tweaked
Add SFB Net Scheduler
Zcache, frontswap, cleancache supported ( buggy, disabled now. :( )
ARM: Add THUMBEE feature ( you can check it in /proc/cpuinfo )
ARM: Add ARM SWP/SWPB Emulation ( causes phone unstable! disabled )
ARM: VFP Hard Flag
ARM: Add Optimized RWSEM Algorithm
Mali GPU Tweaked ( see below )
LZO Compression ( for faster boot )
Removed Useless Drivers ( for faster boot )
Use SLUB Memory Allocator
Fix sdcard Read Speed
Audio Tweaks ( see below )
Disabled GENTLE_FAIR_SLEEPERS ( for UI respond, you can enable it via script )
And many miscellaneous tweak, it's hard to make a list for them.Maybe i also forgot them. :p

( Known Bugs )

J4FS Driver was broken ( see below )

( Detailed explanation )

Supports Governers:
Code:

Performance, Ondemand(default), Lionheart, Powersave, Userspace, Conservation, OndemandX, SmartassV2, Interactive, Scary, Sakuractive, PegasusQ, Intellidemand, Lazy, Wheatley.
* To get stable scores, please use Performance to run benchmarks.
* In daily using, i recommend PegasusQ.

Supports IO Schedulers:
Code:

NOOP, Deadline, CFQ, BFQ, SIO(default), VR
* To get more information about governers/io schedulers, see here:
http://forum.xda-developers.com/show....php?t=1369817

Init.d Script:
* Make sure there is a latest busybox in your system. I found that init.d didn't work properly on some devices which have old version busybox.
* I put some optional script in the attachments.

Custom Bootanimation:
* Put the bootanimation.zip in /system/media with right permissions.
* If there isn't any custom bootanimation, kernel will load Samsung official bootanimation.

DeepSleep Mode:
* Default mode is State4, i changed it to State5. Increased standby life time.
* Deepest mode is State6, but it makes phone unstable.
* You can get information about CPU sleep states:
Code:

cat /d/cpuidle/stats
zRAM & SWAP:
* zRAM must be enabled by script/command.
Code:

  mkswap /dev/block/zram0
  swapon /dev/block/zram0

* SWAP must use with a SWAP partition in sdcard.
Code:

  mkswap /dev/block/mmcblk1p2
  swapon /dev/block/mmcblk1p2

* Because we have a large memory, the zRAM/SWAP is low activity.

NTFS:
* Need a binary called "ntfs-3g" to read/write ntfs sdcard.Built-in NTFS feature only can read.
* Stock Android 2.3 cannot mount NTFS sdcard automatically.
* I put it in the flashable zip already.

Mali GPU:
* Allowed larger memory.
* Allowed larger OS memory for buffer. ( 6m -> 10m)
* Increased L2 cache max reads ( 28k -> 48k ).
* Enabled some features in Makefile.

Audio Tweaks:
* Enabled directly rendering
* Enabled 32k_clk ( a feature of AB8500 )
* Allowed larger max rate

Bug: Broken J4FS Driver
* J4FS is a low-level driver which can communicate with bootloader. Without this driver, kernel only has some reboot issues.
* You cannot use "reboot recovery" command to reboot into TWRP. But you can use "reboot" command. When phone is rebooting, just press 'Vol.up + Home + Power', and it will boot into recovery.
* You cannot use "Reboot Recovery" in TWRP.But "Reboot System" is available.
* Do not use "reboot recovery" command in TWRP built-in Terminal. If you do, you will get troubles with phone booting ( only boot into TWRP, not system ). If this happened, Just flash back stock kernel. And re-install CoCore.

( Installation )

Method 1

1. Flash the kernel which has TWRP via Odin. You can flash diego-ch's TWRP kernel, or flash "GT-I9070-Kernel-cocafe.tar.md5" in attachments.
Here diego-ch's kernel: http://forum.xda-developers.com/show....php?t=1873119
( flash custom kernel will increase binary counter!! )
2. Run Odin, Put the md5 files in PDA, Pit files doesn't need.
3. Only check "Auto Reboot" and "F.Reset Time"
4. Click Start to flash, wait for phone reboot.
5. Boot into TWRP, Tap Install, Select i9070_kernel_CoCore_TWRP.zip, Flash it.


And, if you have TWRP kernel already, flash the zip via TWRP directly.
Notes: Because of broken j4fs, When you are goiong to flash, Do not use "reboot recovery" to boot into TWRP



Method 2 ( Experienced user only )

This method will not increased binary counter, but ROOT permission is needed.
1. Get kernel.bin.md5 from i9070_kernel_CoCore_TWRP.zip
2. Put kernel.bin.md5 in sdcard
3. Run a terminal app, type these code
Code:

  $su
  #dd if=/sdcard/kernel.bin.md5 of=/dev/block/mmcblk0p15

Think twice before you hit Enter. :)

( Tips )

For performance, please remove libGLES_android.so in /system/lib/egl to disable weak CPU/b2r2 rendering.


( Thanks )

Thanks to everyone who helped me. :)

Special Thanks:

@diego-ch
@varun.chitre15
@hackbob
@Adi_Pat





The source code will be available on my github some days later.



If there are any issues, please report.
And i think there is no point in working on gingerbread kernel anymore.
Because we will taste JellyBean in November.
We are waiting for source code.
:)

And if you like my work, Press THANKS Button Please. It encourages me. :)




Viewing all articles
Browse latest Browse all 3614

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>