kernel: bump 5.4 to 5.4.106
[openwrt/openwrt.git] / target / linux / layerscape / patches-5.4 / 701-net-0103-sdk_dpaa-fix-hardware-timestamp-value.patch
1 From c96c65930fb5a348d96b88f4edeea1ddf8229c28 Mon Sep 17 00:00:00 2001
2 From: Yangbo Lu <yangbo.lu@nxp.com>
3 Date: Thu, 1 Nov 2018 15:34:17 +0800
4 Subject: [PATCH] sdk_dpaa: fix hardware timestamp value
5
6 The hardware timestamp value got didn't need to be multiplied
7 by nominal frequency since ptp_qoriq driver initialized the
8 counter to add clock period, not the clock tick.
9
10 Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
11 ---
12 drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_common.c | 7 ++-----
13 1 file changed, 2 insertions(+), 5 deletions(-)
14
15 --- a/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_common.c
16 +++ b/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_common.c
17 @@ -306,7 +306,7 @@ EXPORT_SYMBOL(dpa_fix_features);
18 u64 dpa_get_timestamp_ns(const struct dpa_priv_s *priv, enum port_type rx_tx,
19 const void *data)
20 {
21 - u64 *ts, ns;
22 + u64 *ts;
23
24 ts = fm_port_get_buffer_time_stamp(priv->mac_dev->port_dev[rx_tx],
25 data);
26 @@ -316,10 +316,7 @@ u64 dpa_get_timestamp_ns(const struct dp
27
28 be64_to_cpus(ts);
29
30 - /* multiple DPA_PTP_NOMINAL_FREQ_PERIOD_NS for case of non power of 2 */
31 - ns = *ts << DPA_PTP_NOMINAL_FREQ_PERIOD_SHIFT;
32 -
33 - return ns;
34 + return *ts;
35 }
36
37 int dpa_get_ts(const struct dpa_priv_s *priv, enum port_type rx_tx,