]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
rtc: Make rtc_time64_to_tm() support dates before 1970
authorAlexandre Mergnat <amergnat@baylibre.com>
Mon, 28 Apr 2025 10:06:47 +0000 (12:06 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 27 Jun 2025 10:05:09 +0000 (11:05 +0100)
commitc360f8ff1bef9fa5d498519208fadd907dc306df
tree3550101e6519f9d6f22367399ea460e99af5a562
parent6df0e243e757d6361fe07c7d3bab694caa674d70
rtc: Make rtc_time64_to_tm() support dates before 1970

commit 7df4cfef8b351fec3156160bedfc7d6d29de4cce upstream.

Conversion of dates before 1970 is still relevant today because these
dates are reused on some hardwares to store dates bigger than the
maximal date that is representable in the device's native format.
This prominently and very soon affects the hardware covered by the
rtc-mt6397 driver that can only natively store dates in the interval
1900-01-01 up to 2027-12-31. So to store the date 2028-01-01 00:00:00
to such a device, rtc_time64_to_tm() must do the right thing for
time=-2208988800.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Link: https://lore.kernel.org/r/20250428-enable-rtc-v4-1-2b2f7e3f9349@baylibre.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/rtc/lib.c