aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m68k/kernel/time.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/m68k/kernel/time.c')
-rw-r--r--arch/m68k/kernel/time.c11
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)
73 return IRQ_HANDLED; 73 return IRQ_HANDLED;
74} 74}
75 75
76void __init time_init(void) 76void read_persistent_clock(struct timespec *ts)
77{ 77{
78 struct rtc_time time; 78 struct rtc_time time;
79 ts->tv_sec = 0;
80 ts->tv_nsec = 0;
79 81
80 if (mach_hwclk) { 82 if (mach_hwclk) {
81 mach_hwclk(0, &time); 83 mach_hwclk(0, &time);
82 84
83 if ((time.tm_year += 1900) < 1970) 85 if ((time.tm_year += 1900) < 1970)
84 time.tm_year += 100; 86 time.tm_year += 100;
85 xtime.tv_sec = mktime(time.tm_year, time.tm_mon, time.tm_mday, 87 ts->tv_sec = mktime(time.tm_year, time.tm_mon, time.tm_mday,
86 time.tm_hour, time.tm_min, time.tm_sec); 88 time.tm_hour, time.tm_min, time.tm_sec);
87 xtime.tv_nsec = 0;
88 } 89 }
89 wall_to_monotonic.tv_sec = -xtime.tv_sec; 90}
90 91
92void __init time_init(void)
93{
91 mach_sched_init(timer_interrupt); 94 mach_sched_init(timer_interrupt);
92} 95}
93 96