diff --git a/arch/sparc64/kernel/time.c b/arch/sparc64/kernel/time.c
index d50ebeae144ae5f883fb299bad9bfb745997886a..7d61f1bfd3d33806b2babc5e7065a35542f14c63 100644
--- a/arch/sparc64/kernel/time.c
+++ b/arch/sparc64/kernel/time.c
@@ -1363,6 +1363,8 @@ static inline void mini_get_rtc_time(struct rtc_time *time)
 	spin_unlock_irqrestore(&rtc_lock, flags);
 
 	to_tm(seconds, time);
+	time->tm_year -= 1900;
+	time->tm_mon -= 1;
 }
 
 static inline int mini_set_rtc_time(struct rtc_time *time)