Skip to content

Commit

Permalink
net/ice: fix mbuf offload flag for Rx timestamp
Browse files Browse the repository at this point in the history
[ upstream commit f5ada3b ]

For received PTP packets, the flag "RTE_MBUF_F_RX_IEEE1588_TMST" has not
been set which leads to received PTP packet not timestamped by hardware
shown in testpmd/ieee1588 fwd.

Fixes: 646dcbe ("net/ice: support IEEE 1588 PTP")

Signed-off-by: Simei Su <simei.su@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
  • Loading branch information
simeisu authored and kevintraynor committed Feb 21, 2022
1 parent 81597d6 commit b38f885
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions drivers/net/ice/ice_rxtx.c
Expand Up @@ -1554,6 +1554,9 @@ ice_rxd_to_vlan_tci(struct rte_mbuf *mb, volatile union ice_rx_flex_desc *rxdp)
#if (ICE_LOOK_AHEAD != 8)
#error "PMD ICE: ICE_LOOK_AHEAD must be 8\n"
#endif

#define ICE_PTP_TS_VALID 0x1

static inline int
ice_rx_scan_hw_ring(struct ice_rx_queue *rxq)
{
Expand Down Expand Up @@ -1634,6 +1637,10 @@ ice_rx_scan_hw_ring(struct ice_rx_queue *rxq)
rte_le_to_cpu_32(rxdp[j].wb.flex_ts.ts_high);
mb->timesync = rxq->queue_id;
pkt_flags |= RTE_MBUF_F_RX_IEEE1588_PTP;
if (rxdp[j].wb.time_stamp_low &
ICE_PTP_TS_VALID)
pkt_flags |=
RTE_MBUF_F_RX_IEEE1588_TMST;
}
#endif
mb->ol_flags |= pkt_flags;
Expand Down

0 comments on commit b38f885

Please sign in to comment.