[Moto G Android Development] Thawan do E1:
Bug

This kernel does not ships with a default config, so here it is how to config (an example) a profile for battery/balance/performance:

Battery

On CPU
CPU Gov - Interactive
Max freq. - 1190Mhz or 1094Mhz
Multicore power save - Aggressive
Alucard Hotplug - ON
On GPU
GPU max freq. - 450Mhz or 320Mhz (if dont play use 320Mhz)
GPU Gov - simple_ondemand or msm_adreno_tz with tweaked adreno idler
On I/O Scheduler
Scheduler - ROW or SIO

-

Balance

On CPU
CPU Gov - Interactive
Max freq. - 1190Mhz
Multicore power save - Enabled
AutoSMP - ON
On GPU
GPU max freq. - 450Mhz
GPU Gov - msm-adreno-tz
On I/O Scheduler
Scheduler - ROW or ZEN

-

Performance

On CPU
CPU Gov - Interactive
Max freq. - 1593Mhz
Multicore power save - Disabled
AutoSMP - ON
On GPU
GPU max freq. - 600Mhz
GPU Gov - msm-adreno-tz
On I/O Scheduler
Scheduler - ZEN

Note about some features

Display types WORKING with DT2W/S2S/S2W:

mdss_dsi_mot_inx_720p_video_v0 (TITAN/THEA)

mdss_dsi_mot_cmi_720p_video_v2 (FALCON/PEREGRINE)

Display types NOT WORKING with DT2W/S2S/S2W:

mdss_dsi_mot_jdi_720p_video_v1 (TITAN/THEA)

mdss_dsi_mot_jdi_720p_video_v0 (TITAN/THEA)

mdss_dsi_mot_lgd_720p_video_v0 (FALCON/PEREGRINE)

If you don't have a working DT2W/S2S/S2W or don't like it you can disable it and/or use AcDisplay app or Anbient Display of your ROM instead.

To check which display type you have by going into terminal and type:

su

cat /proc/cmdline

Bugs

None by now, if you encounter one please make a post in this thread with steps to reproduce and if possible a LOGCAT and DMESG. A simple how to help me debug.

To do

Undervolt and Userspace Voltage Controller

OC of 1.8Ghz

More Hotplugs

More Govs

More I/O's (SIOplus,FIFO)

Added all features to all variants

Vibrator Intensity Control

Ram Underclock

Sched & Mutex Tweaks

Stock and GPE variants

WQ_POWER_EFFICIENT

LZO Compression image (Fast boot)

DOLBY_DAP dependency fix

Frandom

Filesystems support:

NTFS Support / EXT 2/3/4 support / F2FS (Most roms only support it at /data)

Optimized ARM RWSEM algorithm

Silence some logs

NEON in kernel mode

Misc Crypt tweaks

LMK tweaks and adaptive

More Security Patchs

Yankactive (Cause reboot at the moment),Yankdemand,Smartmax,Lionhert,Impulse,DanceDance,Bioshock

I/O's: ROW,NOOP,Deadline,CFQ,FIOPS,BFQ,SIO,VR,ZEN

All avaliable TCPs congestions on Android

How to git and build

Setting up and building

Basics of GIT

- How to build my kernel:

export ARCH=arm
export SUBARCH=arm
export CROSS_COMPILE=/path/to/toolchain/bin/arm-eabi-
make mrproper (cleans config files)
make clean (cleans already builded files)
make falcon_defconfig (or you device_defconfig)
make menuconfig (if you want to tweak the config)
make (I use this too -o2 -j4 CONFIG_DEBUG_SECTION_MISMATCH=y CONFIG_NO_ERROR_ON_MISMATCH=y)

How to cherry pick commits

Basically to cherry pick a commit you have to have it source and branch, this is a simple how to do it

First of all you need to set your upstream since it is a fork of CM/LOS or STOCK source:

git remote add upstream linkingithub.git

For example

git remote add upstream https://github.com/CyanogenMod/android_kernel_motorola_msm8226.git

so if you want to cherry pick a commit from me

git remote add bryanbytez mysourcelink.git

and after that you need to have my source locally but stay calm this wont mess you source

git fetch -all

To merge upstream changes (From CM/LOS or Motorola)

git merge upstream/cm-13.0

This will merge upstream cm branch cm-13.0 in your source code.

Misc help:

http://xdaforums.com/showthread.php?t=2319018 (about boot.img, ramdisk and others)

https://stackoverflow.com/questions/2816715/branch-from-a-previous-commit-using-git (Unlike me you can just revert or create another branch based on the commit and not delete the whole source code :p)

https://stackoverflow.com/questions/4410091/github-import-upstream-branch-into-fork (Import a upstream branch on your fork)

And to revert a git: git revert sha1, example git revert eab5c8fef098548f0f00085196bbf40f41bf8ba1

Source/Credits

If you want to post this on your site or other forum it's okay just post a link to this thread too and the correct credits and if you can, pm me with link so i can see it too, thanks.

The GNU General Public License is a free, copyleft license for software and other kinds of works.

The GPL permits use, share, study and modify.

But this does not mean you should not give the deserved credit to the previous author.

So if you use my source code under GPL you must share with GPL too and quote me in the credits.

CM/LOS/AOSP Based Source

Stock/GPE Based Source

Thanks to:

GOD

The Real Dev's:

Motorola/Lenovo

LineageOS/CyanogenMod/AOSP/CAF Teams

A special thank you to [MENTION=5736790]Kamin4ri[/MENTION] to be answering questions from a noob :p

[MENTION=4723408]hurtsky[/MENTION] @pinkflozd [MENTION=6563295]zakee94[/MENTION] [MENTION=4403780]TeamMex[/MENTION] (not a team :P) @RenderBroken @alin.p @Flashhhh [MENTION=4984300]Shivam Kuchhal[/MENTION] [MENTION=5881993]RolanDroid[/MENTION] @attack11 @DC07 @frap129 @-decipher- @bedalus @MetalPhoenix45 [MENTION=5272996]srisurya95[/MENTION] @para94 @chijure @Aayushya @neonkat and @faux123 for inspiration and commits (i guess that everyone that i pick a single commit is here... since i don't know yet to pick commits (picking commits automatically add the credits) a big thanks to all !)

[MENTION=5284595]kwoktopus[/MENTION], for the tutorial how to build

And you the user!

If I forget someone please contact me and I will add here! [/FONT]​

XDA:DevDB Information

[Kernel][GPL][K-N][Falcon][UBER TC]ZER0 Byte Kernel[Nightlys][CM/AOSP], Kernel for the Moto G

Contributors

BryanByteZ

Source Code: https://github.com/BryanByteZero/android_kernel_motorola_msm8226

Kernel Special Features: OC/UC/DT2W/S2W/S2S/Sound Patchs and a lot more, check it!

Version Information

Status: Nightly

Current Stable Version: R3

Stable Release Date: 2017-02-22

Current Beta Version: R4

Beta Release Date: 2017-04-29

Created 2016-08-01

Last Updated 2017-05-01[/QUOTE]