yashsingh1/xdaforums huggingface dataset:
[Nexus 4 Original Android Development] CrimsonSmear:
For anybody that is interested...

I have updated my init.d script to include Sound Control, Hotplug Driver Control, Touchscreen Accuracy Filter Control, common color profiles (including original molesarecoming's profiles, as init.d scripts are not bound by app restrictions) along with a working Interactive Governor Control (at the bottom of script).

Please provide feedback (not corrections) regarding Hotplug and Governor values, as they are intended to be a more battery/heat conscious balance.
[Nexus 4 Original Android Development] alanwyl:
echo "90" > /sys/class/misc/mako_hotplug_control/first_level

echo "25" > /sys/class/misc/mako_hotplug_control/second_level

echo "50" > /sys/class/misc/mako_hotplug_control/third_level
[Nexus 4 Original Android Development] Eric-1987:
The micro stutters are gone. Very nice!
[Nexus 4 Original Android Development] drawde40599:
Franco 120 is great, but im having nothing but data issues with theses newer builds, didn't have any issues with 111 with data, data issues didn't start till after 111 cant say what build casue i didn't use them because they heated up phone, 120 dont heat up but internet stalls like crazy, wifi works fine. Guess im stuck on 111
[Nexus 4 Original Android Development] mcvigo:
120 very smooth.

I want to maximize battery life, what can i do?
[Nexus 4 Original Android Development] Vangelis13:
Use your phone less.

Btw, I mean that seriously.
[Nexus 4 Original Android Development] thuynh022:
Turn on airplane mode.
[Nexus 4 Original Android Development] Luigiesin:
I suggest you keep stock settings..

Sent from my Rock & Roll Nexus 4 \m/

ROM: PA 3.1 (Mar07)

Kernel: Franco M1/r111

T-Mobile
[Nexus 4 Original Android Development] miku3191:
Online Cores !!!

Franco... Awesome work ! I am your Kernel fan since I bought Nexus 4.

But after updating to fku v9.1 and flashing nightly #120, all my cores stay online all the time.

I thing it is something with hotplug control, my battery depletes very fast !

I referred to earlier post by you, it suggested to manually clear data and apply

max 90

med 25

low 50

I tried it too,changed governors for a try, killed apps running in background, but no help!

Went back to Milestone 1, and two cores are offline now !

plz help !
[Nexus 4 Original Android Development] Twau:
r120 feels so much smoother compared to r119! Great job as always!

Sent from my Nexus 4.
[Nexus 4 Original Android Development] rocklee80:
maybe clear francos apps data and reboot the device so it can load the default values for r120. On my phone the new hotplug driver plays very well :) no problems at all here with on and offlining cores
[Nexus 4 Original Android Development] miku3191:
No Luck !! :(

Gave it a try ! But no luck here ! :( All cores remain online, still !
[Nexus 4 Original Android Development] realfelix:
Bad flash?
[Nexus 4 Original Android Development] miku3191:
Flashed two times (AUTO-FLASH), and Manually once, by zip !
[Nexus 4 Original Android Development] Luigiesin:
Did u nandroid?

Sent from my Rock & Roll Nexus 4 \m/

ROM: PA 3.1 (Mar07)

Kernel: Franco M1/r111

T-Mobile
[Nexus 4 Original Android Development] miku3191:
Yeah... it is ...
[Nexus 4 Original Android Development] rocklee80:
Maybe you have an another app installed like trickster mod? If yes uninstall it and look
[Nexus 4 Original Android Development] Luigiesin:
+1.. Or setCpu... Disable all those apps and just leave Franco's

Sent from my Nexus 7 \m/

ROM: PA 3.15

Kernel: Franco r55
[Nexus 4 Original Android Development] miku3191:
I don't have anything else... other than fku !
[Nexus 4 Original Android Development] BelzIgoh:
u change the wrong value.

the hotplug value should be like these,

high (max) 90

medium 50

low 25
[Nexus 4 Original Android Development] hospital349:
You're wrong. It should be:

High: 90

Medium: 25

Low: 50

These are the new hotplug values for r120, with Franco's official stamp of authenticity.
[Nexus 4 Original Android Development] miku3191:
I did this too ... It was bit tricky, what franco suggested in earlier posts, i also got confused, so i tried both.

keeping medium hotplug threshold once 50 and then 30...
[Nexus 4 Original Android Development] hospital349:
Just to clarify :)
[Nexus 4 Original Android Development] BelzIgoh:
omg. i also got confused by it. thanks.

will try using 90/25/50
[Nexus 4 Original Android Development] ImbaWind:
Bump, anyone noticed when using noozxoide the processing stopped when screen is off after 1 minute or 2?

Tried increase suspend freq from 702mhz to 1.3ghz but didnt fix the problem
[Nexus 4 Original Android Development] ki2luminati:
Franco i have a little request. Can you add headset boost so we can set it from within your app? Thanks
[Nexus 4 Original Android Development] Gugus38:
It's already there...
[Nexus 4 Original Android Development] ki2luminati:
Nope thats volume_boost.. They are two different things..
[Nexus 4 Original Android Development] ImbaWind:
It's Headphones Volume Boost
[Nexus 4 Original Android Development] alanwyl:
http://xdaforums.com/showthread.php?p=39103249#post39103249

Read from there, then the next page.

Said to be problems with the boost thing
[Nexus 4 Original Android Development] EstarlinMReyes:
There are two: Headset_boost and volume_boost

Sent from my Nexus⁴ with ParanoidAndroid + Franco.Kernel
[Nexus 4 Original Android Development] ki2luminati:
im sorry, but it's not... in the soundcontrol path there are 2 files: Volume_boost, and Headset_boost. volume_boost is what you can set in the app.. my request was to add the other one so we can adjust both from the app itself
[Nexus 4 Original Android Development] rocklee80:
+1 would see that too in francos app that would be great
[Nexus 4 Original Android Development] ectodroid:
But the volume_boost works fine, do you need more ?
[Nexus 4 Original Android Development] ki2luminati:
It would be nice, because volume_boost distorts the sound real quick, and headset_boost does not and gives great volume
[Nexus 4 Original Android Development] bundi22:
My battery was draining a lot more than usual after installing the version with Francos hot plug, but after clearing the app data it is back to normal :)

Sent from my Nexus 4
[Nexus 4 Original Android Development] vinylakos:
Strange issue after flashing r120 sometimes i loose the touchscreen , meaning i can't do anything only restart fixes this .

No problems at r119 default settings only 100mv UV . Rom Liquid Smooth 2.1 Official
[Nexus 4 Original Android Development] Foxnov1990:
Are you by any chance using TouchControl or anything related? It's well known that he's rewriting his app to work with the latest kernels as the current make your phone freeze occasionally (which will make you have to reboot)

If not, I'm going back to my corner :)
[Nexus 4 Original Android Development] :
r120 running great for me, much more responsive than r119, tweaked the governor control slightly for more oomph, quite satisfied

I experimented with boost and it was a huge battery drain at 1512/1350MHz hispeed_freq at 1026 it was normal but it wasn't as smooth anymore(gave up on it)

Thanks hospital349 and Franco for dealing with majority of micro stutters
[Nexus 4 Original Android Development] santeana:
Restore your apn data from TB. That used to fix it on my gnex
[Nexus 4 Original Android Development] banny7000:
Finally left 111 for 120,a lot more responsive just gotta see how battery is always use francos defaults with a-150 uv;)
[Nexus 4 Original Android Development] vickpick:
Running 90,25,50 1026 high speed frequency

Getting pretty bad battery life when phone is being used. Good or normal sleep battery usage
[Nexus 4 Original Android Development] combatdeity:
Since cyanogenmod had enabled ARP offloading in 5 apr nightly, will this be nullified by franco kernel?
[Nexus 4 Original Android Development] sirxdroid:
Did they do anything special or just what's recommended in this thread (McastBcastFilter=0)?

http://xdaforums.com/showthread.php?t=2072930
[Nexus 4 Original Android Development] Isham.padron:
I've gone back to nightly 90 running dual core. Battery life on 120 was not good. I'd really like to be able to disable 2 cores and hot plug only the remaining 2 for even better battery life than what I got on 90.
[Nexus 4 Original Android Development] Banished Angel:
I'm not trying to insult your intelligence, but pretty much every kernel developer has stated that the battery savings from disabling 2 cores is negligible and more placebo than anything. Efficient hotplugging of 4 cores is more power efficient than crippling the CPU. That being said Franco has stated he intends to implement disabling of cores in a future update.
[Nexus 4 Original Android Development] ImbaWind:
So the only way is use kernel without headphone mod?
[Nexus 4 Original Android Development] ctfrommn:
I actually think running all 4 all the time (negating hottplugging altogether) at a lower frequency is the better option. No better combo for performance/battery Ive seen. It will be awesome when Franco allows min cores online feature :)
[Nexus 4 Original Android Development] Arstoien:
You can do that now too. Just set the Hight and Low tresholds to 0 and all 4 cores should stay on. Then you'd have to tweak the governor.
[Nexus 4 Original Android Development] hospital349:
You should read what Franco posted yesterday. It seems that his hotplugging method is more powerful than I had initially thought:

I haven't tried it yet, but I plan to. It seems that all-in-all, the kernel is perfectly flexible and can be controlled to create any kind of user environment that we like.

----------------------------------------------------------------------------------------------------------------------------

Not completely true: High: 0 and Low: 100, will do the trick.
[Nexus 4 Original Android Development] aventu:
I don't understand the new hotplug driver completely. For example you play a game which only needs moderate performance, maybe only 2 cores. The driver will now deliver 2 active cores, but maybe even more than usually needed while loading a new level perhaps. Now there are all cores active the whole time until you reach third_level again, which deactivates all cores at once (possible lag?). Why not only 1 core down? Something like a "conservative hotplug driver".

I also noticed that the hotplug driver will constantly activate cores while holding and swiping at the homescreen with default settings.
[Nexus 4 Original Android Development] Ok_Kaleidoscope5109:
Franco, was wondering if you had any thoughts about this?

Looks like it's based on this: http://developer.android.com/traini...fficient-network-access.html#AppsStateMachine

After talking to Brian Klug of Anandtech more, he tells me that this is something AOSP currently lacks and OEMs add this into their phones as it is critical in keeping battery life to be decent. Is this something that would be kernel controlled?
[Nexus 4 Original Android Development] combatdeity:
I cant find the change on gerrit or bbqlog, but I havent had my morning coffee yet.

In the changelog in CMs built in updater is has the code ba800d0 and this is in the since 5 April Nightly.

I remember there was a ROM side component and a kernel side component to this fix, but on a side note, didn't franco remove all ARP offloading code?

Please correct me if I'm wrong.
[Nexus 4 Original Android Development] Silencer96:
Hey y'all, I just wanted to chime in and say that I lost 2% overnight (8hours), which is fantastic. Keep up the good work, Franco!
[Nexus 4 Original Android Development] ctfrommn:
Sync on? Did you receive emails etc.? I ran one of these, R111 I think and lost zero overnight but nothing synced for me with the screen off which was a deal breaker for me at the time.
[Nexus 4 Original Android Development] fozzie:
This is application optimisation; not kernel or even ROM.
[Nexus 4 Original Android Development] Isham.padron:
I actually have a method and a way of testing these things. It's not a placebo, and I don't have any wake locks. I don't just download the kernel and post. "Wow this thing is amazing and fast." There is something up with 120 and I'm just reporting that.
[Nexus 4 Original Android Development] Ok_Kaleidoscope5109:
Yes the guide on developers.android is regarding apps, but I'm pulling a quote from Brian Klug's HTC One review:

So it does seem like it can be implemented on a SYSTEM-wide level as well if app developers are too stupid to do things properly. Looking at the multitude of apps out there, you can be sure there's more than a handful of apps that are not coded well. Look at Facebook for example. They refuse to use Google's C2M service and as a result you have 3 services (!!!!) running in the background for Facebook notifications to work.

That's why I'm asking Franco if he's seen this on a system-wide level before.
[Nexus 4 Original Android Development] fozzie:
Sorry, I thought you asked:

I was replying that it's not kernel or ROM; it's application based.

I would be a pretty pi$$ed off developer if my real-time application started getting it's data batched up the kernel or OS.

Anyway, this isn't kernel related so OT... ;)
[Nexus 4 Original Android Development] Ok_Kaleidoscope5109:
Yes, but if Brian from Anandtech is correct, HTC's implemented it on a system-wide level, meaning it's ROM based? or Kernel based? I know the individual apps should be developed like this, but from my tweets with Brian, it seems other OEMs are implementing this too.

That's why I'm asking Franco if it's possible kernel development here...

As for your app getting data batched up, it's in the Android development guidelines, meaning it's encouraged. I don't think it means you get your emails 2 hours later because it's being batched up. It's an optimization of data connections, and perhaps can explain why our Nexus 4 performs far worse than competing phones.
[Nexus 4 Original Android Development] Underground_XI:
Do you ever do anything without Brian from anandtech? :)
[Nexus 4 Original Android Development] aventu:
90-25-50 will activate all cores, even with swiping through menus. It just looks like "up, up, up, max, max, full stop! repeat.."
[Nexus 4 Original Android Development] CrimsonSmear:
As daydream is generally a non-input state similar to off screen... would it be possible/viable to, at minimum, implement the hotplug suspend_frequency or, preferably, single core & suspend_frequency during this state?
[Nexus 4 Original Android Development] fozzie:
Thanks Miasmic. By 'boost frequency' do you mean 'hispeed_freq' as the default is 1512MHz for Interactive on r120 here.
[Nexus 4 Original Android Development] resynx:
r120 is so smooth :D
[Nexus 4 Original Android Development] Arstoien:
It doesn't make sense though, does it? Low 100 will match any load, meaning it'll try to offline the cores and then online them again because the High is 0. It should surely be 0 for both?
[Nexus 4 Original Android Development] fozzie:
Random reboot

My device rebooted whilst it was on my desk, with the screen on.

Default settings but UV'd by 50mV (fast binned).

last_kmsg attached shows
[Nexus 4 Original Android Development] combatdeity:
ARP Issue commit

So have cyanogenmod decided the ARP patches from codearoura are reliable enough now?

@franco, Are you still going to hang off until google releases the fix?
[Nexus 4 Original Android Development] fozzie:
Although I don't have my crystal ball with me, I think I can predict the answer to this. ;)

Seriously, how many times does this have to be asked?
[Nexus 4 Original Android Development] combatdeity:
Sorry, I just thought it might be more finalised if CM are adding support for it.

Edit: It just sucks for those of us with awful routers who cant set static ARP, disabling a major feature of the otherwise perfect smartphone.
[Nexus 4 Original Android Development] Hanny:
i believe hispeed_freq is related to go_hispeed_load and the simple "Boost" if its set to 1. (making the phone stay at hispeed_freq when screen on)

however for input_boost its about touching+swiping and the boost frequency should have been hardcoded (at least franco does not plan to export it to the userspace) https://github.com/franciscofranco/mako/commit/1c2496e9ca84c08dfb828fa00aadddcdf4b7eacc
[Nexus 4 Original Android Development] Vlad87do:
Guys , what is milestone?? Where is the diference between nightly and milestone?
[Nexus 4 Original Android Development] Zflash:
Yep, with 117 I have no SOD, but with 119 and 120 I had 4 in the last 3 hours. On the Nexus 7 with R55 I have constant reboots, so i'm guessing something is off here.
[Nexus 4 Original Android Development] renegadedj:
Milestone is the latest stable release. Nightly are nightly builds of the code that's being worked on daily. Nightly have latest updates and tweaks.
[Nexus 4 Original Android Development] Saiger:
the milestone is just an stable version

edit: double post :/
[Nexus 4 Original Android Development] Polv89:
Franco is the best with N4 !!!!!! Battery duration is optimized to the top, better than galaxy nexus :)

Thanksssss
[Nexus 4 Original Android Development] hospital349:
Just reiterating that Franco posted:

I don't want to spout a ton of bullsh*t making out I how it all works, when I really don't.

I can only make a wild assumption and guess that if High is 0 and Low is 100, the frequency scaling is controlled by Medium Hotplug values, alone. So a lower Medium value will cause the device ramp up to a higher frequency more easily, whilst a higher value will do the opposite. Low Hotplug value set to 100 will force the CPUs back down to minimum frequency when they aren't needed anymore.

Again, I could be wrong, but that's what I got from Franco's post.

EDIT:

(Just to make myself clear) :silly:

High: 0 - Will bring all cores online, all the time.

Medium: 0-100 - Will control how easy to want your CPU's to ramp up (0 would technically mimic PERFORMANCE governor and a higher value would obviously save more battery.)

Low: 100 - Will force the CPU's back down to minimum frequencies when higher frequencies aren't required any more.
[Nexus 4 Original Android Development] punkeroso:
Does anyone know which is the sysfs path to manually tweak the CPU voltages?
[Nexus 4 Original Android Development] :
High- 0

Low- 100

High- 100

Low- 0

High- 0

Low- 0

All of these combinations keep all CPU's online, Medium is at 25 for all scenarios

I didn't scrutinize their behavior much but the first one ramps CPU down to 384 instantly when not being used
[Nexus 4 Original Android Development] hospital349:
You may need to speak to Franco about it the next time he appears online. I'm no Hotplugging expert, I just know that those were the values he gave to mimic 4-CORES-ONLINE, similar to the older versions of his kernel before he changed back to mpdecision and hotplugging.

I'm interested in finding out how it all works. Fascinating stuff. :)
[Nexus 4 Original Android Development] Hanny:
Yes, that is exactly the thing we need to concern about the new hotplugging values, where second_level is set pretty low

lets first have a recap of the discussion:

if one does continuous tasks, for example typing or continuously scrolling, the cores will simply stay at 4 cores because even its in the overlapped zone (25-50), the load is higher than 25 making the cores go back on even after getting off. thus actually making the third_level become 25 DURING continuous tasks. for example i slowly, but unstoppably swipe up and down in the settings app, the old 90-50-30 stays at 2 cores and sometimes 1 while 90-25-50 simply stays at 4 cores.

Personally I dont think reducing hispeed freq would help, because the microstutters we are worried about were caused by the process / responsiveness of 1 core -> 2 cores aka. operations from screen-on-idle. While reducing the hispeed freq can help balancing out the battery consumption caused by 4 cores during continuous tasks, it is out of our concern and actually 4 cores are not needed during those tasks. We need to have discussions here about the resolution of over-onlining. While it is true that hospital's second_level=25 can help in responsiveness on operations from idle, in the long run during continuous tasks rather than just one simple click, it would cause some losses of battery juice.

Throw your ideas here so franco can gather more about it. What about... another threshold for 2 cores -> 3 cores / 3 cores -> 4 cores instead of just the second_level for "online one more core"?

As I just still got some of the microstutters while opening whatsapp from idle, even with the new thresholds in r120, I suspect the SEC_THRESHOLD (intended to online cores slower vs mpdecision's madness) and I have suggested franco to eliminate the need of SEC_THRESHOLD during 1 core -> 2 cores, but leaving it there for 2 cores -> 3 cores and 3 cores -> 4 cores. With all due respect to hospital's innovation, we will be able to test whether the microstutters can be resolved more effectively by shorter/none SEC_THRESHOLD at 1 core, instead of modifying the hotplugging values.

Because furthermore, the original intention of franco developing SEC_THRESHOLD - in practical, having (smartly calculated) delays between each sampling for hotplugging - the delay is longer with less cores and is shorter with more cores - therefore online cores slower and offline cores faster - would be eliminating the spike-onlines (unnecessary 2/3/4 cores) observable in mpdecision thus allowing the cores to online stabler at its necessary amount. However, with the new hotplugging values, although there is a 2 sec delay between each core ramp up, after 8 seconds at the very last it will stay on 4 cores unnecessarily - which may use more battery than mpdecision (during its madness it still offlines 3rd and 4th cores sometimes), and wasted the idea of SEC_THRESHOLD.

Ideas, come on ;)
[Nexus 4 Original Android Development] franciscofranco:
I know nothing about that, sorry!

high 0 -> always cores online

medium -> doesnt really matter

low -> doesnt matter as well

If high is 0 it wont ever reach the other checks.
[Nexus 4 Original Android Development] hospital349:
A wild Francisco Franco appears!
[Nexus 4 Original Android Development] CamoGeko:
Wasn't expecting him to show here.

Considering he had a SOD this morning on his N7. :eek:
[Nexus 4 Original Android Development] hospital349:
Mourning over his fallibility, eh? ;)
[Nexus 4 Original Android Development] bilguun1:
Is there any config for bad signal area? Because at my work coverage sucks and my battery is draining non stop even when not using. At home it is different story

I got full coverage and battery lasts long.

---------- Post added at 08:54 PM ---------- Previous post was at 08:50 PM ----------

BTW with trinity kernel phone sleeps well. But data connection is hit and miss. With Franco kernel connection is good even with bad signal, but battery drains fast.
[Nexus 4 Original Android Development] ctfrommn:
Do you have access to any data or just no 3g? If so, you can select 2g only at work. If no data available you can turn airplane mode on and use WiFi if available.
[Nexus 4 Original Android Development] bilguun1:
BTW with trinity kernel phone sleeps well. But data connection is hit and miss. With Franco kernel connection is good even with bad signal, but battery drains fast.
[Nexus 4 Original Android Development] Mo'HAWK:
I'm new as you can see, but I've been using Franco's kernel a little before pre M1 (111) and I can say that r120 is better then 111 for me. I really appreciate all you've done so far Franco. Keep up the great work. Also the people in this post are very helpful in giving information. Even though many things are asked over and over again.
[Nexus 4 Original Android Development] bilguun1:
I have 4g at work but the signal strength is around -109,
[Nexus 4 Original Android Development] ctfrommn:
Try switching to 2g only or at least change WCDMA prefered to CDMA auto....that will switch you to edge faster.