yashsingh1/xdaforums huggingface dataset:
[Nexus S Android Development] tchaari:
Hi Ezekeel,

Deep idle does not seem to work well on ICS. It causes issues when playing music and it is not saving power as found by bedalus in his Battery drain study : http://xdaforums.com/showthread.php?p=22057513

Maybe fixing deep idle could bring back stability to Glados :)
[Nexus S Android Development] FloHimself:
ok, this doesn't work on my device. the phone goes to sleep and never comes back.
[Nexus S Android Development] igor.tonky:
bt is working fine on i9023 with both of my headsets, music and voice calling.
[Nexus S Android Development] from1989:
can you tell me how to flash this mod???
[Nexus S Android Development] qubz:
I can't say much for BT cause I don't use it, but after installing the test kernel, my battery went from 49% to 64% on the first boot :eek:
[Nexus S Android Development] qubz:
It's not an official kernel and the mod still needs work but, just get the test kernel zip a few posts back and in clockworkmod recovery, wipe your cache and dalvik cache then flash the zip. Reboot.
[Nexus S Android Development] from1989:
where is the zip????
[Nexus S Android Development] qubz:
@ the bottom of the last page
[Nexus S Android Development] FloHimself:
what kernel are you using?
[Nexus S Android Development] from1989:
where is the test kernel？
[Nexus S Android Development] qubz:
On post #36.
[Nexus S Android Development] FloHimself:
if he flashes this, he will never come back...
[Nexus S Android Development] from1989:
matrix
[Nexus S Android Development] KalimochoAz:
I have updated post #36 with other kernel
[Nexus S Android Development] :
Flahed kernel with wipe dalvik cache and phone opened.

Than i lock screen and try to open phone(unlock) after 15 second and cant open it was BSOD(black screen of death). I reboot the phone with pull the battery and tried again an same result. Governor conservative 100/1000.no oc uV.
[Nexus S Android Development] FloHimself:
v2 seems to work here
[Nexus S Android Development] Waza_Be:
Is this test kernel only working on CM7, or is that possible to flash it over other ROM, like Oxygen?
[Nexus S Android Development] from1989:
i find that i cannot download it with my phone whocan give me a hand email me pdzbyg@gmail.com
[Nexus S Android Development] :
With v2 seems no problem for now.
[Nexus S Android Development] from1989:
can you give me a hand post the v2 to my email?i can not download it now but~i want to test it
[Nexus S Android Development] thoth77:
Download V1, V2

http://bit.ly/DeepIdleV1 ( CM kernel using Ezekeel implementation )

http://bit.ly/DeepIdleV2 ( CM kernel using my implementation )

http://bit.ly/Release71 ( CM kernel from Release 7.1 )

but this is just for test, is not official at all.

Thanks, Mr. KalimochoAz
[Nexus S Android Development] rlorange:
For music playback issues: what kernel and governor are you using? If you use lazy or luzactive you can set the min freq higher say 400mhz. Deep idle works best and saves more power if the min freq is higher cos it races to idle faster.

I am using Eugenes deep idle version but without stats how do I know its working?

***Vintage Galaxy S1 running ported Ice Cream Sandwich Android 4.0.3 by OneCosmic***
[Nexus S Android Development] Harbb:
Yes, i've noticed that lulzactive with a low screen off min step (still don't know EXACTLY what that means) causes stutters.

rlorange: I don't know how to test if it's working besides figuring out if it saves power. Stats only mean so much anyway. Right now i am trying out the 3.2 cpuidle backport to see how it copes and if it actually works. Next i'll be trying eugenes deep idle. After this, i'll be removing the btfix and retesting to see if they are all dependent on it. You can find info in Bedalus' Battery Drain Benchmarks thread in general.
[Nexus S Android Development] rlorange:
Great thanks for the feedback man. Which kernel is your work? This didle business seems to be confusing for all. Eugene's didle has zero stats so has proven near impossible to benchmark against the original. Devil kernel is the one I've tested it on the most so far.

Bt mod seems to allow top_off mode from top_on.

***Vintage Galaxy S1 running ported Ice Cream Sandwich Android 4.0.3 by OneCosmic***
[Nexus S Android Development] zoomy942:
So i flashed this and noticed that now the close chat button doesnt do anything.
[Nexus S Android Development] Harbb:
You can find my work linked to in this post (post 25 of the battery benchmark thread). It has most of the information anyone would ask for listed, and is kept as constant as possible throughout. Kernel is, as stated, Matr1x v15.5 for deep idle or v16.0 for cpuidle.

I'll be testing eugenes deep idle through the same methodology as the previous tests. 10 hours, same songs, airplane mode, etc. Stay tuned, hopefully i get a good test done tonight for it. The idle stats don't prove power savings, the power savings do.
[Nexus S Android Development] tchaari:
Thanks again Harbb for your very useful test ;) Until now, we can see that Deep idle efficiency is almost proved but CPU idle results are still confusing...

The right link for your post containing the tests results is here :)

http://xdaforums.com/showpost.php?p=22180760&postcount=25
[Nexus S Android Development] zoomy942:
Good morning.

Does that Google talk bug affect all devices with Google talk with video without a front facing camera?
[Nexus S Android Development] tchaari:
Bedalus new tests proved that deep idle really saves power when playing music with screen off:

http://xdaforums.com/showthread.php?p=22126822

After some bug fixes in the kernel, deep idle seems to be smooth now.

Thanks Ezekeel :)
[Nexus S Android Development] Imppy:
i have a problem with deep idle...

whenever I charge my phone and unplug my cord...deep idle is deactivated for some reason (on and off)...anyone knows why is this?
[Nexus S Android Development] zoomy942:
Is it just me or does the Google talk without video chat have a different look than the video version?
[Nexus S Android Development] :
Stunning new work on Deep Idle by nathanson666: http://xdaforums.com/showpost.php?p=23514288&postcount=490

Please remember to thank him!
[Nexus S Android Development] traian4u2005:
what SOMF means?
[Nexus S Android Development] italia0101:
Screen off Max frequency
[Nexus S Android Development] :
https://twitter.com/#!/xdadevelopers/status/180398091898339328

Nathanson666's amazing work featured on XDA portal and twitter
[Nexus S Android Development] asicman:
Hi guys,

Does deep idle affect anyone's connection to google services? What I am seeing is that when deep idle is enabled and the phone screen is off, the timer based on the heartbeat interval for the gtalk service always runs down to 0 and the heartbeat trigger alarm does not trigger. When I turn the screen back on, I no longer have an active connection to google services.

If I simply disable deep idle, then I notice that the next heartbeat alarm trigger always activates before the heartbeat interval expires. The phone always maintains a connection to google services.

I am currently using a kernel (devil2) for the galaxy s which has Ezekeel's Deep Idle V2.

Thanks
[Nexus S Android Development] asphantix:
deep idle doesn't work at all for me. I'm currently using AOKP Build 31 for my nexus s with

crdBrt's PixelEdition 1.4 Kernel.

The rom defenitly has the bluetooth quick switch set to false.

Any other variables I have to set in order to get deep idle running?
[Nexus S Android Development] Harbb:
Are you getting top=on values? If so, try opening camera once then closing it and see if you get top=off values. Also, if bluetooth is enabled you'll get top=on, even if not being used.
[Nexus S Android Development] asphantix:
No, I don't even get any top=on values. Kernel problem? :/
[Nexus S Android Development] RcrdBrt:
I hope no!

Lol

Inviato dal mio Nexus S con Tapatalk 2
[Nexus S Android Development] Harbb:
Does your kernel support deep idle and is it enabled? I've never not seen di stats in a compatible kernel.
[Nexus S Android Development] Maxxd01:
So, in ICS stock kernels, this comes completely disabled?
[Nexus S Android Development] Harbb:
This state was not built in at all in stock kernels. It was all written from scratch.
[Nexus S Android Development] theone10:
Could this work on any device? Like g2?
[Nexus S Android Development] Harbb:
Only if the CPU supports it. You'll have to refer to the tech manual of the CPU or soc. I wouldn't be surprised if most relatively new arm cores support it though.
[Nexus S Android Development] groksteady:
uh, dumb question: what is the terminal command to reset idle stats?
[Nexus S Android Development] Harbb:
I'm pretty sure it would be, as root:

echo 0 > /sys/class/misc/deepidle/stats

If it's not the stats file, do an "ls /sys/class/misc/deepidle" and look for a similar name to stats. I would do this first as i can't remember exactly (and my current kernel doesn't have DI).

edit: in fact that probably doesn't work. I can't test it today but i did find this, maybe this will work:

echo 1 > /sys/class/misc/deepidle/reset_stats
[Nexus S Android Development] groksteady:
Thanks, Harbb; late reply, but I never got the notification that you'd responded.

I never saw that post from Ezekeel, but did ask Stratosk in his Semaphore thread. So far so good with didle, cheers.
[Nexus S Android Development] Pegart:
How can I check if deep idle turns on/works other than wait and see if the battery lasts longer?
[Nexus S Android Development] simms22:
cat /sys/class/misc/deepidle/idle_stats

deep idle will only work when the screen is off and the cpu is being used(like when listening to music).
[Nexus S Android Development] Pegart:
Oh, understood it wrong then. Thought what the phrase itself suggests. That it's a deep idle, meaning "harder"/"stronger" idle than ordinary. So I thought it meant when the phone is on, but not used it goes into deep idle.

So, deep idle just makes the phone go in a sorta semi idle, when using it but don't need the screen to be turned on (music, like you said, or running apps) and the CPU goes to the most possible minimum as long the apps running still work normally.

Did I get it right now? :P
[Nexus S Android Development] Harbb:
that's right. Normal Idle is implemented, deep idle saves more power in specific circumstances. When screen is off and nothing is using the CPU it will go into the Sleep phase, entirely shutting off most parts of the hardware.
[Nexus S Android Development] Pegart:
Thanks. In what situation then it goes to normal idle? Forgot there was sleep mode which is obviously used when the screen is off and nothing running by user.
[Nexus S Android Development] Harbb:
Idle is entered when the CPU isn't currently doing something, even if the screen is on. Deep idle is entered in the same situation but when screen is off. TOP=ON values if GPS/Bluetooth are on (minimal power saving compared to Idle) and TOP=OFF if both GPS/Bluetooth are off (large power saving compared to idle).

Note, GPS is only on if an apposition currently using it. Just toggling it on doesn't power it up. Bluetooth stays powered however.
[Nexus S Android Development] gparent:
EDIT: I may have figured it out, leaving this here for prosperity.

Okay, I can't get this to work. I'm new to the developer scene, but compiling a kernel is ridiculously easy and your repos are set up brilliantly: I have no idea what I've done wrong.

Here's what my kernel looks like (You'll have to imagine the Deep Idle branch being merged right after this):

https://github.com/slimdroid/kernel_samsung/commits/ics-dev

Basically I merged BLN, BLX, BLD, and on the build I had tested, Deep Idle (no voodoo sound). I went into the config, made sure that Deep Idle was enabled (it defaults to false), compiled everything, booted with it.

No Deep Idle stats, either TOP=ON or TOP=OFF. I tried the bluetooth overlay fix to no avail. I use NSTools to activate the Deep Idle setting. I am running AOSP and Google Talk is NOT included in my ROM.

I'll run another compile tonight to make sure I can reproduce the issue very consistently. Please do not pay attention to the rest of the source code, it is not relevant to what was there when I did the compile (device/samsung/crespo had the updated kernel and wifi module, for instance.)

Is there anything else I'm supposed to do to make this work?

Thanks,
[Nexus S Android Development] KalimochoAz:
I have added to post #36 the original kernel so you can go back when you want
[Nexus S Android Development] :
if you still can't download i can send what you want.
[Nexus S Android Development] from1989:
yeah! thanks a lot! my email is pdzbyg@gmail.com
[Nexus S Android Development] :
Ok, you can check now your mailbox.

Alternative link to download.

http://www.wupload.com/file/398803688/kernel.cyano.deepidle.v2.3.zip
[Nexus S Android Development] FloHimself:
how do I verify that it is running? only errors printed in kernel log?
[Nexus S Android Development] thoth77:
Developer fo CM7.1.0 Kernel

Mr. KalimochoAz, are you Developer fo CM7.1.0 Kernel?

"2.6.35.14-KalimochoAz"

Wow!
[Nexus S Android Development] intheb0x:
kernel becomes unstable after some time.

woke up this morning and was unable to access my memory on the phone and so on, menus took for ever.

i flashed back.
[Nexus S Android Development] robin_77:
what's different between v1 and v2 implementations?

thanks for compiling / developing KalimochoAz and Ezekeel for development
[Nexus S Android Development] :
V1 Gives BSOD(black screen of death).
[Nexus S Android Development] from1989:
9023 with v2 cannot work too
[Nexus S Android Development] from1989:
miui can not use this？？
[Nexus S Android Development] morfic:
I'm on bfs, so that's not it.

Run quadrant tell me what you experience.
[Nexus S Android Development] morfic:
If I leave phone after boot when panel runs at 50Hz, no stuttering.

If I turn off screen, stuttering afterwards.

Plug in USB cable, things go back to not stuttering.

Whatever occurs when USB is plugged in, needs to occur when screen turns back on.

This might not be best case solution, but something to start with.
[Nexus S Android Development] FloHimself:
8 hours later... still running well on a i9023. no hiccups, no slowdowns, no reboots, no stuttering and no black screen of death...
[Nexus S Android Development] :
Same here with conservative governor.
[Nexus S Android Development] siffar:
Working on my i9023 for last 40 mins so far. 1000/100 interactive. No (noticeable) drop in 3d frame rate in Quadrant. Though score is like 300 lower.

EDIT: Ran this kernel with MV10.10 with no major Issues. Noticed a leap in battery life. Got BSODs twice when I was using 1100/100 Interactive. Switched to 1100/200 Interactive and got rid of BSODs.
[Nexus S Android Development] intheb0x:
Exactly the same here.

Perhaps it's something conflicting in your coding of your kernel affecting the mod.

Because others do not seem to have the same issue.

My phone was waking up fine, the alarm worked as normal, but after the long haul over night I was unable to access my usb memory, it took forever to load the settings menu and the phone was really sluggish.

If it makes any difference im on a rooted stock 2.3.7 rom, morfic.

Let me know if u need anymore info or want me to test anything.

I'm also using lazy governor.

Thanks everyone, keep up the good work and updates so we can get this in prime time!
[Nexus S Android Development] brenix:
When I was testing and received the black screen of death, it would only occur when the phone was unplugged from USB. The screen would turn off/on fine when the cable was in.

Also I've been using smartassv2, maybe i'll try a different governor?

Edit: After switching to conservative... I no longer receive the BSOD...

Edit2: After throttling the max from 1ghz to 800mhz (still on conservative), I am now getting the BSOD again..
[Nexus S Android Development] xceleration:
Wow and Ezekeel has done it again. Thanks for all the amazing contributions to the Nexus S! Will be looking forward to running Trinity with this combined. Thanks again!!
[Nexus S Android Development] KalimochoAz:
Go to ondemand better, I have updated some days ago.

About issues, it will be nice someone can help reporting logs, more people checking this, more easy to find the bugs.

This Ezekeel proposal could be a really great advance in battery saving for our devices, and will be nice to have all your help for us.
[Nexus S Android Development] FloHimself:
v1 brings the black screen of death, while v2 doesn't. what's the difference in the implementation?

@ the ones with slowdowns after quadrant: are using the egl hack or gpu overclocking?
[Nexus S Android Development] franciscofranco:
I don't have much free time anymore, otherwise I would certainly help on this, but I'm closely watching advances on this mod, its implementation intrigues me =)
[Nexus S Android Development] formula84:
Can this be used on NS4G?
[Nexus S Android Development] Ezekeel:
Wow. A lot of people seem to be excited about this. Thanks for all your feedback. Based on that I made some modifications which probably will solve all the issues reported here.

But first some background info: The DEEP-IDLE state exists in two flavors depending on the configuration in the corresponding registers: TOP=ON and TOP=OFF. For TOP=ON only the CPU is powered down and the other parts of the SoC stay active, while for TOP=OFF almost the entire SoC is powered down. Naturally with TOP=OFF the power savings are larger, however I did not manage to find a way to use this while the screen is on (device freezes). So instead the DEEP-IDLE state with TOP=ON was used while the screen is active.

I also noticed some sluggishness in the UI today and some laggy animations. I made some improvements to the DEEP-IDLE state with TOP=ON, however there still seemed to be some problems. Thus I decided to remove this flavor completely and simply go back to using the normal IDLE state while the screen is active. So with these changes there will are no improvements to the battery drain anymore while the screen is on. However I guess the effects would have been not that sensational anyway, because the LCD will always be the largest consumer and as explained above with TOP=ON the power savings are not that great.

Also I modified the wakeup sources for the DEEP-IDLE state with TOP=OFF and removed some, so we should see even smaller battery consumption while the screen is off. I will make a test run tonight.

Bugfix: http://www.pastie.org/2686141
[Nexus S Android Development] Jonathon Grigg:
If you wouldn't mind sharing Ezekeel, what manual did you find and use? I'd like to take a look at what else it says in there for other features of our CPU.

Sent from my Nexus S
[Nexus S Android Development] Ezekeel:
http://www.google.com/url?sa=t&sour...mpyMCA&usg=AFQjCNHINqlKnOEnlWte_7HDDfxPuHPvQw

The chapter about power management starts at page 415.
[Nexus S Android Development] Jonathon Grigg:
Webpage not available? Do you have to be logged in to the forum or something?

Sent from my Nexus S

Edit: I was on my phone at the time, it doesn't work on there by the looks of it. On my laptop it's fine though. Thanks Ezekeel!
[Nexus S Android Development] ZiggSVO:
I click it and it starts a download
[Nexus S Android Development] Ezekeel:
That should be the download link. You can also google for "s5pv210 manual"; it is the top link.
[Nexus S Android Development] robin_77:
did a nandroid backup and i took the plunged and tried v2 kernel for this mod with brainmasters miui.

happy to report it worked fine for 11hrs today with no issue. saw some improved battery life over prior kernel i was using talon apocalypse 2.1

apps used were phone, text messaging, gmail, camera 360, bluetooth streaming with music player, bt connectivity during phone call, + bln worked perfect.

device is nexus s 9020t (amoled)
[Nexus S Android Development] from1989:
it do not work on my 9023 v1&v2
[Nexus S Android Development] skitapa:
I'm just thinking about deep idle when screen is on. Shouldn't it only come into play when phone has been idle for some time? And about the bsods, could it be that the states must pass another state first, like say, deep idle -> idle -> 100 for example. Maybe the states code is a bit bad. I mean it's better to try and reject than to not and assume?
[Nexus S Android Development] martinsjt:
Hello KalimochoAz,

Can you complile a new kernel with the new changes made by Ezekeel.

Thank you.

Best
[Nexus S Android Development] KalimochoAz:
Ezekeel changes are the same as v2
[Nexus S Android Development] martinsjt:
Ok thanks, with V2 i cant wake up device after screen lock.

Best.
[Nexus S Android Development] chickelnoodensoup:
Yeah, I have the same problem with my i9020a.

Thanks a ton for all of the work, guys. This mod is the most exciting new development I've seen on here for a while.
[Nexus S Android Development] brenix:
Same here with the latest bugfix/patch... Also getting the no data connection bug (wifi wont turn on either)..

I've tried to capture the logcat output to debug these issues, but when the screen turns off it completely crashes the phone..
[Nexus S Android Development] KalimochoAz:
try this on here #36 the version 2.2 seams to be stable and works. Thanks Ezekeel sending datasheet.

For those telling is not woking, tell me the device and the ROM you are working with it.

Thanks
[Nexus S Android Development] morfic:
Though i sent you the pdfs?
[Nexus S Android Development] :
it seems like 2.3 The zip file right?
[Nexus S Android Development] morfic:
Thanks for the bug fix, everything appears to function normally, BT pairs and connects too.
[Nexus S Android Development] brenix:
Tried 2.2 and the data/wifi seems to be working now.. Still getting the bsod..

ROM: CM7.1 nightlies/built from source

GOV/FREQ: On Demand - 100min/1000max -- No uV

Model: I9020T

Radio: I9020XXKF1

CPU: ARMv7 rev 2 (v7I)
[Nexus S Android Development] chickelnoodensoup:
Just tried 2.3...still getting BSOD when the device goes to sleep. I locked/unlocked the phone a few times, and on about the 4th time, it wouldn't wake up anymore.

I'm running an i9020a with NSCollab 1.0.50 (CM 7.1.0)
[Nexus S Android Development] siffar:
Try setting governor. I got two BSODs in full day today, so i tweaked minimum to 200 MHz and governor to interactive. Haven't got it so far. Battery saving is phenomenal with this deep_sleep thingy.

Edit: Here are screenies I took randomly from CPU Spy. https://plus.google.com/u/0/101643175524362502063/posts/7TAPAaN1RyS
[Nexus S Android Development] iceandfire:
@ezekeel I cherry-picked your updated changes but still getting dead sleep and can't wake up the phone. Can you have a look?

Sources:

https://github.com/iceandfire/samsung-kernel-crespo
[Nexus S Android Development] brenix:
Tried this too even after wiping data/dalvik/cache and flashing the latest nightly and 2.2 kernel.. Didn't change or restore anything.. Same issue :(
[Nexus S Android Development] siffar:
Is there anyway to capture logs while not connected to USB? I move a lot, so asking.
[Nexus S Android Development] brenix:
Just flashed morfic's TEUV test build with the Deep Idle patch and it is working... No bsod anymore!
[Nexus S Android Development] formula84:
Does this work for crespo4g?
[Nexus S Android Development] KalimochoAz:
yes, you can download alogcat from market
[Nexus S Android Development] Ezekeel:
I never had any problems waking my device from sleep and with Trinity also it seems to work fine.

This might be a long shot, but I checked the IaF and CM kernels and both do not have that sleep freq fix both Trinity and my reference kernel have implemented. It simply sets the min and max frequency to the sleep frequency before a suspend and restores the values afterwards (check function 's5pv210_cpufreq_notifier_event' in 'arch/arm/mach-s5pv210/cpu-freq.c').
[Nexus S Android Development] gotjazz:
I apoligise if this is a silly question but does that mean the phone doesn't report calls, texts or push notifications in deep sleep?