Oliver Neukum wrote:
Am Mittwoch, 22. September 2004 19:18 schrieb Alan Stern:
The problem with your rule is that when you want to suspend the entire
system, and some devices are already suspended, it means you have to wake
them up again just to put them back to sleep! There's got to be a
shortcut.
If you want to suspend the whole system this is what you would likely
do anyway, as you potentially need to allocate a lot of ram or write
the system state to swap.
Except on the most power-sensitive systems, which won't have swap
space (or disks!) to worry about, just some flash and DRAM and a
small battery that can, with care, handle several days' usage ...
Plus, do we care? Isn't it a rare case? I smell premature optimisation.
... by routinely putting as many devices as possible into low
power states (turning off or reducing clocks and power supplies),
and leaving them in those states whenever possible.
In those devices it's ludicrous to think about any system state
other than "partially suspended" as the design center. And in
the same vein, it's rather nonsensical to have a "PM core" which
makes those systems even harder to build.
[..]
latter is true there's nothing much to worry about. Likewise, if the
device has only one reduced-power mode (as with USB) there's no problem.
In cases like these, waking up in order to go back to sleep seems silly.
Only if you think strictly in terms of USB. Consider the case of a bluetooth
host on USB.
In which case, let that bluetooth driver cope with its PM quirks.
Don't try to make the PM core code know about them all.
- Dave
-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel