From: Richard Cochran <richardcochran@gmail.com>
To: Alexander Duyck <alexander.h.duyck@intel.com>
Cc: davem@davemloft.net, nhorman@redhat.com, netdev@vger.kernel.org,
john.fastabend@gmail.com, matthew.vick@intel.com,
jeffrey.t.kirsher@intel.com, sassmann@redhat.com
Subject: Re: [net-next PATCH 28/29] fm10k: Add support for ptp to hw specific files
Date: Fri, 19 Sep 2014 09:38:20 +0200 [thread overview]
Message-ID: <20140919073820.GA5954@netboy> (raw)
In-Reply-To: <20140918224023.10373.11456.stgit@ahduyck-bv4.jf.intel.com>
On Thu, Sep 18, 2014 at 06:40:30PM -0400, Alexander Duyck wrote:
> +static s32 fm10k_adjust_systime_pf(struct fm10k_hw *hw, s32 ppb)
> +{
> + u64 systime_adjust;
> +
> + /* if sw_addr is not set we don't have switch register access */
> + if (!hw->sw_addr)
> + return ppb ? FM10K_ERR_PARAM : 0;
> +
> + /* we must convert the value from parts per billion to parts per
> + * 2^48 cycles. In addition we can only use the upper 30 bits of
> + * the value when making the change so that restricts us futher.
> + * The math for this is equivilent to ABS(pps) * 2^40 / 10 ^ 9,
Huh? Converting ppb to parts per 2^48 should be (ppb * 2^48 / 10^9),
shouldn't it?
Did you mean, "we must convert ... to parts per 2^40 cycles" ?
Also, the comment about using the upper 30 bits is not clear. Do you
mean that the hardware ignores the two least significant bits?
> + * the function below is roughly ABS(pps) * 2 ^ 31 / 5 ^ 9 which
> + * is as close as we can get to the exact value with numbers as
> + * small as possible.
> + */
> + systime_adjust = (ppb < 0) ? -ppb : ppb;
> + systime_adjust <<= 31;
> + do_div(systime_adjust, 1953125);
> +
> + /* verify the requested adjustment value is in range */
> + if (systime_adjust > FM10K_SW_SYSTIME_ADJUST_MASK)
> + return FM10K_ERR_PARAM;
> +
> + if (ppb < 0)
> + systime_adjust |= FM10K_SW_SYSTIME_ADJUST_DIR_NEGATIVE;
> +
> + fm10k_write_sw_reg(hw, FM10K_SW_SYSTIME_ADJUST, (u32)systime_adjust);
> +
> + return 0;
> +}
Thanks,
Richard
next prev parent reply other threads:[~2014-09-19 7:38 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-18 22:35 [net-next PATCH 00/29] Add support for the Intel FM10000 Ethernet Switch Host Interface Alexander Duyck
2014-09-18 22:35 ` [net-next PATCH 01/29] fm10k: Add skeletal frame for Intel(R) FM10000 Ethernet Switch Host Interface Driver Alexander Duyck
2014-09-18 22:35 ` [net-next PATCH 02/29] fm10k: Add register defines and basic structures Alexander Duyck
2014-09-18 22:36 ` [net-next PATCH 03/29] fm10k: Add support for TLV message parsing and generation Alexander Duyck
2014-09-18 22:36 ` [net-next PATCH 04/29] fm10k: Add support for basic interaction with hardware Alexander Duyck
2014-09-18 22:36 ` [net-next PATCH 05/29] fm10k: Add support for mailbox Alexander Duyck
2014-09-18 22:36 ` [net-next PATCH 06/29] fm10k: Implement PF <-> SM mailbox operations Alexander Duyck
2014-09-18 22:36 ` [net-next PATCH 07/29] fm10k: Add support for PF Alexander Duyck
2014-09-18 22:36 ` [net-next PATCH 08/29] fm10k: Add support for configuring PF interface Alexander Duyck
2014-09-18 22:36 ` [net-next PATCH 09/29] fm10k: Add netdev Alexander Duyck
2014-09-18 22:37 ` [net-next PATCH 10/29] fm10k: Add support for L2 filtering Alexander Duyck
2014-09-18 22:37 ` [net-next PATCH 11/29] fm10k: Add support for ndo_open/stop Alexander Duyck
2014-09-18 22:37 ` [net-next PATCH 12/29] fm10k: Add interrupt support Alexander Duyck
2014-09-18 22:37 ` [net-next PATCH 13/29] fm10k: add support for Tx/Rx rings Alexander Duyck
2014-09-18 22:37 ` [net-next PATCH 14/29] fm10k: Add service task to handle delayed events Alexander Duyck
2014-09-18 22:37 ` [net-next PATCH 15/29] fm10k: Add Tx/Rx hardware ring bring-up/tear-down Alexander Duyck
2014-09-18 22:38 ` [net-next PATCH 16/29] fm10k: Add transmit and receive fastpath and interrupt handlers Alexander Duyck
2014-09-18 22:38 ` [net-next PATCH 17/29] fm10k: Add ethtool support Alexander Duyck
2014-09-18 22:38 ` [net-next PATCH 18/29] fm10k: Add support for PCI power management and error handling Alexander Duyck
2014-09-18 22:38 ` [net-next PATCH 19/29] fm10k: Add support for multiple queues Alexander Duyck
2014-09-18 22:38 ` [net-next PATCH 20/29] fm10k: Add support for netdev offloads Alexander Duyck
2014-09-18 22:39 ` [net-next PATCH 21/29] fm10k: Add support for MACVLAN acceleration Alexander Duyck
2014-09-18 22:39 ` [net-next PATCH 22/29] fm10k: Add support for PF <-> VF mailbox Alexander Duyck
2014-09-18 22:39 ` [net-next PATCH 23/29] fm10k: Add support for VF Alexander Duyck
2014-09-18 22:39 ` [net-next PATCH 24/29] fm10k: Add support for SR-IOV to PF core files Alexander Duyck
2014-09-18 22:39 ` [net-next PATCH 25/29] fm10k: Add support for SR-IOV to driver Alexander Duyck
2014-09-18 22:40 ` [net-next PATCH 26/29] fm10k: Add support for IEEE DCBx Alexander Duyck
2014-09-18 22:40 ` [net-next PATCH 27/29] fm10k: Add support for debugfs Alexander Duyck
2014-09-18 22:40 ` [net-next PATCH 28/29] fm10k: Add support for ptp to hw specific files Alexander Duyck
2014-09-19 7:38 ` Richard Cochran [this message]
2014-09-19 14:36 ` Alexander Duyck
2014-09-19 15:19 ` Richard Cochran
2014-09-19 15:34 ` Alexander Duyck
2014-09-18 22:40 ` [net-next PATCH 29/29] fm10k: Add support for PTP Alexander Duyck
2014-09-19 17:35 ` Richard Cochran
2014-09-19 18:32 ` Alexander Duyck
2014-09-20 21:07 ` Richard Cochran
2014-09-20 21:37 ` Joe Perches
2014-09-20 21:16 ` Richard Cochran
2014-09-20 23:36 ` Alexander Duyck
2014-09-22 11:03 ` David Laight
2014-09-22 14:21 ` Alexander Duyck
2014-09-19 7:55 ` [net-next PATCH 00/29] Add support for the Intel FM10000 Ethernet Switch Host Interface Jiri Pirko
2014-09-19 14:43 ` Alexander Duyck
2014-09-19 10:57 ` Jamal Hadi Salim
2014-09-19 14:54 ` Alexander Duyck
2014-09-19 16:58 ` Alexei Starovoitov
2014-09-19 18:22 ` Alexander Duyck
2014-09-19 23:52 ` Alexander Duyck
2014-09-20 2:03 ` David Miller
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=20140919073820.GA5954@netboy \
--to=richardcochran@gmail.com \
--cc=alexander.h.duyck@intel.com \
--cc=davem@davemloft.net \
--cc=jeffrey.t.kirsher@intel.com \
--cc=john.fastabend@gmail.com \
--cc=matthew.vick@intel.com \
--cc=netdev@vger.kernel.org \
--cc=nhorman@redhat.com \
--cc=sassmann@redhat.com \
/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).