On Thu, 25 Jun 2020 19:07:33 -0700 Jeff Kirsher wrote:
> @@ -1315,7 +1489,18 @@ iecm_tx_splitq_clean(struct iecm_queue *tx_q, u16 end,
> int napi_budget,
> */
> static inline void iecm_tx_hw_tstamp(struct sk_buff *skb, u8 *desc_ts)
Pretty sure you don't need the inline here. It's static function with
one caller.
> {
> - /* stub */
> + struct skb_shared_hwtstamps hwtstamps;
> + u64 tstamp;
> +
> + /* Only report timestamp to stack if requested */
> + if (!likely(skb_shinfo(skb)->tx_flags & SKBTX_HW_TSTAMP))
> + return;
> +
> + tstamp = (desc_ts[0] | (desc_ts[1] << 8) | (desc_ts[2] & 0x3F) << 16);
> + hwtstamps.hwtstamp =
> + ns_to_ktime(tstamp << IECM_TW_TIME_STAMP_GRAN_512_DIV_S);
> +
> + skb_tstamp_tx(skb, &hwtstamps);
> }
Why is there time stamp reading support if you have no ts_info
configuration on ethtool side at all and no PHC support?