[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <46909de8-3555-5bc6-2e2b-e139941f640f@intel.com>
Date: Mon, 1 Aug 2022 09:56:27 -0700
From: Tony Nguyen <anthony.l.nguyen@...el.com>
To: <davem@...emloft.net>, <kuba@...nel.org>, <pabeni@...hat.com>,
<edumazet@...gle.com>
CC: <netdev@...r.kernel.org>, <richardcochran@...il.com>,
<jacob.e.keller@...el.com>
Subject: Re: [PATCH net-next 0/7][pull request] 1GbE Intel Wired LAN Driver
Updates 2022-07-28
On 7/28/2022 11:18 AM, Tony Nguyen wrote:
> Jacob Keller says:
>
> Convert all of the Intel drivers with PTP support to the newer .adjfine
> implementation which uses scaled parts per million.
>
> This improves the precision of the frequency adjustments by taking advantage
> of the full scaled parts per million input coming from user space.
>
> In addition, all implementations are converted to using the
> mul_u64_u64_div_u64 function which better handles the intermediate value.
> This function supports architecture specific instructions where possible to
> avoid loss of precision if the normal 64-bit multiplication would overflow.
>
> Of note, the i40e implementation is now able to avoid loss of precision on
> slower link speeds by taking advantage of this to multiply by the link speed
> factor first. This results in a significantly more precise adjustment by
> allowing the calculation to impact the lower bits.
>
> This also gets us a step closer to being able to remove the .adjfreq
> entirely by removing its use from many drivers.
>
> I plan to follow this up with a series to update the drivers from other
> vendors and drop the .adjfreq implementation entirely.
>
> The following are changes since commit 623cd87006983935de6c2ad8e2d50e68f1b7d6e7:
> net: cdns,macb: use correct xlnx prefix for Xilinx
> and are available in the git repository at:
> git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue 1GbE
Hi Dave, Jakub, Paolo, Eric,
I'm seeing this as "Accepted" on Patchworks [1], but I haven't seen a
patchwork bot notification or am I seeing it on the tree. I think it may
have accidentally been marked so just wanted to get it back on the radar.
Thanks,
Tony
> Jacob Keller (7):
> ice: implement adjfine with mul_u64_u64_div_u64
> e1000e: remove unnecessary range check in e1000e_phc_adjfreq
> e1000e: convert .adjfreq to .adjfine
> i40e: use mul_u64_u64_div_u64 for PTP frequency calculation
> i40e: convert .adjfreq to .adjfine
> ixgbe: convert .adjfreq to .adjfine
> igb: convert .adjfreq to .adjfine
>
> drivers/net/ethernet/intel/e1000e/e1000.h | 2 +-
> drivers/net/ethernet/intel/e1000e/netdev.c | 4 +-
> drivers/net/ethernet/intel/e1000e/ptp.c | 18 +++--
> drivers/net/ethernet/intel/i40e/i40e_ptp.c | 35 ++++------
> drivers/net/ethernet/intel/ice/ice_ptp.c | 16 +----
> drivers/net/ethernet/intel/igb/igb_ptp.c | 15 ++--
> drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c | 73 +++++++++++---------
> 7 files changed, 75 insertions(+), 88 deletions(-)
>
[1]
https://patchwork.kernel.org/project/netdevbpf/list/?series=663859&state=*
Powered by blists - more mailing lists