diff options
author | Magnus Damm <damm@opensource.se> | 2010-02-02 14:41:41 -0800 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2010-02-05 14:54:10 +0100 |
commit | c54a42b19fbaae4e9f212322ecca25a6bc95c1ba (patch) | |
tree | 2c929d3cde3b4ae864d5f5a50bdda688fd5293eb /kernel/time/timekeeping.c | |
parent | 17622339af2536b32cf29699ddd4ba0fe79a61d5 (diff) | |
download | blackbird-op-linux-c54a42b19fbaae4e9f212322ecca25a6bc95c1ba.tar.gz blackbird-op-linux-c54a42b19fbaae4e9f212322ecca25a6bc95c1ba.zip |
clocksource: add suspend callback
Add a clocksource suspend callback. This callback can be used by the
clocksource driver to shutdown and perform any kind of late suspend
activities even though the clocksource driver itself is a non-sysdev
driver.
One example where this is useful is to fix the sh_cmt.c platform driver
that today suspends using the platform bus and shuts down the clocksource
too early.
With this callback in place the sh_cmt driver will suspend using the
clocksource and clockevent hooks and leave the platform device pm
callbacks unused.
Signed-off-by: Magnus Damm <damm@opensource.se>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: john stultz <johnstul@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/time/timekeeping.c')
-rw-r--r-- | kernel/time/timekeeping.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index 7faaa32fbf4f..843d8a711b16 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -622,6 +622,7 @@ static int timekeeping_suspend(struct sys_device *dev, pm_message_t state) write_sequnlock_irqrestore(&xtime_lock, flags); clockevents_notify(CLOCK_EVT_NOTIFY_SUSPEND, NULL); + clocksource_suspend(); return 0; } |