From: Denys Vlasenko <dvlasenk@redhat.com>
To: intel-wired-lan@osuosl.org
Subject: [Intel-wired-lan] [PATCH 3/3] e1000e: e1000e_cyclecounter_read(): do overflow check only if needed
Date: Thu, 21 Apr 2016 19:23:19 +0200 [thread overview]
Message-ID: <57190C87.7020103@redhat.com> (raw)
In-Reply-To: <36CDDD56DDB4D44E911123902EFC26B05B47C768@HASMSX110.ger.corp.intel.com>
On 04/21/2016 04:49 PM, Ruinskiy, Dima wrote:
> Not sure I follow (perhaps I am missing some background).
> Why do you assume there can be only 1 or 2 increments?
Different e1000e models have different timer cycle periods:
#define INCVALUE_96MHz 125
#define INCVALUE_SHIFT_96MHz 17
#define INCPERIOD_SHIFT_96MHz 2
#define INCPERIOD_96MHz (12 >> INCPERIOD_SHIFT_96MHz)
#define INCVALUE_25MHz 40
#define INCVALUE_SHIFT_25MHz 18
#define INCPERIOD_25MHz 1
#define INCVALUE_24MHz 125
#define INCVALUE_SHIFT_24MHz 14
#define INCPERIOD_24MHz 3
The fastest is 96MHz, ~10ns, and we update the counter every 3 periods,
so two updates are 30ns apart.
That is.... fast. PCIe reads are in ~100ns territory.
So yes, you seem to be right. There can be more than two updates
between two PCIe reads.
next prev parent reply other threads:[~2016-04-21 17:23 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-20 15:45 [Intel-wired-lan] [PATCH 1/3] e1000e: e1000e_cyclecounter_read(): incvalue is 32 bits, not 64 Denys Vlasenko
2016-04-20 15:45 ` [Intel-wired-lan] [PATCH 2/3] e1000e: e1000e_cyclecounter_read(): fix er32(SYSTIML) overflow check Denys Vlasenko
2016-04-21 14:43 ` Ruinskiy, Dima
2016-04-25 23:08 ` Brown, Aaron F
2016-04-20 15:45 ` [Intel-wired-lan] [PATCH 3/3] e1000e: e1000e_cyclecounter_read(): do overflow check only if needed Denys Vlasenko
2016-04-21 14:49 ` Ruinskiy, Dima
2016-04-21 17:23 ` Denys Vlasenko [this message]
2016-04-25 23:12 ` Brown, Aaron F
2016-04-26 16:03 ` Denys Vlasenko
2016-04-26 19:40 ` Brown, Aaron F
2016-04-21 14:41 ` [Intel-wired-lan] [PATCH 1/3] e1000e: e1000e_cyclecounter_read(): incvalue is 32 bits, not 64 Ruinskiy, Dima
2016-04-25 23:04 ` Brown, Aaron F
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=57190C87.7020103@redhat.com \
--to=dvlasenk@redhat.com \
--cc=intel-wired-lan@osuosl.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.