linux-uconsole/drivers/base/power
Alan Stern 8dc9c79114 PM / Runtime: Automatically retry failed autosuspends
commit 886486b792 upstream.

Originally, the runtime PM core would send an idle notification
whenever a suspend attempt failed.  The idle callback routine could
then schedule a delayed suspend for some time later.

However this behavior was changed by commit
f71648d73c (PM / Runtime: Remove idle
notification after failing suspend).  No notifications were sent, and
there was no clear mechanism to retry failed suspends.

This caused problems for the usbhid driver, because it fails
autosuspend attempts as long as a key is being held down.  Therefore
this patch (as1492) adds a mechanism for retrying failed
autosuspends.  If the callback routine updates the last_busy field so
that the next autosuspend expiration time is in the future, the
autosuspend will automatically be rescheduled.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Tested-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-11-11 09:36:57 -08:00
..
clock_ops.c PM / Runtime: Handle clocks correctly if CONFIG_PM_RUNTIME is unset 2011-06-21 23:24:33 +02:00
generic_ops.c PM: Introduce generic prepare and complete callbacks for subsystems 2011-05-17 23:26:21 +02:00
main.c PM: Fix async resume following suspend failure 2011-06-21 23:20:20 +02:00
Makefile PM: Remove CONFIG_PM_VERBOSE 2011-05-17 23:25:10 +02:00
opp.c PM / OPP: opp_find_freq_exact() documentation fix 2011-03-15 00:43:17 +01:00
power.h PM: Do not create wakeup sysfs files for devices that cannot wake up 2011-03-15 00:43:14 +01:00
runtime.c PM / Runtime: Automatically retry failed autosuspends 2011-11-11 09:36:57 -08:00
sysfs.c PM / Wakeup: Fix build warning related to the "wakeup" sysfs file 2011-05-17 23:19:18 +02:00
trace.c PM: Use appropriate printk() priority level in trace.c 2011-03-15 00:43:14 +01:00
wakeup.c PM / Wakeup: Remove useless synchronize_rcu() call 2011-05-17 23:19:19 +02:00