* [PATCH] drivers/net/freescale: Convert to adjfine interface
@ 2023-01-05 6:59 Jan Kiszka
0 siblings, 0 replies; only message in thread
From: Jan Kiszka @ 2023-01-05 6:59 UTC (permalink / raw)
To: Xenomai; +Cc: Jean-Baptiste Trédez, Gunter Grau
From: Jan Kiszka <jan.kiszka@siemens.com>
Extracted from upstream commit e2bd9c76c89fbe25df351fc5902cbbcca6a7d372.
We can apply this unconditionally as the adjfine interface was already
present in 5.10, the oldest supported kernel here.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
kernel/drivers/net/drivers/freescale/fec_ptp.c | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/kernel/drivers/net/drivers/freescale/fec_ptp.c b/kernel/drivers/net/drivers/freescale/fec_ptp.c
index d71eac7e19..e7ccf7d676 100644
--- a/kernel/drivers/net/drivers/freescale/fec_ptp.c
+++ b/kernel/drivers/net/drivers/freescale/fec_ptp.c
@@ -268,18 +268,21 @@ void fec_ptp_start_cyclecounter(struct net_device *ndev)
}
/**
- * fec_ptp_adjfreq - adjust ptp cycle frequency
+ * fec_ptp_adjfine - adjust ptp cycle frequency
* @ptp: the ptp clock structure
- * @ppb: parts per billion adjustment from base
+ * @scaled_ppm: scaled parts per million adjustment from base
*
* Adjust the frequency of the ptp cycle counter by the
- * indicated ppb from the base frequency.
+ * indicated amount from the base frequency.
+ *
+ * Scaled parts per million is ppm with a 16-bit binary fractional field.
*
* Because ENET hardware frequency adjust is complex,
* using software method to do that.
*/
-static int fec_ptp_adjfreq(struct ptp_clock_info *ptp, s32 ppb)
+static int fec_ptp_adjfine(struct ptp_clock_info *ptp, long scaled_ppm)
{
+ s32 ppb = scaled_ppm_to_ppb(scaled_ppm);
unsigned long flags;
int neg_adj = 0;
u32 i, tmp;
@@ -595,7 +598,7 @@ void fec_ptp_init(struct platform_device *pdev, int irq_idx)
fep->ptp_caps.n_per_out = 0;
fep->ptp_caps.n_pins = 0;
fep->ptp_caps.pps = 1;
- fep->ptp_caps.adjfreq = fec_ptp_adjfreq;
+ fep->ptp_caps.adjfine = fec_ptp_adjfine;
fep->ptp_caps.adjtime = fec_ptp_adjtime;
fep->ptp_caps.gettime64 = fec_ptp_gettime;
fep->ptp_caps.settime64 = fec_ptp_settime;
--
2.35.3
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2023-01-05 6:59 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-05 6:59 [PATCH] drivers/net/freescale: Convert to adjfine interface Jan Kiszka
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).