Multi kernel flash script for custom roms - Android Software/Hacking General [Developers Only]

I used this script to make my rom to be flashed on multiple variants with different kernel, ideal for Samsung devices but it will work on any device, either use whole script or just use the kernel flash script
Master branch includes full script including rom, kernel and magisk flash
Experimental branch includes only kernel flash script (copy and paste to end of your updater script)
https://github.com/Dyeide/multikernel-flash-script

Related

[MTD][TW][DEV][INIT.D]Base boot.cpio.gz for TW on MTD

I have been trying out the various TW roms that run on MTD and have noticed some problems with the init.rc files that are being used, so I decided to create something that could be used as a base by others. I'm not sure who created the first TW rom on MTD, but they all seem to have mostly the same init.rc file, so I started from the one in tortel's EI22-Stock-ish MTD.
Things I changed:
Various changes and additions from the CM7 version
Removed plus tweaks (all of this can be taken care of elsewhere)
Added init.d support
Added support for /etc/init.local.rc
For init.d support to work, your rom must have the file /system/bin/sysinit, containing something like so:
Code:
#!/system/bin/sh
export PATH=/sbin:/system/sbin:/system/bin:/system/xbin
/system/bin/logwrapper /system/xbin/run-parts /system/etc/init.d
Every rom I've seen so far has, so it shouldn't be a problem.
How to use:
If you're not familiar with the format of the boot.img file that is flashed to the boot partition, check my other thread here. Basically is contains the zImage, and two ramdisks: boot and recovery. The zImage contains the kernel and a ramdisk: initramfs. The init.rc is located in the boot ramdisk, so I will distribute a copy of that. You can put this into your rom or kernel by deconstructing your boot.img with extract_boot.sh, replacing the boot.cpio.gz with this, then rebuilding the boot.img with mkshbootimg.py
Download:
boot.cpio.gz - 1.2 MB
Thank you. What I need is what changes the the kernel are needed to make a kernel work with MTD. I tried comparing my source tree with Tortell's but he had so many tweaks that it was hard to know what was really needed to make it work.
I thank you greatly for this good sir, and for all of your help !

[KERNEL][SINGLE/DUAL BOOT][JB/KK][STOCK/CM]blackhawk's NEXT kernel 2.4

NEXT 2.1.8 placeholder: http://forum.xda-developers.com/showpost.php?p=51678873&postcount=472
STOP! This kernel supports ONLY Samsung Jelly Bean 4.1.x, 4.2.2, CM 10.1.x, 10.2, and 11.0 ROMs. It won't work on ICS, CM 9, CM 10.
FOR NOW I FORBID ANYONE ELSE REUSE THIS STILL IN DEVELOPMENT DUAL BOOT PROJECT FOR HIS/HER OWN GALAXY TAB 2 PROJECT!
IMPORTANT NOTES:
NEXT 2.x separated in two package: the kernel part as blackhawk-next-kernel-2.x-p51xx.zip and the proprietary binaries part as proprietary-vendor-samsung.zip for JB >= 4.2 (stock 4.2.2, CM 10.2) and proprietary-vendor-samsung-4.1.x.zip for JB 4.1.x (stock 4.1.2, CM 10.1) . Flash the kernel and then directly flash the proprietary binaries!
Download both proprietary-vendor-samsung.zip and proprietary-vendor-samsung-4.1.x.zip from http://forum.xda-developers.com/showthread.php?t=2285366 post #2!
Sources:
Kernel sources at http://github.com/kumajaya/android_kernel_samsung_espresso10/tree/cm-10.1-blackhawk
Features:
Samsung stock 4.1.x, 4.2.2 (since 1.8.3), CM 10.1.x and CM 10.2 (since 1.8.3) support with a single kernel image
For stock ROM: external SD card - internal media swapper script included
Samsung proprietary exFAT modules are loaded. CM 10.1 exFAT support files attached at post #2
For CM/CM based ROM, P31xx only: auto rotate screen default orientation depend on ro.sf.hwrotation value, camera orientation fix included
Dual-booting. You can have Samsung JB and CM 10.1 ROMs on a single device at the same time.
Nice looking AROMA based boot menu
Using CyanogenMod kernel source, updated to p3110 source for newer WLAN (Youtube HD bugfix on stock ROM), modem, sensors driver, and etc for both P31xx and P51xx target
CPU clock: 300MHz, 600MHz, 800MHz, 1.008GHz, 1.2GHz, 1.35GHz, 1.42GHz, 1.48GHz, and 1.52GHz, locked @ 1.008GHz on boot
GPU clock: 153.6MHz, 307.2MHz, 384MHz, and 512MHz, 307.2MHz as the default maximum clock
CPU voltage control. You can use Android Tuner/System Tuner/Trickster MOD to set CPU voltage
The ramdisk base on JB 4.1.2 (stock ROM) and JB 4.2.2 (CM 10.1)
Using newer PowerVR SGX 540 kernel modules and binaries blob
row, bfq, sio, and vr scheduler support
Governor bug fix. Replace Samsung's interactive governor with default OMAP4 3.0.31 interactive governor from omapzoom.org, plus pegasusq and lulzactive
NFS and CIFS/samba (not loaded by default) filesystem support
LZMA compressed initrd, to keep boot image smaller than 8MB
swap support. zram and cleancache with a working zcache driver, enabled by default
kernel config, insmod configs.ko and then you can access /proc/config.gz
external modem support, for PPP Widget (not loaded by default, P31xx need powered USB hub for external modem)
Some tweaks from gokhanmoral's siyahkernel for S3, passive entropy tweak applied
Remove a lot of debug message from touchscreen driver, display, mmc, modem, etc
linaro arm-linux-gnueabihf- cross compiler, compiler optimization applied
SuperSU v1.41 for stock ROM
Self compiled BusyBox v1.22.0-git in /sbin, config file based on CM's BusyBox bbconfig output. fstrim applet patch applied, android_reboot applet added (a quick but clean port from Android toolbox), swapon applet with priority option. For stock ROM: this version of Busybox will overwrite busybox binary in /system/bin or /system/xbin and save it as busybox.backup
Early boot scripts support (/system/etc/init.d, /data/local/userinit.sh, and /data/local/userinit.d)
Post boot script support (/system/etc/init.post_boot.sh)
For stock ROM: custom boot animation support (/data/local/bootanimation.zip or /system/media/bootanimation.zip if exists, Samsung boot animation as a fallback). If a bootanimation.zip found, the boot sound will be turned off as well as the shutdown animation.
Modified mount options
adb insecure, adb mode in charge state also insecure
Advanced TCP congestion support, westwood as the default congestion
No /system/etc/hosts patch, you can install AdAway from F-Droid
Known Problems:
Thanks To:
gokhanmoral, amarullz, Phil3759, Chainfire, cmenard, codeworkx, imoseyon, coolbho3k, Faux123, AuxLV
brolee93 for latest P51xx Samsung stock boot image
This part will be expanded. Most of the patches I applied are coded by someone else. Please remind me if I forget to give credits to anybody...
Downloads:
PhilZ Touch blackhawk version attached, PhilZ Touch 5.08.5 attached at post #3
NEXT kernel beta release attached
NEXT tool: http://forum.xda-developers.com/showthread.php?t=2285366
exFAT support files for CM/CM based ROM: http://forum.xda-developers.com/showthread.php?t=2285366 post #2
Todo:
More features in NEXT tool
Special Thanks:
@behemot24, @shakatu, @ironmaskusa, @tetakpatak
XDA:DevDB Information
[KERNEL][SINGLE/DUAL][JB/KK][STOCK/CM]blackhawk's NEXT kernel, Kernel for the Samsung Galaxy Tab 2
Contributors
ketut.kumajaya, Android-Andi
Kernel Special Features: Dual boot stock and AOSP based ROM
Version Information
Status: Stable
Current Stable Version: 2.4
Created 2014-09-21
Last Updated 2014-10-29
NEXT 2.x separated in two package: the kernel part as blackhawk-next-kernel-2.x-p51xx.zip and the proprietary binaries part as proprietary-vendor-samsung.zip for JB >= 4.2 (stock 4.2.2, CM 10.2) and proprietary-vendor-samsung-4.1.x.zip for JB 4.1.x (stock 4.1.2, CM 10.1) . Flash the kernel and then directly flash the proprietary binaries!
Download both proprietary-vendor-samsung.zip and proprietary-vendor-samsung-4.1.x.zip from http://forum.xda-developers.com/showthread.php?t=2285366 post #2!
Changelog:
21/04/2014 2.2:
Flash-Friendly File System (f2fs) support
Full github commits 8/4 - 20/4/2014: https://github.com/kumajaya/android_kernel_samsung_espresso10/commits/cm-11.0
Update proprietary blobs, proprietary-vendor-samsung-update.zip
28/10/2013 2.1.4 -> 2.1.5:
Updated to upstream 3.0.101 kernel
Audit and SELinux enabled
Smartreflex completely disabled
GPU frequencies not exposed to STweaks bug fixed
Do not load exFAT modules on CM 10.2
Full changelog: https://github.com/kumajaya/android_kernel_samsung_espresso10/commits/cm-10.2-update
27/10/2013 2.1.3 -> 2.1.4:
Ramdisk updated to sync with latest CM 10.2
21/10/2013 1.8.3 -> 2.1.3:
Update init script for PAC
Disable almost all kernel debugging support except KALLSYMS. Kernel failed to boot with CONFIG_KALLSYMS disabled
Turn all CPUs online when governor gets changed, hotplug bug workaround
SIO and VR I/O scheduler
Initial STweaks support, big thanks @gokhanmoral. Download STweaks app from Play store to access almost all NEXT related settings (CPU governor, frequency, and voltages; GPU governor and frequency limit; surfaceflinger rotation; I/O scheduler; logger; CIFS, Xbox controller, and USB modem support; and dual boot related settings).
Update overclock codes, remove gpu_oc interface: https://github.com/kumajaya/android...mmit/94ac45a10213de400c7bf3c01b5c5b052ae8ba18
sgxfreq: add sysfs interface to store frequency limit: https://github.com/kumajaya/android...mmit/738061b30d2278d3b51b341bc2597dad300f4e47
sgxfreq: limit frequency to default on boot: https://github.com/kumajaya/android...mmit/8a6933cf6565b5587db6a2a5ce7b1207807ab701
The latest Android Tuner app needed to control the modified OMAP GPU control interface but the dirty way by editing /etc/init.post_boot.sh always available
Separated vendor blobs for JB 4.1.x and JB >= 4.2, @poppolo2001 fix applied
With CPU and GPU overclock, CPU under/over voltage, upstream kernel 3.0.96 by @CodyF86
Complete changelog: https://github.com/kumajaya/android_kernel_samsung_espresso10/commits/cm-10.2-update
10/08/2013 1.6.3 -> 1.8.3:
Initial upcoming Samsung 4.2.2 support
Initial CM 10.2 support. Do not flash blackhawk-next-cm-exfat-vold.zip! CM 10.2 already has an open source/reverse engineered exFAT filesystem support
Vendor blobs in separate flashable zip. For all ROMs, on both 1st and 2nd ROM: Flash vendor-blobs-new-ducati-blackhawk.zip directly after flashing NEXT 1.8.3!
Updated to upstream Linux kernel 3.0.41 (incremental patch)
The first kernel utilizing the new ducati firmware, the first kernel preserved 804MB RAM! Don't forget to flash vendor-blobs-old-ducati-blackhawk.zip if you switch to another kernel
zram switched to zsmalloc, zram optimized for Android disabled
XBox 360 USB controller with BigX LED support enabled (by @iks8 request). Modules not loaded by default, edit /system/etc/init.d/02modules to activate it.
23/07/2013 1.6.2 -> 1.6.3:
Add android_reboot applet to NEXT's busybox (a quick port from Android toolbox) to fix AROMA boot menu fail to boot into recovery/bootloader as reported by @kinung
I hate bug!
22/07/2013 1.5 -> 1.6.2:
Hotplug CPU governor working properly with cleancache enabled, zcahe memory corruption problem fixed!
Static linked busybox compiled from source, fstrim patch applied. Busybox config based on CM's busybox bbconfig output. Total 46 new busybox applet, add priority option to swapon applet
zRAM swap per CPU core, same priority value. CM's /system/bin/compcache script updated to handle 2 zRAM devices. Reference: http://wiki.gentoo.org/wiki/Zram
Stock ROM default zRAM size 26% RAM size. Following CM's standard, user can set zRAM value for example to 30% by typing "setprop persist.service.zram 30" over Terminal Emulator or over "adb shell setprop persist.service.zram 30". CM user can use Settings application: Performance - Memory management - zRam.
Swappiness value changed to 90
LZO compression updated to current upstream version, optimized for arm. Reference: http://git.kernel.org/cgit/linux/ke.../?id=b0af9cd9aab60ceb17d3ebabb9fdf4ff0a99cf50
zRAM support optimized for Android, utilizing the new lzo library.
cleancache support with working zcache driver, utilizing the new lzo library
entropy threshold tweaks, /dev/random linked to /dev/urandom
github 14-22/07/2013 commits: https://github.com/kumajaya/android_kernel_samsung_espresso10/commits/cm-10.1-blackhawk
12/07/2013 1.4.1 -> 1.5:
Decrease CPU voltage for frequencies below 1.2GHz, increase CPU voltage for frequencies above 1.2GHz
Re-enable MMC_CAP_ERASE for I/O speed improvement, run "fstrim -v /data" and "fstrim -v /cache" manually to TRIM your filesystem or run LagFix (fstrim GUI, download it from Play)
Remove my old hack in cpufreq driver
Newer PowerVR SGX540 3D kernel module and vendor binaries, in sync to CM-10.1. You must update both 1st and 2nd ROM to renew both ROM vendor binaries!
SuperSU v1.41
16/06/2013 1.4 -> 1.4.1:
I/O speed improvement, 1.3 and 1.4 bugfix
SuperSU v1.34 - thanks Chainfire
nooc: Smartreflex class 3 re-enabled, voltage control disabled
04/06/2013 1.3 -> 1.4:
Selected kernel modules, scripts, and binaries integrated in boot.img, single flash for 1st and 2nd ROM
Kernel compression back to gzip, boot.img compression switched to lzma for better compression (I need more space)
Auto root (for stock)
Auto busybox (for stock)
External sdcard and internal media swapper script integrated in boot.img (for stock as 1st ROM)
Override init.d CPU governor setting on boot completed (technical reason/by design). Please use an app "on boot" or /etc/init.post_boot.sh to set CPU governor
init script reworked (again), simplified
Standalone nooc version, no longer as an addon for standard NEXT
Untested CRT off animation support
NEXT users, please update your kernel to 1.3 version to avoid filesystem corruption risk on Samsung stock/stock based ROM! Please read Dual Boot FAQs how to update your kernel!
01/06/2013 beta -> 1.3:
Better data integrity on both 1st and 2nd ROM
Ramdisk init scripts reworked, inline with the latest Samsung (Taiwan BRI 04/2013) and CM (29/05/2013 nightly)
Inline with P31xx, that's way this port version directly jump to 1.3
Updated exFAT modules (don't know it's better or worse, it's closed source)
Default CPU clock still 1.008GHz, default GPU clock 307.2MHz. Non OC version as an addon
Both version tested on P3100 (remember, I have no access to P51xx device). Booted, upscale graphics, touchscreen not work, wrong orientation sensor, swapped volume button, got 1280x800 screenshots :laugh:
30/05/2013: Initial beta release.
Dual Boot FAQs
Adapted from droidphile's "Dual Boot FAQs" with permission.
1. "Why would I wanna dual-boot?"
A. You don't have to.
Suppose you're more of an aosp rom fan. But misses the HDMI out, bluetooth hands-free and love sammy camera more. Do a minimal installation of sammy rom and boot into it when in need of these features and use aosp rom otherwise.
Or you are a sammy rom fan but love the responsiveness and pure android feel of aosp roms.
And while you can dual boot two sammy or two aosp roms, it doesn't make any sense.
2. "What if I don't need dual booting?"
A. No issues. Kernel won't force to setup 2 roms. You can single boot as before.
3. "Will dual booting change my bootloader or do any dangerous stuff like setting my phone on fire?"
A. NO. Changes are at kernel and ramfs level only. Some space in your internal sd card is used, and also the unused hidden partition mmcblk0p11 is used to store cache of second rom. Dual booting doesn't repartition the filesystem or perform anything scary.
4. "I want to setup dual booting."
A. There are four situations:-
1) Sammy rom now. Want to use aosp as secondary.
2) Sammy rom now. Want to use aosp as primary.
3) Aosp rom now. Want to use sammy as secondary.
4) Aosp rom now. Want to use sammy as primary.
Prerequisites for any setup is
a) Flash latest blackhawk's NEXT kernel
b) Flash new ducati vendor blobs (since 1.8.x)
c) Flash latest PhilZ Touch - blackhawk repack version - recovery
d) Atleast 90% battery left.
e) 2 GB free on internal SD.
f) Some spare time
1) Present sammy, setup aosp as secondary:-
i) Reboot into recovery
ii) Flash blackhawk's NEXT tool, create system.img for CM/CM based ROM and then close it
iii) Reboot into secondary recovery
iv) Flash aosp ROM as 2nd ROM
v) Flash blackhawk's NEXT kernel again
vi) Flash new ducati vendor blobs again (since 1.8.x)
2) Present sammy, setup aosp as primary:-
i) Reboot into recovery
ii) Nandroid backup your current sammy ROM
iii) Flash blackhawk's NEXT tool, create system.img for Samsung stock/stock based ROM and then close it
iv) Reboot into secondary recovery
v) Nandroid restore your sammy ROM as 2nd ROM
vi) Flash blackhawk's NEXT kernel again
vii) Flash new ducati vendor blobs again (since 1.8.x)
viii) Reboot into primary recovery
ix) Flash aosp ROM as 1st ROM
x) Flash blackhawk's NEXT kernel again
xi) Flash new ducati vendor blobs again (since 1.8.x)
3) Present aosp, setup sammy as secondary:-
Same as (1), instead of flashing aosp to second, flash sammy to second.
4) Present aosp, setup sammy as primary:-
Same as (2), instead of flashing aosp to first ROM, flash sammy.
NOTE:
-To dual boot Two Aosp or Two Sammy roms, just follow (1) or (2) (depending on which one of them you want as primary/secondary), just flash Sammy instead of aosp or aosp instead of sammy.
5. "What things should I be taking care off while dealing with dual booting?"
A. - Make sure where you are: in primary or secondary recovery.
6. "How to boot into primary rom?"
A. AROMA based boot menu will help you on every boot.
7. "How to boot into secondary rom?"
A. AROMA based boot menu will help you on every boot.
8. "Is kernel partition shared?"
A. Yes. Same kernel boots both roms.
9. "If I flash another kernel (that doesn't support db) do I lose dual booting?"
A. Yes
10. "I lost dualbooting after flashing another kernel. I didn't do anything to second rom files in sdcard/.secondrom. How can I get db back?"
A. Just flash the latest blackhawk's NEXT kernel, flash new ducati vendor blobs again (since 1.8.x)
11. "Will there be any performance degradation on the rom used as secondary compared to primary?"
A. NO
12. "Will my phone run slow overall because of db?"
A. NO
13. "How to flash a newer version of 1st rom?"
A. As usual, just flash it from primary recovery. Flash blackhawk's NEXT kernel again, flash new ducati vendor blobs again (since 1.8.x)
14. "How to flash newer version of 2nd rom?"
A. Just flash it from secondary recovery. Flash blackhawk's NEXT kernel again, flash new ducati vendor blobs again (since 1.8.x)
15. "Would upgrading 1st or second rom cause other rom to fail on boot?"
A. No. Partitions of other rom are not touched during upgrading.
16. "I miss the recovery I used before, so much.."
A. PhilZ Touch not bad at all.
17. "User apps of 1st rom are automatically available for second rom?"
A. NO. However, if you had backed them up using Titanium Backup or similar apps, just restore apps while on second rom.
18. "I wanna keep separate backup for apps in both the Roms, since I use one Rom for say entertainment and other productivity."
A. Setup different backup directory in Titanium Backup in 1st and 2nd rom.
19. "I don't see STweaks app in second rom."
A. This is blackhawk's NEXT dual boot solution for Galaxy Tab 2, a free implementation of gokhanmoral's Siyah dual boot.
20. "Do I need to anything special before flashing a newer blackhawk's NEXT kernel?"
A. NO. Just flash kernel in primary and secondary recovery. Yes, on both 1st and 2nd ROM. Just flash kernel in recovery - whichever you used to do. Kernel image is copied to the unified kernel partition (since 1.4 version). Flash new ducati vendor blobs (since 1.8.x) on both ROM may be required to ensure vendor blobs match to the kernel
21. "How can I run same STweaks settings of 1st Rom in 2nd Rom?"
A. This is blackhawk's NEXT dual boot solution for Galaxy Tab 2, a free implementation of gokhanmoral's Siyah dual boot.
22. "How do I remove everything related to DB and run single boot again?"
A. In primary recovery, flash blackhawk's NEXT tool and delete 2nd ROM system image. OR delete .secondrom directory in /data/media while on 1st Rom.
23. "If secondrom files are kept in /data/media, will wiping data in recovery erase second rom files?"
A. NO. /data/media is skipped in CWM recovery.
24. "I was using ExFat card on sammy rom without any issues. I have setup dual boot with aosp and now after booting into CM it says microSD card is corrupted."
A. Aosp roms doesn't support ExFat out of the box. The data was corrupted by aosp vold. Even if you boot back to Sammy rom, it still would be corrupted. To recover data, manually mount the card in recovery, copy contents to internal SD and reformat card to a Fat32.
Also try
chkdsk X: /f (where X is the drive letter of microsd), you may be able to copy data.
25. "I read somewhere that both rom data partition use the same space. Doesn't that mean my apps are shared across roms?"
A. NO. It just means they uses same partition. They're still different directories.
1st rom data = /data
2nd rom data = /data/media/.secondrom/data
26. "Will hitting "Boot into Secondary Recovery" in recovery boot menu change my recovery?"
A. NO. It just runs (not flash) an alternate recovery so that you can configure dualboot settings.
27. "How do I backup 1st Rom and 2nd Rom?"
A. To backup 1st Rom, do what you did to backup rom while you were single booting a while ago.
To backup 2nd Rom, use the secondary recovery.
28. "Is there an easier way for dual-boot?"
A. Yes, send your device to me.
29. "DB architecture?"
A. Like you know, every rom has a /data, /system, /cache partition and a kernel to boot.
For primary rom, it's
mmcblk0p10 = /data
mmcblk0p9 = /system
mmcblk0p7 = /cache
And these won't change whether you're single booting or dual booting.
For secondary rom, data and system is stored in internal sd, cache in hidden partition. Note that internal sd in our device is mounted to /data/media.
We have data as a directory, System as an image in data/media/.secondrom. Cache in mmcblk0p11 which is hidden partition and not used otherwise.
- When second rom is booting, second rom data is bind mounted to mmcblk0p10 as /data/
- data/media/.secondrom/system.img partition is mounted as /system.
- mmcblk0p11 is mounted as /cache.
More FAQs will be added and the list will be updated as DB is improved.
Dual Boot Exercises
http://forum.xda-developers.com/showthread.php?t=2285366 post #4.
Was waiting for this :victory:
Sent from my GT-P5110 using XDA Premium HD app
Just opened a new thread for my masterpiece work on Galaxy Tab 2. Enjoy it and don't forget to press my Thanks button or better my DTM button
PhilZ Touch attached in post #1 has a "red" on screen navigation bar in secondary recovery to distinguish between primary and secondary :laugh:
So this kernel boots 1 ROM over internal storage and second over SD card?
Sent from my GT-P5110 using XDA Premium HD app
Marionette said:
So this kernel boots 1 ROM over internal storage and second over SD card?
Sent from my GT-P5110 using XDA Premium HD app
Click to expand...
Click to collapse
Dual Boot FAQs #29.
Ohhh good news i go to test thanks you rock
With 0.6 i can oc 1.35.
But now i have freez or reboot or black screen
brolee93 said:
Ohhh good news i go to test thanks you rock
With 0.6 i can oc 1.35.
But now i have freez or reboot or black screen
Click to expand...
Click to collapse
Please try increase the CPU voltage by 25mV. In this version, CPU voltage 50mV lower than the previous values. You can use Android Tuner or /system/etc/init.post_boot.sh .
KK, you are a genius! This is working splendidly, I have cyanogen as my primary and blaster as my secondary and they are both workihg smooth for me so far... I have them both running currently at 1200 mhz and seem to be doing fine.. you have really made my day!
Sent from my GT-P5113 using Tapatalk HD
Running smoothly for Zap Blaster.
ironmaskusa said:
KK, you are a genius! This is working splendidly, I have cyanogen as my primary and blaster as my secondary and they are both workihg smooth for me so far... I have them both running currently at 1200 mhz and seem to be doing fine.. you have really made my day!
Sent from my GT-P5113 using Tapatalk HD
Click to expand...
Click to collapse
I actually watched your HDMI problem. It's one of the reasons this dual boot solution was born. Glad I could help you, thanks for your support :good:
shakatu said:
Running smoothly for Zap Blaster.
Click to expand...
Click to collapse
Really? And all your init.d scripts removed by NEXT
That's okay cuz I have No Frills set up for my CPU settings. Of course my public release is still running kkboot 1.6.
After looking at your install script IDK if I would include this in my ROM if/when you allow people to. I'll let them make up their own mind.
Sent from my GT-P5113 using XDA Premium HD app
shakatu said:
That's okay cuz I have No Frills set up for my CPU settings. Of course my public release is still running kkboot 1.6.
After looking at your install script IDK if I would include this in my ROM if/when you allow people to. I'll let them make up their own mind.
Sent from my GT-P5113 using XDA Premium HD app
Click to expand...
Click to collapse
Personally, I found that Zap Blaster works well my device (p5113) because of the IR and such.. plus at the time it was overclockable and my HDMI output worked well with it. So, I decided to use it for awhile.. but I could not resist CM because it runs so smooth and I love how clean and reliable it has always been on me for this device as well as other devices I have owned.
Again, I am very happy about this DUAL boot option and I don't think I will change my setup for a time to come... My tablet is perfect now, in my opinion. Thanks again, KK.
The tablet behaviour between this kernel and the samsung original kernel is completely different! Ketut, if samsung would give a crap about their customers, they should buy this kernel from you and push it on all the galaxy tab 2... but that's not going to happen, so actually only the xda members have the chance to see their tablet working as it should, thanks to your work. Lucky us
behemot24 said:
The tablet behaviour between this kernel and the samsung original kernel is completely different! Ketut, if samsung would give a crap about their customers, they should buy this kernel from you and push it on all the galaxy tab 2... but that's not going to happen, so actually only the xda members have the chance to see their tablet working as it should, thanks to your work. Lucky us
Click to expand...
Click to collapse
For free A lot of clicks to install NEXT package but why people missed to click my Thanks button
EDIT:
This kernel version will directly jump to 1.3 in order to sync with P31xx version. Still inspecting line by line using diff tool to make sure already in sync
When i install this kernel on ZapBlaster the Video Player and Camera stops working
Sent from my GT-P5113 using xda premium
rap3rman said:
When i install this kernel on ZapBlaster the Video Player and Camera stops working
Sent from my GT-P5113 using xda premium
Click to expand...
Click to collapse
Two apps I never use on my tablet, so I haven't tested them...
ketut.kumajaya said:
Please try increase the CPU voltage by 25mV. In this version, CPU voltage 50mV lower than the previous values. You can use Android Tuner or /system/etc/init.post_boot.sh .
Click to expand...
Click to collapse
yeah ok i see this .
can you add Stweaks support ?

[SOURCE] Jelly Bean Kernel - Update 1 [Fixes Included]

https://github.com/StarKissed/starkissed-kernel-ekgc100
This repository will include the kernel source from the "Update 1" version of the kernel.
The compile instructions included with the source do not cover making any modifications to the kernel and the previous thread seems to mirror those instructions, so this one will be dedicated to creating custom kernels.
The buildKernel.sh script is fairly straight forward to demonstrate the process, but the config files have a few eccentricities when building the wifi. When loading the config during the build, there are prompts for the bcmdhd parameters that are not referenced anywhere, as the system image does not include any bcmdhd firmware files.
The repository includes a generic ramdisk, as none is provided. Odin flashes the boot.img as a compiled file, so the ramdisk cannot be merged during install like most phones do to maintain the current version. A key note to this is that modules are built into the boot.img ramdisk, which is confusing not coming from any device that does not require Odin.
Edit: The last comment on ramdisk flashing during the install may soon be resolved. There are compatible tools to pack a ramdisk made for the recovery platforms, allowing those items to be included in a zip with the kernel. All that is needed is a custom recovery and that is in the works.

[KERNEL][SM-T31x][SINGLE/DUAL][STOCK/CM] blackhawk's NEXT kernel 2.6.1

BIG FAT WARNING:
NEXT kernel 1.0 - 2.0 requires mali-400-r3p2-01rel3-t31x.zip!
NEXT kernel 2.1 and later requires mali-400-r3p2-01rel3-api29-t31x.zip!
Sources:
Kernel sources at https://github.com/kumajaya/android_kernel_samsung_smdk4x12/tree/cm-11.0
Features:
Based on Samsung OSRC Note 2 N7100, Tab 3 8.0 and Note 8.0 kernel source
Single source for T310, T311, and T315 target (and Note 2 N710x, Note 8.0 N51xx). Only T311 version well tested on my device but both T310 and T315 version boot T311, not working GSM radio of course
Traceable source level changes: https://github.com/kumajaya/android_kernel_samsung_smdk4x12/commits/cm-11.0
Open source Samsung exFAT modules included
Remove a lot of debug message from touchscreen driver, display, mmc, modem, bluetooth, etc. Now, dmesg output more useful than stock kernel
Disable a lot of kernel debugging support
Linaro GCC compiler
The ramdisk based on JB 4.2.2 AMG3 (T310 and T311) and AMH1 (T315), OTA recovery flash disabled
Some tweaks from gokhanmoral's siyahkernel for S3, passive entropy tweak applied
Auto root, SuperSU included please download SuperSU from Google Play. Heimdall v1.4.0 work for our device. For a brand new T31x, flash your device using "sudo heimdall flash --BOOT boot.img" and you will get rooted
Self compiled static BusyBox v1.21.1 in /sbin, android_reboot applet added (a quick but clean port from Android toolbox), swapon applet with priority option. On stock ROM, this version of Busybox will overwrite busybox binary in /system/bin or /system/xbin and save it as busybox.backup
Early boot scripts support (/system/etc/init.d, /data/local/userinit.sh, and /data/local/userinit.d)
Mali GPU driver r3p2-01rel3
KitKat external sdcard write access for user apps patcher
Known Problems:
Thanks To:
gokhanmoral, Chainfire
This part will be expanded. Most of the patches I applied are coded by someone else. Please remind me if I forget to give credits to anybody...
Downloads:
http://forum.xda-developers.com/devdb/project/?id=5210#downloads
Todo:
Dual boot
Special Thanks:
@onemoreidiot, @kutaxov, @bout_time
XDA:DevDB Information
[KERNEL][SM-T31x][SINGLE/DUAL][STOCK/CM] blackhawk's NEXT kernel, Kernel for the Samsung Galaxy Tab 3
Contributors
ketut.kumajaya
Kernel Special Features: Dual boot stock and CM ROM
Version Information
Status: Stable
Current Stable Version: 1.7
Stable Release Date: 2014-07-11
Created 2014-08-01
Last Updated 2014-09-11
Changelog 24/08/2014, NEXT 2.x WIP:
Samsung KitKat support
Auto root reworked
External sdcard write access auto pacher
Mali 400 r3p2-01rel3 API version 29
Changelog 11/07/2014, NEXT 1.7:
Samsung OSRC SM-T310 KitKat NF4 kernel source:
Exynos platform update
Battery, regulator, and charger driver update
Touchscreen driver and firmware update
Flip sensor, WiFi, sound, IR LED and camera driver update
Memory and block related tuning
swap, frontswap, and zswap support, etc
LZO compression/decompression update
Recent GCC versions (e.g. GCC-4.7.2) compatibility fix
Changelog 16/06/2014, NEXT 1.6:
GCC Linaro 4.9.1-2014.05 toolchain
Nintendo Wii remote support, latest CM version needed
Changelog 12/06/2014, NEXT 1.5:
Applied Samsung OSRC N7100 KitKat ND4 update on top of MK9, and then rebase our current kernel to it
Low power mode charging bug fix applied, this kernel compatible to our current JB bootloader and upcoming KitKat bootloader
Incompatibility issue to CM's hwcomposer fixed
New WiFi driver, new exFAT filesystem, arm and exynos spesific update, a lot of updates from Samsung
More efficient method of passing vsync to userspace for CM
GCC Linaro 4.8-2014.04 toolchain
Full changelog https://github.com/kumajaya/android_kernel_samsung_smdk4x12/commits/cm-11.0 . Linaro 4.8 patch still not available on my github, I will push it later
Changelog 21/04/2014, NEXT 1.4:
Kernel update: stop log buffer spam, extra scheduler (sio, vr, and row), interactive governor, revert f2fs quick hack, etc: https://github.com/kumajaya/android_kernel_samsung_smdk4x12/commits/cm-11.0
Ramdisk update to upstream CM (SE Linux context, sepolicy, init and healtd binary)
Install script update for easier future maintenance
Remove workaround fix for write access to the root of ext4 or f2fs formatted SD card
Changelog 26/03/2014, NEXT 1.3:
Fix boot menu reboot to bootloader option
Insecure adb, fix compatibility issue to Omni and Slim ROM
SE Linux policy update
Workaround fix for write access to the root of ext4 or f2fs formatted SD card
Default ueventd config
Compiled AROMA from source
Compiled static busybox from CM source with patched reboot applet
Changelog 16/03/2014, NEXT 1.2:
F2FS filesystem support, completely based on @DerTeufel1980 github commits and small hack in include/linux/blk_types.h https://github.com/kumajaya/android_kernel_samsung_smdk4x12/commits/cm-11.0, Extended PhilZ Touch recovery needed for ext4 to f2fs migration
exFAT filesystem integrated in kernel
In sync to CM 11.0 init changes, CM multi SIM support compatibility issue fixed
Changelog 22/01/2014, NEXT 0.6.4:
Updated kernel source, new Mali GPU kernel driver r3p2
SuperSu 1.91 for stock ROM
Directly flash mali-400-r3p2-01rel3-blobs-t31x.zip (on both ROM for dual boot user) is a must or your device will fail to boot!
As reported by @manup456, graphic glitch occurred in stock ROM with Mali r3p2. Workaround for this issue is "Turn off hardware overlays - Always use GPU for screen compositing" in Settings - Developer but this setting doesn't stick, so you must set it on every boot. Another solution is switch to previous version of NEXT kernel and directly flash Mali r3p1 blobs (on both ROM for dual boot user).
Changelog 16/01/2014, NEXT 0.6.3:
Reworked init script as CM playground
Changelog 09/01/2014, NEXT 0.6.2:
Compatible to the new CM lights module
Changelog 05/01/2014, NEXT 0.6.1:
Flip cover detector, work on both stock and CM ROM
Changelog 30/12/2013, NEXT 0.6:
CM 11.0 support
Changelog 10/12/2013, NEXT 0.5:
Initial T315 support
CM: Ramdisk synced to unofficial CM 10.2
Changelog 02/12/2013, NEXT 0.4:
CM: fix back camera still image capture
Changelog 28/11/2013, NEXT 0.3:
CM: fix bluetooth discovery problem
CM: fix front camera preview
Add PAC ROM support
Stock: SuperSU 1.80, thanks Chainfire
T310 support
Changelog 26/11/2013, NEXT 0.2:
Add lates CM-10.2 nightly 20131125 support
SuperSU 1.75 (for stock ROM), thanks Chainfire
Changelog 25/11/2013, NEXT 0.1 brand:
Stop more spams
Linaro gcc 4.7 compatibility fix, now use GCC Linaro 4.7 compiler
VR and SIO scheduler, SIO as default sheduler
R/W semaphores implemented using ARM atomic functions
Merge espresso10 interactive CPU governor, interactive with EARLYSUSPEND support
Initializing Android USB depending on the rom type for dual boot support
Notify userspace of vsync_time using sysfs for AOSP based ROM support
Partial netfilter update, allow tracking loopback and rate limit some of the printks
Unofficial PhilZ Touch recovery
Attached PhilZ Touch recovery repack for T310 and T311. Both version tested on my T311. Both version not well tested (i.e. backup and restore not tested since have no free space SD card) but since this version based on official P5100, everything should be work correctly. Flash this at your own risk using existing CWM/TWRP recovery or Heimdall v1.4.0 "sudo heimdall flash --RECOVERY recovery.img" command.
I am almost sure @Phil3759 will officially support our device anytime soon.
ROOT + BLACKHAWK + PHILZ TOUCH FOR YOUR BRAND NEW T31X
Single step for root and PhilZ Touch recovery using Heimdall v1.4.0:
Extract both blackhawk kernel boot.img and PhilZ Touch recovery.img
Install Heimdall for your operating system: Linux, OSX, or Windows
Boot your device into download mode, connect it to your computer, flash:
Code:
heimdall flash --BOOT boot.img --RECOVERY recovery.img
Done!
NOTE: I've deleted PhilZ Touch non SELinux version to avoid confusion, total 618 downloads for all variant!
Dual Boot FAQs
Adapted from droidphile's "Dual Boot FAQs" with permission.
1. "Why would I wanna dual-boot?"
A. You don't have to.
Suppose you're more of an aosp rom fan. But misses the HDMI out, bluetooth hands-free and love sammy camera more. Do a minimal installation of sammy rom and boot into it when in need of these features and use aosp rom otherwise.
Or you are a sammy rom fan but love the responsiveness and pure android feel of aosp roms.
And while you can dual boot two sammy or two aosp roms, it doesn't make any sense.
2. "What if I don't need dual booting?"
A. No issues. Kernel won't force to setup 2 roms. You can single boot as before.
3. "Will dual booting change my bootloader or do any dangerous stuff like setting my phone on fire?"
A. NO. Changes are at kernel and ramfs level only. Some space in your internal sd card is used, and also the unused hidden partition mmcblk0p16 is used to store cache of second rom. Dual booting doesn't repartition the filesystem or perform anything scary.
4. "I want to setup dual booting."
A. There are four situations:-
1) Sammy rom now. Want to use aosp as secondary.
2) Sammy rom now. Want to use aosp as primary.
3) Aosp rom now. Want to use sammy as secondary.
4) Aosp rom now. Want to use sammy as primary.
Prerequisites for any setup is
a) Flash latest blackhawk's NEXT kernel. BIG FAT WARNING: For stock Samsung ROM, NEXT kernel 1.0 or later requires mali-400-r3p2-01rel3-blobs-t31x.zip!
b) Flash latest Extended PhilZ Touch recovery: http://forum.xda-developers.com/showpost.php?p=51364377&postcount=33
c) Atleast 90% battery left.
d) 3 GB free on internal SD.
e) Some spare time
1) Present sammy, setup aosp as secondary:-
i) Reboot into recovery
ii) Select "Run Aroma Dual Boot Tool" in Advaced Menu, create system.img for CM/CM based ROM and then close it
iii) Reboot into secondary recovery (red on screen navigation buttons)
iv) Flash aosp ROM as 2nd ROM
v) Flash blackhawk's NEXT kernel again
2) Present sammy, setup aosp as primary:-
i) Reboot into recovery
ii) Nandroid backup your current sammy ROM
iii) Select "Run Aroma Dual Boot Tool" in Advaced Menu, create system.img for Samsung stock/stock based ROM and then close it
iv) Reboot into secondary recovery (red on screen navigation buttons)
v) Nandroid restore your sammy ROM as 2nd ROM
vi) Flash blackhawk's NEXT kernel again
vii) Reboot into primary recovery
viii) Flash aosp ROM as 1st ROM
ix) Flash blackhawk's NEXT kernel again
3) Present aosp, setup sammy as secondary:-
Same as (1), instead of flashing aosp to second, flash sammy to second.
4) Present aosp, setup sammy as primary:-
Same as (2), instead of flashing aosp to first ROM, flash sammy.
NOTE:
-To dual boot Two Aosp or Two Sammy roms, just follow (1) or (2) (depending on which one of them you want as primary/secondary), just flash Sammy instead of aosp or aosp instead of sammy.
5. "What things should I be taking care off while dealing with dual booting?"
A. - Make sure where you are: in primary or secondary recovery.
6. "How to boot into primary rom?"
A. AROMA based boot menu will help you on every boot.
7. "How to boot into secondary rom?"
A. AROMA based boot menu will help you on every boot.
8. "Is kernel partition shared?"
A. Yes. Same kernel boots both roms.
9. "If I flash another kernel (that doesn't support db) do I lose dual booting?"
A. Yes
10. "I lost dualbooting after flashing another kernel. I didn't do anything to second rom files in sdcard/.secondrom. How can I get db back?"
A. Just flash the latest blackhawk's NEXT kernel
11. "Will there be any performance degradation on the rom used as secondary compared to primary?"
A. NO
12. "Will my phone run slow overall because of db?"
A. NO
13. "How to flash a newer version of 1st rom?"
A. As usual, just flash it from primary recovery. Flash blackhawk's NEXT kernel again
14. "How to flash newer version of 2nd rom?"
A. Just flash it from secondary recovery. Flash blackhawk's NEXT kernel again
15. "Would upgrading 1st or second rom cause other rom to fail on boot?"
A. No. Partitions of other rom are not touched during upgrading.
16. "I miss the recovery I used before, so much.."
A. PhilZ Touch not bad at all.
17. "User apps of 1st rom are automatically available for second rom?"
A. NO. However, if you had backed them up using Titanium Backup or similar apps, just restore apps while on second rom.
18. "I wanna keep separate backup for apps in both the Roms, since I use one Rom for say entertainment and other productivity."
A. Setup different backup directory in Titanium Backup in 1st and 2nd rom.
19. "I don't see STweaks app in second rom."
A. This is blackhawk's NEXT dual boot solution for Galaxy Tab 2, a free implementation of gokhanmoral's Siyah dual boot.
20. "Do I need to anything special before flashing a newer blackhawk's NEXT kernel?"
A. NO. Just flash kernel in recovery - whichever you used to do. Kernel image is copied to the unified kernel partition
21. "How can I run same STweaks settings of 1st Rom in 2nd Rom?"
A. This is blackhawk's NEXT dual boot solution for Galaxy Tab 2, a free implementation of gokhanmoral's Siyah dual boot.
22. "How do I remove everything related to DB and run single boot again?"
A. In primary recovery, flash blackhawk's NEXT tool and delete 2nd ROM system image. OR delete .secondrom directory in /data/media while on 1st Rom.
23. "If secondrom files are kept in /data/media, will wiping data in recovery erase second rom files?"
A. NO. /data/media is skipped in CWM recovery.
24. "I read somewhere that both rom data partition use the same space. Doesn't that mean my apps are shared across roms?"
A. NO. It just means they uses same partition. They're still different directories.
1st rom data = /data
2nd rom data = /data/media/.secondrom/data
25. "Will hitting "Boot into Secondary Recovery" in recovery boot menu change my recovery?"
A. NO. It just runs (not flash) an alternate recovery so that you can configure dualboot settings.
26. "How do I backup 1st Rom and 2nd Rom?"
A. To backup 1st Rom, do what you did to backup rom while you were single booting a while ago.
To backup 2nd Rom, use the secondary recovery.
27. "Is there an easier way for dual-boot?"
A. Yes, send your device to me.
28. "DB architecture?"
A. Like you know, every rom has a /data, /system, /cache partition and a kernel to boot.
For primary rom, it's
mmcblk0p21 = /data
mmcblk0p20 = /system
mmcblk0p19 = /cache
And these won't change whether you're single booting or dual booting.
For secondary rom, data and system is stored in internal sd, cache in hidden partition. Note that internal sd in our device is mounted to /data/media.
We have data as a directory, System as an image in data/media/.secondrom. Cache in mmcblk0p16 which is hidden partition and not used otherwise.
- When second rom is booting, second rom data is bind mounted to mmcblk0p21 as /data/
- data/media/.secondrom/system.img partition is mounted as /system.
- mmcblk0p16 is mounted as /cache.
More FAQs will be added and the list will be updated as DB is improved.
Build kernel and kernel modules for Samsung Galaxy Tab 3 8.0 SM-T31x Exynos 4212
Ketut P. Kumajaya <ketut.kumajaya at gmail dot com>, Oct 2013
Samsung Open Source Release Center: http://opensource.samsung.com/reception/receptionSub.do?method=sub&sub=F&searchValue=sm-t31
Samsung OSRC exFAT source: http://opensource.samsung.com/reception/receptionSub.do?method=sub&sub=F&searchValue=exfat
Working kernel source, compilable and tested on SM-T311: https://github.com/kumajaya/android_kernel_samsung_lt01
I assume your home directory is /home/android
Clone kernel source repo:
Code:
$ cd /home/android/
$ git clone git://github.com/kumajaya/android_kernel_samsung_lt01.git
Create an environtment text file, save it as /home/android/build.env (change CROSS_COMPILE to point to your toolchain):
Code:
export CROSS_COMPILE='/opt/toolchains/arm-eabi-4.6/bin/arm-eabi-'
export LDFLAGS=''
export CFLAGS=''
export SUBARCH=arm
export ARCH=arm
Import environtment file above (dot+space+build.env), create build directory outside kernel source directory, and start the building process:
Code:
$ cd /home/android/android_kernel_samsung_lt01
$ . /home/android/build.env
$ mkdir -p /home/android/build/lt01
$ make O=/home/android/build/lt01 mrproper
$ make O=/home/android/build/lt01 tab3_3G8_01_defconfig
$ make -j8 O=/home/android/build/lt01
Copy the resulting kernel and modules to a binary directory:
Code:
$ mkdir -p /home/android/build/lt01-bin
$ cp /home/android/build/lt01/arch/arm/boot/zImage /home/android/build/lt01-bin/
$ find /home/android/build/lt01/ -type f -name *.ko -exec cp {} /home/android/build/lt01-bin/ \;
Your kernel and all kernel modules ready in /home/android/build/lt01-bin/
{
"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"
}
The resulting kernel also already tested as PhilZ Touch recovery kernel, running on SM-T311 PhilZ Touch repacked from PhilZ Touch recovery for Galaxy Tab 2 10.1 target
Samsung Galaxy Tab 3 8.0 original boot logo:
oc kernel ?? thanks.
Finally a developer with GTab 3 8inch :good: :good:
Can't wait to see a flashable zip and try on my tab
Just got a black screen of death when trying to replace Samsung boot logo Solved: reflash my own param.bin Odin flashable tar.md5
rothshek said:
oc kernel ?? thanks.
Click to expand...
Click to collapse
There's no OC commit: https://github.com/kumajaya/android_kernel_samsung_lt01/commits/master
Kernel and unofficial PhilZ Touch recovery repack attached at post #1.
Kernel: almost stock, compiled using gcc linaro 4.7, a lot of kernel debugging support disabled, still leave all Samsung kernel spams, restricted root disabled
Ramdisk: self compiled busybox included, auto root, init.d support, flash recovery disabled
Open source, commit history: https://github.com/kumajaya/android_kernel_samsung_lt01/commits/master
PhilZ Touch repack based on official PhilZ Touch for Tab 2 10.1, thanks @Phil3759
Still in development
Flash the kernel and/or PhilZ Touch using existing CWM/TWRP recovery
Derp!
ketut.kumajaya said:
Kernel and unofficial PhilZ Touch recovery repack attached at post #1.
Kernel: almost stock, compiled using gcc linaro 4.7, a lot of kernel debugging support disabled, still leave all Samsung kernel spams, restricted root disabled
Ramdisk: self compiled busybox included, auto root, init.d support, flash recovery disabled
Open source, commit history: https://github.com/kumajaya/android_kernel_samsung_lt01/commits/master
PhilZ Touch repack based on official PhilZ Touch for Tab 2 10.1, thanks @Phil3759
Still in development
Flash the kernel and/or PhilZ Touch using existing CWM/TWRP recovery
Click to expand...
Click to collapse
PhilZ Touch runs on T-310? ExFat memory cards supported? There is support for the work of internal memory?
marincax said:
PhilZ Touch runs on T-310? ExFat memory cards supported? There is support for the work of internal memory?
Click to expand...
Click to collapse
I will upload T310 version. T311 version attached at post #1 also work on T310 but every device have a different identity (default.prop). Internal and external memory works, including exFAT support.
I've been disable so much kernel spam but still a lot left flooding the kernel message buffer, just saying
ketut.kumajaya said:
I will upload T310 version. T311 version attached at post #1 also work on T310 but every device have a different identity (default.prop). Internal and external memory works, including exFAT support.
Click to expand...
Click to collapse
Thanks a lot for your reply.:good:
Will be there be enough to replace default.prop in a version for T-311 on default.prop recovery from original T-310?
marincax said:
Thanks a lot for your reply.:good:
Will be there be enough to replace default.prop in a version for T-311 on default.prop recovery from original T-310?
Click to expand...
Click to collapse
Yes, with 2 lines modification:
Code:
ro.debuggable=1
persist.sys.usb.config=mtp,adb
ketut.kumajaya said:
I've been disable so much kernel spam but still a lot left flooding the kernel message buffer, just saying
Click to expand...
Click to collapse
Please leave messages Logcat, kmsg and dmesg. :crying:
Yes, with 2 lines modification:
Code:
ro.debuggable=1
persist.sys.usb.config=mtp,adb
Click to expand...
Click to collapse
Thank you so will I do.
Still changed:
ro.secure=0
ro.adb.secure=0
marincax said:
Please leave messages Logcat, kmsg and dmesg. :crying:
Thank you so will I do.
Click to expand...
Click to collapse
Don't worry, disable the kernel message is really a bad idea :laugh: How about switchable logcat?
ketut.kumajaya said:
Don't worry, disable the kernel message is really a bad idea :laugh: How about switchable logcat?
Click to expand...
Click to collapse
Yes, it will be good. :good:

[ZIP] LazyFlasher - the swiss army knife of flashing custom kernels!

LazyFlasher & no-verity-opt-encrypt
INTRODUCTION
Hello Users and Developers of XDA!
LazyFlasher is a custom kernel flashing tool designed to make it easy to dynamically modify ramdisks and inject kernel binaries into the current boot image.
It's the swiss army knife of kernel flashing for use in Team Win Recovery Project.
The intent behind it was to allow a 1 custom kernel fits all approach, where your users can flash single zip on any ROM for a particular device,
allowing your kernel to be compatible with the vast majority of custom ROMs already out there. It takes away the pain of building custom boot.img
for each and every variant a user requests and puts it into 1 low maintenance intelligent universal flashable zip.
You might already know of @osm0sis's AnyKernel2 project. This approach is similar to that. Back in late 2015 I decided to design a more compatible, more friendly, and more feature filled version. Since then, AnyKernel2 has apparently improved a lot so if LazyFlasher doesn't accomplish what you need, AnyKernel2 probably will.
LazyFlasher does not currently support ELF boot images.
For users of no-verity-opt-encrypt: This thread can also be used to discuss the no-verity-opt-encrypt project which is just a minimal version of the LazyFlasher framework.
Disqus thread: https://www.xda-developers.com/xda-...-is-an-alternative-to-the-anykernel2-project/
THE GITHUB REPOSITORY
You can find LazyFlasher's development and download it here: https://github.com/jcadduono/lazyflasher
LazyFlasher source code is distributed under the BSD 2-clause license. You can do anything you want with it, however, some of the binaries used by it are under GPLv2 or GPLv3 licenses.
FEATURES
ChromeOS support (ChromeOS test-key signing and recognition)
MediaTek device support (MTK headers)
SELinux policy injection support via sepolicy-inject
Example scripts to disable dm-verity or forced encryption during the install process (010-no-force-encrypt, 015-no-dm-verity)
A process that executes a sorted list of scripts for making the desired modifications (separate from the framework)
Handily unpacks, decompresses, applies changes, compresses, and repacks boot images quickly and safely
Supports Gzip, LZ4, Bzip2, and LZO ramdisks. Support for LZMA and XZ is a work in progress
Supports arm (armv7), arm64 (aarch64), x86 (i386), x86_64 (amd64), mips, and mips64 architectures
Supports dtb.img replacement (place it in the root folder named "dtb.img")
Scans fstab and partition locations for the boot partition, optionally allows a preset location
Intelligently installs kernel modules by copying the previous layout of /system/lib/modules and creating symlinks
Creates modprobe supported /lib/modules aliases if kernel modules are included in the installer (030-kernel-modules)
Installs new files to the ramdisk and sets their permissions automatically based on file type from ramdisk-patch (020-patch-ramdisk)
Includes an optional bbe tool for applying binary patches
Unnecessary architectures and tools can be removed to save space
Many useful functions and variables included in the patch.d environment to simplify modification/patching scripts (patch.d-env)
Simple "make" build system
SETTING UP LAZYFLASHER
LazyFlasher is only designed for building on Unix based systems such as Linux, Mac OS X, and FreeBSD.
To download it (feel free to fork it so you can have a copy on your GitHub to modify instead!):
Code:
cd ~/build
git clone -b kernel-flasher https://github.com/jcadduono/lazyflasher.git
cd lazyflasher
To use LazyFlasher, you'll probably want to take a look at the Makefile, config.sh, and META-INF/com/google/android/update-binary (a shell script).
There's a few things you can change there to personalize it to your needs.
(make another git commit to save your setup!)
You should also check out the README! There is a lot of useful information there.
Once the installer is set up to your liking, all you have to do to build it is copy the resulting kernel binary from your kernel build output into the lazyflasher folder.
If you have built with kernel modules (make modules_install), copy build/lib/modules -> lazyflasher/modules.
Now simply run:
Code:
make
A TWRP flashable zip and sha1sum is created!
You should consider signing the zip with AOSP test-keys so that users can verify its integrity before flashing it.
LOOKING TO TRIM DOWN THE INSTALLER?
I have forked the kernel-flasher branch to a branch called kernel-flasher-arm64-minimal. This provides all the features of kernel-flasher except sepolicy injection and bbe, and only supports arm64 devices. It reduces the minimum zip size from 1860 KB to 200 KB.
You can use this branch instead if you like. If you're using another architecture, just look at the trimming commit as an example and apply it for your arch.
BUT I AM ON LE WINDOWS!
How did you build your kernel binary?!
Anyways, there is an alternative for building it on Windows.
You can download the LazyFlasher kernel-flasher branch as a zip file from GitHub and extract it somewhere on your PC.
Make your modifications using Notepad++.
You can then use a tool such as 7-zip to create a zip file by selecting everything in the folder, right clicking, and going to 7-Zip -> Add to "lazyflasher.zip".
LIMITATIONS AND KNOWN ISSUES
It will not run on TWRP built in Android 4.3 or earlier (usually builds older than 2.8.0.0)
Requires Busybox to exist in the TWRP build. All official builds should have this.
There may occasionally be some devices that are unsupported due to extreme modifications made to the boot image format by the manufacturer. If you have one of these devices, feel free to contact me and I will try to add support for it if it is worth the effort.
If you have an issue, please gather a recovery.log from TWRP after flashing and I will try to look into it. I can't do anything to diagnose your problem without a recovery log.
Code:
adb pull /tmp/recovery.log
JUST WANT TO DISABLE VERITY/ENCRYPTION?
You can build lazyflasher by itself, empty, without a kernel image or modules and flash it!
It's already set up to automatically disable verity and make encryption optional.
Alternatively, there's a branch already set up called no-verity-opt-encrypt. You can find prebuilt official zips at: https://build.nethunter.com/android-tools/no-verity-opt-encrypt/
WHO ELSE IS USING LAZYFLASHER?
I'll keep a list here of cool projects that are using it. Feel free to ask for yours to be added.
The Kali Linux NetHunter project (GitHub, Website)
no-verity-opt-encrypt, no-verity-force-encrypt, twrp-data-fstype-swap (Website/Download)
WHAT IS LAZYFLASHER USING?
LazyFlasher makes use of a few open-source projects. You can find their source code here:
bootimg / libbootimg for boot image unpacking/repacking - https://github.com/jcadduono/android_external_libbootimg
bbe for binary patching - https://github.com/jcadduono/android_external_bbe
bzip2 for ramdisks - https://github.com/jcadduono/android_external_bzip2
lz4 for ramdisks - https://github.com/jcadduono/android_external_lz4
futility for ChromeOS boot image signing - https://github.com/jcadduono/platform_external_vboot_reference
sepolicy-inject for sepolicy policy injection - https://github.com/jcadduono/android_external_sepolicy-inject
XDA:DevDB Information
LazyFlasher, Tool/Utility for the Android General
Contributors
jcadduono
Source Code: https://github.com/jcadduono/lazyflasher
Version Information
Status: Stable
Current Stable Version: 5.1
Stable Release Date: 2017-02-01
Created 2017-02-02
Last Updated 2017-02-07
We should give this man award.
The Job that he has done with this and Nethunter is just amazing.
Thank you and keep up the good work
Nice tool. Keep up a good work
Great Work! Hope i can include it into my Projects in the Future...
Thanks a lot for that!
You are a goddamn god.
Honestly Annoying said:
You are a goddamn god.
Click to expand...
Click to collapse
thx dude, usually that phrase is reserved for Chainfire accomplishments
y u nu support mah Indian AF MTK fone @jcadduono
Kidding, awesome work on this though!
Good one , this man develops for the developers !
Is it possible to have this on i9100 ? AnyKernel2 doesn't work with i9100
Skyline said:
Is it possible to have this on i9100 ? AnyKernel2 doesn't work with i9100
Click to expand...
Click to collapse
nope, no plans to support that device, surprised they are still out there, i would expect most to be dead emmc by now. :|
you can probably modify boot-patcher.sh to copy partitions to split-img folder then flash them back instead of using bootimg
i don't even know if lazyflasher's binaries will run on any of the i9100 twrp builds. might be too old.
if i can get an example layout of i9100's partitions i can fork it to a new branch, called kernel-flasher-sgs2 and make it compatible for you guys.
jcadduono said:
nope, no plans to support that device, surprised they are still out there, i would expect most to be dead emmc by now. :|
you can probably modify boot-patcher.sh to copy partitions to split-img folder then flash them back instead of using bootimg
i don't even know if lazyflasher's binaries will run on any of the i9100 twrp builds. might be too old.
if i can get an example layout of i9100's partitions i can fork it to a new branch, called kernel-flasher-sgs2 and make it compatible for you guys.
Click to expand...
Click to collapse
They are too old but still supported by lineage 14.1 and official twrp 3.0.2-1 without any problems
osmOsis dev of anykernel2 said that i9100 and older devices are having different boot img header format when i tried to run anykernel2 script it says Android magic is not found something like that
interesting tnx
Wow...
I'm just recognizing now, how powerful lazyflasher is ...
Setting default.prop values and settings. Disable Encryptions and so on. Wish I could contribute something but I'm still learning how it works. For now I've just included lazyflasher into my PATCH to disable DM Verity and forced Encryption and to make some edits on the default.prop. That's really useful since the build.prop doesn't allows such deep changes.
@jcadduono what would be in the Theory possible with the Lazyflasher? Could we add things like Gouverneurs or default Kernel Clockings? Init.d Support? Sorry if I sound noobish :angel:
So, uh, is there a TL;DR for lazy people? :silly: :laugh:
@jcadduono this is absolutely awesome. thank you for your hard work.
Hope that someone can dev nethunter to Asus zenfone 5 t00f :fingers-crossed:
can you please make a tutorial vedio of it because i don't get it and i'm sorry for my stupidity
Will it work for Android Oreo / LOS 15?
Did anyone succeeded in removing dm-verity? I got this error
good

Categories

Resources