Commit c7e5c423 authored by Vladimir Oltean's avatar Vladimir Oltean Committed by Jakub Kicinski
Browse files

net: gianfar: add support for software TX timestamping



These are required by certain network profiling applications in order to
measure delays.

Signed-off-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
Acked-by: default avatarRichard Cochran <richardcochran@gmail.com>
Reviewed-by: default avatarClaudiu Manoil <claudiu.manoil@nxp.com>
Link: https://lore.kernel.org/r/20220629181335.3800821-1-vladimir.oltean@nxp.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 5a243894
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1944,6 +1944,7 @@ static netdev_tx_t gfar_start_xmit(struct sk_buff *skb, struct net_device *dev)
		lstatus |= BD_LFLAG(TXBD_CRC | TXBD_READY) | skb_headlen(skb);
	}

	skb_tx_timestamp(skb);
	netdev_tx_sent_queue(txq, bytes_sent);

	gfar_wmb();
+5 −1
Original line number Diff line number Diff line
@@ -1457,6 +1457,7 @@ static int gfar_get_ts_info(struct net_device *dev,

	if (!(priv->device_flags & FSL_GIANFAR_DEV_HAS_TIMER)) {
		info->so_timestamping = SOF_TIMESTAMPING_RX_SOFTWARE |
					SOF_TIMESTAMPING_TX_SOFTWARE |
					SOF_TIMESTAMPING_SOFTWARE;
		return 0;
	}
@@ -1474,7 +1475,10 @@ static int gfar_get_ts_info(struct net_device *dev,

	info->so_timestamping = SOF_TIMESTAMPING_TX_HARDWARE |
				SOF_TIMESTAMPING_RX_HARDWARE |
				SOF_TIMESTAMPING_RAW_HARDWARE;
				SOF_TIMESTAMPING_RAW_HARDWARE |
				SOF_TIMESTAMPING_RX_SOFTWARE |
				SOF_TIMESTAMPING_TX_SOFTWARE |
				SOF_TIMESTAMPING_SOFTWARE;
	info->tx_types = (1 << HWTSTAMP_TX_OFF) |
			 (1 << HWTSTAMP_TX_ON);
	info->rx_filters = (1 << HWTSTAMP_FILTER_NONE) |