Messages in this thread | | | Date | Thu, 1 Jun 2023 13:45:10 -0700 | Subject | Re: [PATCH v2] igb: Fix extts capture value format for 82580/i354/i350 | From | Tony Nguyen <> |
| |
On 6/1/2023 10:05 AM, Keller, Jacob E wrote: > > >> -----Original Message----- >> From: Yuezhen Luan <eggcar.luan@gmail.com> >> Sent: Thursday, June 1, 2023 12:01 AM >> To: Brandeburg, Jesse <jesse.brandeburg@intel.com>; Nguyen, Anthony L >> <anthony.l.nguyen@intel.com>; davem@davemloft.net; >> edumazet@google.com; kuba@kernel.org; pabeni@redhat.com >> Cc: intel-wired-lan@lists.osuosl.org; netdev@vger.kernel.org; linux- >> kernel@vger.kernel.org; Keller, Jacob E <jacob.e.keller@intel.com>; Yuezhen >> Luan <eggcar.luan@gmail.com> >> Subject: [PATCH v2] igb: Fix extts capture value format for 82580/i354/i350 >> >> 82580/i354/i350 features circle-counter-like timestamp registers >> that are different with newer i210. The EXTTS capture value in >> AUXTSMPx should be converted from raw circle counter value to >> timestamp value in resolution of 1 nanosec by the driver. >> >> This issue can be reproduced on i350 nics, connecting an 1PPS >> signal to a SDP pin, and run 'ts2phc' command to read external >> 1PPS timestamp value. On i210 this works fine, but on i350 the >> extts is not correctly converted. >> >> The i350/i354/82580's SYSTIM and other timestamp registers are >> 40bit counters, presenting time range of 2^40 ns, that means these >> registers overflows every about 1099s. This causes all these regs >> can't be used directly in contrast to the newer i210/i211s. >> >> The igb driver needs to convert these raw register values to >> valid time stamp format by using kernel timecounter apis for i350s >> families. Here the igb_extts() just forgot to do the convert. >> >> Signed-off-by: Yuezhen Luan <eggcar.luan@gmail.com> > > Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Thanks for reviewing Jake.
> Thanks for fixing this! > > @Nguyen, Anthony L > I think this is a worthy net fix.
Hi Yuezhen,
Could you include a Fixes: so that we can route this through net.
You should also add a target tree for your patch (net or net-next). Here's some useful intro information for netdev [1].
Thanks, Tony
[1] https://www.kernel.org/doc/html/latest/process/maintainer-netdev.html#netdev-faq
| |