From: thomas.petazzoni@free-electrons.com (Thomas Petazzoni)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] rtc: mv: reset date if after year 2038
Date: Wed, 19 Feb 2014 00:14:16 +0100 [thread overview]
Message-ID: <20140219001416.45a79767@skate> (raw)
In-Reply-To: <20140218191111.GH31116@joshc.qualcomm.com>
Dear Josh Cartwright,
On Tue, 18 Feb 2014 13:11:11 -0600, Josh Cartwright wrote:
> On Tue, Feb 18, 2014 at 02:26:06PM +0100, Thomas Petazzoni wrote:
> > Dates after January, 19th 2038 are badly handled by userspace due to
> > the time being stored on 32 bits. This causes issues on some Marvell
> > platform on which the RTC is initialized by default to a date that's
> > beyond 2038, causing a really weird behavior of the RTC.
> >
> > In order to avoid that, reset the date to a sane value if the RTC is
> > beyond 2038.
>
> Just so I better understand: is this really a problem that is unique to
> this particular RTC? It smells a bit like we're papering over a problem
> that may exist for other RTCs as well, and if so, is better solved in
> the core.
I'd say it depends on how the RTC internally encodes the date. Some RTC
may have an internal date representation that allows to represent dates
past 2^32 seconds after Epoch, while maybe some RTC do not.
However, it is true that a fairly large number of RTC drivers seem to
use the bcd2bin() function, which indicates the RTC internally uses a
BCD representation, which allows to represent dates past 2^32 seconds
after Epoch.
That being said, I don't think the RTC core has any knowledge of what
the internal RTC representation of time is, so I don't know how the
core could fix things up without this information.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
next prev parent reply other threads:[~2014-02-18 23:14 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-18 13:26 [PATCH] rtc: mv: reset date if after year 2038 Thomas Petazzoni
2014-02-18 13:34 ` Baruch Siach
2014-02-18 14:04 ` Andrew Lunn
2014-02-18 14:15 ` Jason Cooper
2014-02-18 14:16 ` Thomas Petazzoni
2014-02-18 14:53 ` Andrew Lunn
2014-02-18 14:58 ` Jason Cooper
2014-02-18 19:11 ` Josh Cartwright
2014-02-18 23:14 ` Thomas Petazzoni [this message]
2014-02-19 16:50 ` Josh Cartwright
2014-02-21 23:41 ` Jason Cooper
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140219001416.45a79767@skate \
--to=thomas.petazzoni@free-electrons.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox