|
@@ -71,7 +71,9 @@ static irqreturn_t timer_interrupt(int irq, void *dummy)
|
|
|
return IRQ_HANDLED;
|
|
|
}
|
|
|
|
|
|
-void read_persistent_clock(struct timespec *ts)
|
|
|
+#ifdef CONFIG_M68KCLASSIC
|
|
|
+#if !IS_BUILTIN(CONFIG_RTC_DRV_GENERIC)
|
|
|
+void read_persistent_clock64(struct timespec64 *ts)
|
|
|
{
|
|
|
struct rtc_time time;
|
|
|
|
|
@@ -83,11 +85,12 @@ void read_persistent_clock(struct timespec *ts)
|
|
|
|
|
|
mach_hwclk(0, &time);
|
|
|
|
|
|
- ts->tv_sec = mktime(time.tm_year + 1900, time.tm_mon + 1, time.tm_mday,
|
|
|
- time.tm_hour, time.tm_min, time.tm_sec);
|
|
|
+ ts->tv_sec = mktime64(time.tm_year + 1900, time.tm_mon + 1, time.tm_mday,
|
|
|
+ time.tm_hour, time.tm_min, time.tm_sec);
|
|
|
}
|
|
|
+#endif
|
|
|
|
|
|
-#if defined(CONFIG_ARCH_USES_GETTIMEOFFSET) && IS_ENABLED(CONFIG_RTC_DRV_GENERIC)
|
|
|
+#if IS_ENABLED(CONFIG_RTC_DRV_GENERIC)
|
|
|
static int rtc_generic_get_time(struct device *dev, struct rtc_time *tm)
|
|
|
{
|
|
|
mach_hwclk(0, tm);
|
|
@@ -145,8 +148,8 @@ static int __init rtc_init(void)
|
|
|
}
|
|
|
|
|
|
module_init(rtc_init);
|
|
|
-
|
|
|
-#endif /* CONFIG_ARCH_USES_GETTIMEOFFSET */
|
|
|
+#endif /* CONFIG_RTC_DRV_GENERIC */
|
|
|
+#endif /* CONFIG M68KCLASSIC */
|
|
|
|
|
|
void __init time_init(void)
|
|
|
{
|