Commit 61d5e2a2 authored by Csókás Bence's avatar Csókás Bence Committed by Jakub Kicinski

fec: Fix timer capture timing in `fec_ptp_enable_pps()`

Code reimplements functionality already in `fec_ptp_read()`,
but misses check for FEC_QUIRK_BUG_CAPTURE. Replace with function call.

Fixes: 28b5f058 ("net: fec: ptp: fix convergence issue to support LinuxPTP stack")
Signed-off-by: default avatarCsókás Bence <csokas.bence@prolan.hu>
Link: https://lore.kernel.org/r/20220811101348.13755-1-csokas.bence@prolan.huSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 40b4ac88
...@@ -135,11 +135,7 @@ static int fec_ptp_enable_pps(struct fec_enet_private *fep, uint enable) ...@@ -135,11 +135,7 @@ static int fec_ptp_enable_pps(struct fec_enet_private *fep, uint enable)
* NSEC_PER_SEC - ts.tv_nsec. Add the remaining nanoseconds * NSEC_PER_SEC - ts.tv_nsec. Add the remaining nanoseconds
* to current timer would be next second. * to current timer would be next second.
*/ */
tempval = readl(fep->hwp + FEC_ATIME_CTRL); tempval = fep->cc.read(&fep->cc);
tempval |= FEC_T_CTRL_CAPTURE;
writel(tempval, fep->hwp + FEC_ATIME_CTRL);
tempval = readl(fep->hwp + FEC_ATIME);
/* Convert the ptp local counter to 1588 timestamp */ /* Convert the ptp local counter to 1588 timestamp */
ns = timecounter_cyc2time(&fep->tc, tempval); ns = timecounter_cyc2time(&fep->tc, tempval);
ts = ns_to_timespec64(ns); ts = ns_to_timespec64(ns);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment