yashsingh1/xdaforums huggingface dataset:
[Moto G 2015 Original Android Development] DazzlingDarkness:
Hello guys, today I decided to install this. Is there anything that I should know before flashing this kernel? I am using official cm12.1 (cm-12.1-20151117-SNAPSHOT-YOG7DAO1K2-osprey) and I want to start with my marshmallow experience :D. I am planning to install cm-13.0-20160429-NIGHTLY-osprey + marshmallow open gapps + squid_kernel_r16f-osprey. Everything should be OK right? I want a pretty stable experience. Thanks in advance.
[Moto G 2015 Original Android Development] firefoxjds:
rcupdate.h Help???? Stuck

include/linux/rcupdate.h

I cant seem to get past this point: #error "Unknown RCU implementation specified to kernel configuration"

ln283

#if defined(CONFIG_TREE_RCU) || defined(CONFIG_TREE_PREEMPT_RCU)

#include <linux/rcutree.h>

#elif defined(CONFIG_TINY_RCU) || defined(CONFIG_TINY_PREEMPT_RCU)

#include <linux/rcutiny.h>

#else

#error "Unknown RCU implementation specified to kernel configuration"

#endif

It seems as if rcu is not defined? Idk Can anyone help please. Id greatly appreciate. I know that tiny rcu and tiny preemt rcu shouldnt realy go together like that, but that doesnt even really seem to be the problem. Thanks.

Ps I am using squid kerenel for osprey msm8916
[Moto G 2015 Original Android Development] firefoxjds:
found the solution include/linux/rcupdate.h

line 278 -292

#if defined(CONFIG_TREE_RCU)

#include <linux_rcutree.h>

#elif defined(CONFIG_TREE_PREEMPT_RCU) || defined(CONFIG_TINY_PREEMPT_RCU)

#include <linux_rcutree.h>

#include <linux_rcutiny.h>

#elif defined(CONFIG_TREE_RCU) || defined(CONFIG_TREE_PREEMPT_RCU) || defined(CONFIG_RCU_TRACE)

#include <linux_rcutree.h>

#elif defined(CONFIG_TREE_RCU) || defined(CONFIG_TREE_PREEMPT_RCU)

#include <linux_rcutree.h>

#elif defined(CONFIG_TINY_RCU) || defined(CONFIG_TINY_PREEMPT_RCU)

#include <linux_rcutiny.h>

#else

#include <linux_rcutree.h>

#include <linux_rcutiny.h>

#endif

This is for include linux/rcupdate.h kernel header (squid) msm8916 osprey

This fixed the problem with: #error "Unknown RCU implementation specified to kernel configuration"

Solved
[Moto G 2015 Original Android Development] Sconeikiin:
Does this kernel works with swap files? I mean does it have swap support?
[Moto G 2015 Original Android Development] rwxr-xr-xis:
Yes, zram
[Moto G 2015 Original Android Development] Gravemind2015:
Does our kernel support and recognize exFAT file system on sdcard? It would be great if it does.

Btw i have class 10 sandisk ultra 64GB sdcard popped up.

Edit1: I tried formatting an old 2gb card and it works,at least in official cm13.But is it safe? Will it be efficient?Thanks.

Edit 2: I have converted the 64gb one to exFAT too. Works fine in both android and twrp.

Broadcasted from Zeta Reticuli
[Moto G 2015 Original Android Development] $lim $hady:
How did you convert it to exFAT.. Even i have 64gb class 10 card...??

I tried with partition tool, it gives only fat and fat32 option.
[Moto G 2015 Original Android Development] Gravemind2015:
To be exact, I popped my card into a card reader and formatted via windows (my computer>right click on sdcard>format).It only showed FAT and exFAT btw.Kept allocation size to 'default allocation size'.

TWRP has an option to do it (TWRP>Wipe>Change or repair file system>Sdcard>change file system>exFAT)

*formatting deletes all data*

Broadcasted from Zeta Reticuli
[Moto G 2015 Original Android Development] squid2:
Squid Kernel r16g

This is a fairly boring release with the past month's security updates. As always, the download is on the downloads tab.
[Moto G 2015 Original Android Development] JoshinPl:
Zip signature verification failed with twrp and the lastest kernel. Downloaded 2 times with the same error. MD5 checksums are correct.

Enviado desde mi MotoG3 mediante Tapatalk
[Moto G 2015 Original Android Development] hekomat:
Strange.. Flashed fine with no error on my G3.
[Moto G 2015 Original Android Development] squid2:
None of the versions here have a zip signature, so the validation would fail of course.
[Moto G 2015 Original Android Development] AniketDhoke:
Sir can you add fast charge feature in this kernal
[Moto G 2015 Original Android Development] ndasarathy:
I flashed the previous version. in order to flash this one shall i just flash it in recovery? Will it replace the older one?
[Moto G 2015 Original Android Development] Gravemind2015:
Yes. But also clean dalvik/art cache and cache partition.

Broadcasted from Zeta Reticuli
[Moto G 2015 Original Android Development] Vink67:
Thanks for your kernel it work great.

If you can add Pegasusq governor, Alucard HotPlug hotpluggin driver, TCP algorithm Westwood+ ?

It will be really nice !

Thanks
[Moto G 2015 Original Android Development] $lim $hady:
Will this kernel work with latest build of CM 13 for merlin?
[Moto G 2015 Original Android Development] HTCDreamOn:
It works for osprey so I don't see why not, search the thread.
[Moto G 2015 Original Android Development] Alucard:
Thanks [MENTION=6485916]squid2[/MENTION] for the hard work,may i ask,is it possible to make a version where we can overclock or the opposite the frequency of the cpu and especially the gpu for better game performance?
[Moto G 2015 Original Android Development] HTCDreamOn:
Read this page where the issue is discussed by Squid.

If by 'or the opposite' you mean underclock then you can already select lower maximum frequencies using an app such as Kernel Auditor. This also lets you change the input boost frequency etc.
[Moto G 2015 Original Android Development] Alucard:
Oh i see,well i can accept that cpu overclocking is hard to achive but how about overclocking the gpu wich would matter in gaming performance?
[Moto G 2015 Original Android Development] Secuential:
Hi. My phone is an XT1540 with RR 5.6.9 ROM. I flashed the latest version of this kernel (r16g) and after the boot up, all my apps were gone (GApps, I use Apss2SD and even my unlinked apps were gone, everything not included in the system ROM was gone). It looked like if it wiped my data partition, but I checked with File Manager the data/data folder and it had all the folders of my previously installed apps, like it only wiped the apk files or something like that.

Now I reflashed my RR to get the stock kernel back, and everything is back to normal, unlinked apps were back with their data, then I recreated the Apps2SD mount script, rebooted and all my linked apps were restored with their data too.

Why did that happen? I wanted to use this kernel, but I don't know what caused that behavior o.o. I may try to flash this kernel again, but later or tomorrow and I don't want this to happen again. I searched in this forum but found no one else with this problem.

Edit: seems only my saved accounts were deleted, only have to re-add them.
[Moto G 2015 Original Android Development] sfoot13:
Try switching selinux to permissive.
[Moto G 2015 Original Android Development] Secuential:
It was on permissive before flashing it. Don't know if it stayed permissive after flashing, but will try again tomorrow.
[Moto G 2015 Original Android Development] Secuential:
Tried again on permissive selinux, wiped cache and dalvik,even tried versions 16g, f and d of the kernel and still the same. I flashed a different kernel over Squid's one and everything came back to normal.
[Moto G 2015 Original Android Development] HTCDreamOn:
Squid has improved graphics performance without overclocking, if you look back at his commits/ changelog.
[Moto G 2015 Original Android Development] Alucard:
Oh thats good,but how do you improve graphics without overclocking?Just curious to learn.Is san andreas still laggy with squid kernel?
[Moto G 2015 Original Android Development] theSperks:
Does anyone have an idea when an update for this kernel is gonna be released?
[Moto G 2015 Original Android Development] sfoot13:
I hope that soon, I like this kernel :) just wait bro
[Moto G 2015 Original Android Development] viraltagdiwala:
Why can't I select core 3 and core 4

I'm unable to select core 3 and 4 and this is kind of causing a performance decline. Is this a feature baked in the kernel or some other error?
[Moto G 2015 Original Android Development] DZeros:
Can I flash this over RR 5.5.9 (5.1)?

I am happy with the ROM experience, and it is CM12 based, but I want some more kernel control and features.
[Moto G 2015 Original Android Development] Chandresh204:
can i flash the latest kernel or should i flash r11e for stock 5.1.1 ?
[Moto G 2015 Original Android Development] boswelja:
Hope this isn't dead..
[Moto G 2015 Original Android Development] Alucard:
Me too.
[Moto G 2015 Original Android Development] acejavelin:
Why would you think it is?!?! It was updated a month ago...

The dev supports several devices with his kernels, not just the Moto G 2015, is active on the site, and last posted within 24 hours.

Do you have some issue with the current kernel?
[Moto G 2015 Original Android Development] boswelja:
There didn't appear to be any changes in the thread for a while
[Moto G 2015 Original Android Development] acejavelin:
lol... in this case, that is a good thing. This kernel is rock solid stable, nothing much to change about it.
[Moto G 2015 Original Android Development] viraltagdiwala:
I second that. The most stable kernel I've used for my moto G 2015.
[Moto G 2015 Original Android Development] Chandresh204:
i am unable to encrypt my moto G XT1550 running stock optimised ROM with this kernel. Is encryption issue kernel related?
[Moto G 2015 Original Android Development] sticktornado:
Encryption detects if your device is rooted or not, so no. It refuses to encrypt with a rooted phone.
[Moto G 2015 Original Android Development] Chandresh204:
so is it possible to root the phone after it has been encrypted? i would like to encrypt my phone and really need root for certain apps,
[Moto G 2015 Original Android Development] acejavelin:
No offense, but why? if your rooted then the bootloader is unlocked, if it's unlocked any reasonably techy person with access to Google can get the encryption key from the system easily and decrypt any information without ever booting the operating system. Encryption on an unlocked device is a waste of time and just adds more overhead to the device.
[Moto G 2015 Original Android Development] Chandresh204:
so I was thinking if this scenario is possible: I want to stick to optimised ROM with squid kernel, so right now I have unlocked boot loader, If I initiate OEM Bootloader Lock, it will factory reset, meaning it will reset the optimised ROM to factory without root, and the apps removed using root will stay removed. and the kernel will be squid kernel.

Is the above scenario possible? will it work?
[Moto G 2015 Original Android Development] acejavelin:
I don't believe so... You have to return the software status to official before it will complete the (re)lock, that is the he reason all instructions to "relock" the bootloader include flashing the official rom image in its entirety before the process can be completed. TBH, it would take some experimentation to determine if this is possible.
[Moto G 2015 Original Android Development] sticktornado:
This guy is right. The bootloader will not relock without all the official software, meaning the ROM, kernel, recovery, logo, etc. The only way to relock your bootloader would be to flash all the stock software over fastboot, and even then it would be a waste of time as people would still be able to see that it was unlocked previously in the bootloader menu.
[Moto G 2015 Original Android Development] Diesel779:
Ignore this, my question was answered in the OP. Thanks to the dev for your work.
[Moto G 2015 Original Android Development] ==vj==:
Request: Faux governors missed

[MENTION=6485916]squid2[/MENTION]

I have a request.

Since the kernel ships with the popular Intelliplug hotplug, can we get to taste 3 popular faux governors namely

Intellimm, Intellidemand and Intelliactive.
[Moto G 2015 Original Android Development] baggino:
This kernel can flash resurrection remix 5.5.6
[Moto G 2015 Original Android Development] rcaliman:
This kernel works for versions with 2 sim cards?

Enviado de meu MotoG3 usando Tapatalk
[Moto G 2015 Original Android Development] squid2:
Yes to both
[Moto G 2015 Original Android Development] rcaliman:
Everything working, but unfortunately is still heating up and consuming more battery than the stock kernel in XT1543. I hope to use it in the future.
[Moto G 2015 Original Android Development] Moto G User:
[MENTION=6485916]squid2[/MENTION] thanks for the help in the other thread just flashed your kernel and using lionfish governor I'm getting butter smooth performance like stock. Squid kernel FTW :)
[Moto G 2015 Original Android Development] Harry551:
[MENTION=6485916]squid2[/MENTION] Tnx for this kernel... Is really fast and stable! So u can add DT2W feature and fast charge support? Tnx a Lot
[Moto G 2015 Original Android Development] JackSparrow17:
+1
[Moto G 2015 Original Android Development] vandermark:
What do you mean by 'using lionfish governor'? Is there some (kernel) setting where you can change settings in the governor? please explain what I am probably missing here?
[Moto G 2015 Original Android Development] feligoni:
Download Kernel Adiutor and configure it the way you like it :)
[Moto G 2015 Original Android Development] vandermark:
I didn't know that! Tx for your reply!

What an immense number of options, what is recommended for CM nightly with squid2's kernel?
[Moto G 2015 Original Android Development] feligoni:
I'm on stock so I can't really help you. I believe it has more options in CM. But I changed the governor and some misc settings. Not much hehe
[Moto G 2015 Original Android Development] charutl:
Is this support fast USB charge?? Like blue spark?

:confused::confused: IS THIS KERNAL SUPPOERT FAST USB CHARGE ?????
[Moto G 2015 Original Android Development] krossifix:
Features quoted by the OP does not include this. So i guess this does not support it.

Hopefully with more encouragement from Moto G 2015 community will help developer include this feature.
[Moto G 2015 Original Android Development] squid2:
This kernel charges at the rate supported by the charger. When you connect to an AC adapter, it will make use of the current it can provide. When you connect to a 'turbo charger" (12V), it will charge at the turbo rate. When you connect to a normal USB port, it will comply with the specification and draw the 500 mA that the specification permits normal USB ports to safely provide. This is the same behaviour as the stock kernel.

What the so-called "Fast Charge" feature does is that it forces all USB ports, including normal USB data ports on you're computer to behave as wall chargers and it will draw all the current that the port can provide. This violates the safe limits specified by the USB specification, but it usually works because the USB ports on good quality computer boards will have protection circuitry on the other side to prevent overcurrent. However, if you connected your phone to a compliant USB port only designed to provide 500 mA, and the port had damaged or lacking protecting circuitry, the phone could damage your computer's USB port.

I don't like the idea of violating the USB specification and potentially damaging USB ports. Thus, I prefer maintaining the present compliant and safe implementation. Your phone will charge at the rate that the port you plug it in to is intended to do so.
[Moto G 2015 Original Android Development] eng.stk:
This is not very accurate.

In USB 2.0 there is what is called Hi Power HUBs, that are present in lot's of PC mainboards. Ports can provide much more han 500mA without any stress. Some USB peripherals require a higher amount of power that's why you have external HDDs wih dual USB connectors.

But if the port can provide the necessary amount of power, you can use only one (the one with data link).

What happens is that , msm_otg negotiates the mode an d signals charger controller. The fan54046 charger controller negotiates max current draw available and HUB controller replies with the max current available until that level (can be half or whatever). Bottom line, if the port only can put out 500mA, even with fast charge on, the fan54046 will negotiate and charge at 500mA. No magic here.

My implementation doesn't force AC mode, what it does is force max level with USB data mode on: this is to say, make it connect like it would on a USB 3.0 port for instance than can provide 900mA.

This is not dangerous at all to either hw end. And the G3 charger controller makes small steps and takes into account return current feed to prevent burnouts.

The PMIC on G3 only allows 800mA at max either charger or whatever source, limited by the charger fan54046.

It doesn't allow multivoltage like you said. Neither fast charge (would be possible to make 1500mA and QC 1.0 if Moto used other charger controller than fan54046).

And for last, what does fast charge switch when connect with AC charge?

Good quality chargers will turn on proprietary or fast charger mode and it will charge at max fan54046 can handle 800mA.

But some low quality ones can only negociate at 500mA (which is the default). If the low quality ones can really put lets say 1200mA, it will force the fan54046 to use proprietary charger mode and it will charge at 800mA.

I am not saying you should merge the feature, just to make some info on it.

Hope this makes sense.
[Moto G 2015 Original Android Development] squid2:
Thanks for the clarification. I had seen other implementations (on other devices) that that were not very smart, but what you described is fine.
[Moto G 2015 Original Android Development] ryude:
My phone kept rebooting randomly the other day with this kernel. I reflashed the ROM and it stopped rebooting. Then I flashed this kernel again. It rebooted again.

Is it possible the kernel is the problem or is it the ROM?
[Moto G 2015 Original Android Development] hp420:
I always used the fast charge feature on my nexus 4...I wish it were merged, personally. I think having more options is always better. If you don't like it you don't have to enable it ;)
[Moto G 2015 Original Android Development] acejavelin:
Not entirely a waste of time, as you could then encrypt the device.
[Moto G 2015 Original Android Development] yuritavares20:
Is this kernel good for Merlin?
[Moto G 2015 Original Android Development] TechnoAnder:
Yes dude. ;)
[Moto G 2015 Original Android Development] robotnikz:
SquidKernel or FireKernel for Battery??

Gesendet von meinem MotoG3 mit Tapatalk
[Moto G 2015 Original Android Development] TechnoAnder:
Both have awesome improves, in my opinion SquidKernel has a better battery backup than FireKernel because has a nice memory management, CAF fixes which are good for this Kernels, behind the better of this Kernel is the lionfish governor because this have a parameters for a good stability between battery and CPU performance, we are inure to see Kernels with CPU governors, a lot of Shedulers, display features, etc... But for me the best option is Squid Kernel for his great commits of performance and optimizations. :fingers-crossed:
[Moto G 2015 Original Android Development] aditya 786:
is it compatible with cm 13?
[Moto G 2015 Original Android Development] Gravemind2015:
Yes.

Broadcasted from Zeta Reticuli
[Moto G 2015 Original Android Development] deyerick:
please tell me about your kernel setting

im on RR rom for merli

thanks
[Moto G 2015 Original Android Development] treebaard:
looks like this kernel doesn't boot any more after (dirty flashing to) cm13 (osprey, official) 20160803 (2gb ram). Starts fine using the stock kernel, but when I install this kernel I get infinite loading screens, then 'optimizing', repeat. Gone through 4 cycles, then went back to stock.
[Moto G 2015 Original Android Development] Hedied4me:
Are you dirty flashing rom with kernel?
[Moto G 2015 Original Android Development] Realz4747:
What's the difference between "hybrid" and "userspace" power suspend modes?

And which one is better for battery saving?

Thanks!
[Moto G 2015 Original Android Development] treebaard:
I'm afraid I don't quite follow. I flashed rom, then kernel (as I've always done), then rebooted. This doesn't boot. Then flashed rom w/o kernel, rebooted. This works fine. Then flashed kernel again. Doesn't boot. So now i'm back on the cm13 stock kernel.
[Moto G 2015 Original Android Development] treebaard:
Experiencing the same behavior with the 20160804 CM13.01 build: flashed rom, booted to let it optimize, rebooted. No issues. Then flashed the 16g kernel, no dice: optimizing again, then showing the bouncing petals or whatever for a few minutes, after which it goes back to optimizing again, etc.
[Moto G 2015 Original Android Development] Hedied4me:
If you are coming from a different kernel (ie. stock or cm13) you have wipe both caches, then flash rom and new kernel. The only time you don't have to do this is if your flashing the same kernel you currently have but a newer or older version of it.

Not sure if that helps, but sometimes it needs to be clarified.
[Moto G 2015 Original Android Development] Gravemind2015:
Shouldn't we dirty flashing the rom while downgrading a kernel verison too? Say if the newer version has extra codes (features/governors for example) that was not present in the version we intend to downgade to, the extra code would be left behind when we downgrade and probably can mess up.

I am not sure about this but I assumed that kernels only update/modify parts of the installed kernel without actually replacing them. Because if the whole kernel was going to be replaced anyway then it would be no longer necessary to dirty flash and restore the stock kernel. This too explains why updating a kernel is possible without dirty flash in-between (and why different one needs it obviously). Still, a clearer explanation is always appreciated.[emoji1]

Broadcasted from Zeta Reticuli
[Moto G 2015 Original Android Development] knpk13:
Depends on the kernel. Many use anykernel2 (like this kernel), so they use the existing ramdisk and you need to flash it over an existing kernel. Some have a static ramdisk (like boeffla kernel, which just recently switched to anykernel) and are totally independent(no need to dirty flash rom or have a kernel installed first). Some kernels modify only /boot, and other kernels install modules on the /system partition.

And most kernels don't need cache and dalvik wipe.

Or you could always fastboot a stock or modified boot.img instead of using a flashable zip. But if that kernel also modifies /system then you could run into errors with this method.

Which is exactly why,

I try to use universal methods (compatible with most devices). So when I dirty flash, I wipe system and reflash everything. So I don't need to worry/remember that this mod has an add-on.d script and this kernel needs to be reflashed or other special procedures. This is especially useful because SuperSU restores a previous boot.img if it detected the kernel has previously been patched by SuperSU itself. Then it reverts to the stock kernel or older custom kernel version. So it's a pain sometimes to update kernels when you're using SuperSU. Which is why you should wipe system and/or reflash rom if you don't want to remember individual instructions for different kernels.

Btw,

I'll probably move on to magisk (a universal platform for systemless mods) and phh superuser instead of SuperSU. Right now I'm using magisk with SuperSU. Universal methods eliminate a lot of headaches.

Edit: taken from FAQ at boeffla.de

Q10) All: Do I need to wipe, wipe cache, or wipe dalvik cache before or after flashing your kernel?

This is one of the fairy-tales which just survive now for many many years. The simple answer to that is: No.

And the reason is as simple as the answer: The kernel does not even "see" cache or dalvik cache. This is something handled a few layers above the kernel by rom, the Dalvik VM etc. So how should the kernel be concerned about something that is out of reach for him?

But: It is also not wrong to do it generally as it sometimes fixes weird issues with some apps, so I also do it from time to time. But it is not related to the kernel flash at all, just to make that clear again.