diff options
author | John Stultz <johnstul@us.ibm.com> | 2010-03-03 19:57:26 -0800 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2010-03-13 01:14:13 +0100 |
commit | ffbcad49e79cd82428010b44a87401446ea7f370 (patch) | |
tree | 1543092ca1a359fb010c565fd7cc41563a8642c0 /arch | |
parent | 944694716d6ea3c274a73c830bf33e194bad4bcd (diff) | |
download | blackbird-op-linux-ffbcad49e79cd82428010b44a87401446ea7f370.tar.gz blackbird-op-linux-ffbcad49e79cd82428010b44a87401446ea7f370.zip |
m68k: Convert m68k to use read/update_persistent_clock
This patch converts the m68k architecture to use the generic
read_persistent_clock and update_persistent_clock interfaces, reducing
the amount of arch specific code we have to maintain, and allowing for
further cleanups in the future.
I have not built or tested this patch, so help from arch maintainers
would be appreciated.
Signed-off-by: John Stultz <johnstul@us.ibm.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
LKML-Reference: <1267675049-12337-12-git-send-email-johnstul@us.ibm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/m68k/kernel/time.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/arch/m68k/kernel/time.c b/arch/m68k/kernel/time.c index 17dc2a31a7ca..4926b3856c15 100644 --- a/arch/m68k/kernel/time.c +++ b/arch/m68k/kernel/time.c @@ -73,21 +73,24 @@ static irqreturn_t timer_interrupt(int irq, void *dummy) return IRQ_HANDLED; } -void __init time_init(void) +void read_persistent_clock(struct timespec *ts) { struct rtc_time time; + ts->tv_sec = 0; + ts->tv_nsec = 0; if (mach_hwclk) { mach_hwclk(0, &time); if ((time.tm_year += 1900) < 1970) time.tm_year += 100; - xtime.tv_sec = mktime(time.tm_year, time.tm_mon, time.tm_mday, + ts->tv_sec = mktime(time.tm_year, time.tm_mon, time.tm_mday, time.tm_hour, time.tm_min, time.tm_sec); - xtime.tv_nsec = 0; } - wall_to_monotonic.tv_sec = -xtime.tv_sec; +} +void __init time_init(void) +{ mach_sched_init(timer_interrupt); } |