• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Root Why HTC phones boot up pretty quick

kanaida

Android Expert
I mentioned before that my girls HTC Wildfire S booted up almost instantly, but I didn't know why. Now I do:
Fast Boot Restart

I had previously missed mention of HTC's "fast-boot" functionality which is part of the HTC Sense customisations. From power-off it gets the device ready to make a call in about six seconds (A regular start will take upwards of a minute). From what information is out there it's an ultra-low-power sleep state - something in the PC world we'd call S3 or Suspend-to-RAM. Cyanogen has already replicated it in the 6.1 series.

Without more information it's difficult to be certain how this functions technically but my educated guess is this: When selecting power-off in the user interface the Sense/kernel sends a particular oem-XX code or calls an RPC function to tell the radio to shutdown and remove power from the ARM11 applications processor. I'd suspect the ARM9 radio continues running REX/AMSS but turns off power to almost everything. When the power button is pressed REX brings up the power to devices and restarts the ARM11. Now, the question is, did the ARM11 register state get saved by REX/AMSS so it can be restored and execution restarted where it left off, or does it restart via hboot. If it goes the hboot route then hboot will detect it's a fast-boot and restore contexts and then jump back into the kernel where it'll unfreeze itself.

Update: Having tested this on a U.K. HTC Desire Z it looks likely that hboot isn't re-executed. The green-on-white "htc" splash screen appears briefly (1/2 second maybe) then the Android lock-screen appears. The time take to be ready is less than two seconds. Holding down key-combinations that usually cause hboot to enter special modes are not recognised.

Sources:

New HTC Fast Boot Technology Already Present On Desire Z/HD Offers 5 Second Boot Times. Smarts, Trickery, Or Both?

Cyanogen Demos HTC Fast-Boot-A-Like On Nexus One

Basically I think they just enabled hibernation in linux. Write ram to disk, shut everything off. Boot up, read disk -> ram. I'm gonna see if it's possible to enable this via the kernel or some other method then we might also have the same option ;)

Found some relevant materials here
 
I mentioned before that my girls HTC Wildfire S booted up almost instantly, but I didn't know why. Now I do:


Basically I think they just enabled hibernation in linux. Write ram to disk, shut everything off. Boot up, read disk -> ram. I'm gonna see if it's possible to enable this via the kernel or some other method then we might also have the same option ;)

Found some relevant materials here


This would be awesome for boot times, hope you can pull this off
 
That is really possible. But then that wouldn't be consider an actual shut down or "turn off", would it?
 
That is really possible. But then that wouldn't be consider an actual shut down or "turn off", would it?

Yup. Just like when windows hibernates, it's basically putting android on pause, turning off everything. But the way they do it in game emulators to save your game for example. You can exit an emulator and load your game later, but the app can be closed.
 
Couldn't this potentially cause battery drain, since the phone never completely shuts down?
Drain will probably be unnoticable though, if at all lol
 
Couldn't this potentially cause battery drain, since the phone never completely shuts down?
Drain will probably be unnoticable though, if at all lol

Hibernate shuts the device all the way off. What happens is the contents of RAM are written to disk and the device shuts off. When you turn it back on the hibernation file is loaded back into RAM and everything resumes. This is different from standby mode which puts the device into a low-power mode and keeps everything in RAM.

Hibernate vs. Standby
 
Hibernation sux!!! ;)

+1

Hibernation sucks, but to have a built in setting like
Silent Mode
Airplane
Power off
Hibernate
Reboot
Recovery

would be a pretty good choice in my book. hibernate would allow for quick charging or when your battery is almost dead and you need to just save it. rebooting takes so much power to restart.
 
I think it would make an ok addition in the power menu for testing. On laptops it sucks cause mechanical drives are slow and ram is GB's big, it would be an interesting test anyways. Swap files are the real killers, wonder how long regular esteems with it enabled on internal nand will last.
 
What's so bad about hibernation?



Not sure about phone wise. but i know it's not a good thing for the PC, do to the fact that it brings it right back to that same state it was at. could have errors, or certain programs that needs a healthy dose of reboot aren't getting it. it maybe be fast but has other side affects.

bottom line rebooting refresh everything and the programs that needs it to function properly ;)
 
Back
Top Bottom