From: lsorense@csclub.uwaterloo.ca (Lennart Sorensen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 0/2] ARM: omap5/dra7xx counter frequency fixes
Date: Fri, 12 Dec 2014 17:08:07 -0500 [thread overview]
Message-ID: <cover.1418421100.git.lsorense@csclub.uwaterloo.ca> (raw)
While trying to deal with errata i856 on the dra7xx I encountered some
obvious typos in the frequencies checked in timer.c, so those are being
fixed in case anyone ever tries to use one of them.
Also implement a fix for errata i856. Without the fix the time on the
system will get ahead by 43 seconds per day if SYSCLK1 is 20MHz, which it
is on the EVM boards as well as the other boards I am currently aware of.
ntp declares that the system time drifts by over 500ppm (the maximum
ntp will tolerate).
To fix it, check the status register to determine if the 32.768KHz clock
source is real (driven by an external crystal) or emulated (SYSCLK1 /
610), and if it is emulated use the appropriate numerator and divisor
to make the fine master counter match the coarse master counter (which
is driven directly from the 32KHz clock (real or emulated) with a fixed
multiplier of 375 / 2). Making the fine counter run at a frequency
different from the coarse counter is not an option, as the value in the
fine counter is updated to match the coarse counter if they ever get
out of sync.
With 19.2MHz installed on the board, the clock runs almost 5% slow.
With the change in place, ntp runs with a drift of around 3ppm on all
boards I have tried which is well within the spec of the crystals used
for SYSCLK1.
Even if the errata is fixed in future revisions of the chip, there is
still the option of someone purposely not connecting a 32.768KHz crystal
to save cost or board space, and relying on the emulated clock instead,
in which case this correction will still be necessary.
Len Sorensen (2):
ARM: omap5/dra7xx: Fix frequency typos.
ARM: omap5/dra7xx: Fix counter frequency drift for AM572x errata
i856.
arch/arm/mach-omap2/timer.c | 120 +++++++++++++++++++++++++++++++------------
1 file changed, 87 insertions(+), 33 deletions(-)
--
1.7.10.4
next reply other threads:[~2014-12-12 22:08 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-12 22:08 Lennart Sorensen [this message]
2014-12-12 22:08 ` [PATCH 1/2] ARM: omap5/dra7xx: Fix frequency typos Lennart Sorensen
2014-12-16 11:38 ` Lokesh Vutla
2014-12-16 14:06 ` Nishanth Menon
2014-12-16 16:39 ` Lennart Sorensen
2014-12-12 22:08 ` [PATCH 2/2] ARM: omap5/dra7xx: Fix counter frequency drift for AM572x errata i856 Lennart Sorensen
2014-12-14 4:45 ` Lennart Sorensen
2014-12-16 11:35 ` Lokesh Vutla
2014-12-16 14:58 ` Nishanth Menon
2014-12-16 16:36 ` Lennart Sorensen
2014-12-16 18:59 ` Nishanth Menon
2014-12-16 19:27 ` Lennart Sorensen
2014-12-16 19:33 ` Nishanth Menon
2014-12-17 13:21 ` Tero Kristo
2014-12-17 14:55 ` Lennart Sorensen
2014-12-17 15:22 ` Nishanth Menon
2014-12-17 15:27 ` Lennart Sorensen
2014-12-17 15:45 ` Tero Kristo
2014-12-17 15:49 ` Lennart Sorensen
2014-12-17 15:53 ` Nishanth Menon
2014-12-17 15:56 ` Tero Kristo
2014-12-16 16:16 ` Lennart Sorensen
2014-12-16 19:56 ` Nishanth Menon
2014-12-16 19:58 ` Lennart Sorensen
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=cover.1418421100.git.lsorense@csclub.uwaterloo.ca \
--to=lsorense@csclub.uwaterloo.ca \
--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;
as well as URLs for NNTP newsgroup(s).