From: Min Hu (Connor) Date: Thu, 29 Apr 2021 09:19:03 +0000 (+0800) Subject: net/hns3: fix IEEE 1588 PTP for scalar scattered Rx X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=4801f0403b58dcead23b778085f6180b7789bfac;p=dpdk.git net/hns3: fix IEEE 1588 PTP for scalar scattered Rx When jumbo frame is enabled, Rx function will choose 'Scalar Scattered' function which has no PTP handling. This patch fixes it by adding PTP handling in 'Scalar Scattered' function. Fixes: 38b539d96eb6 ("net/hns3: support IEEE 1588 PTP") Signed-off-by: Min Hu (Connor) --- diff --git a/drivers/net/hns3/hns3_rxtx.c b/drivers/net/hns3/hns3_rxtx.c index 7ac3a4831c..a76b141891 100644 --- a/drivers/net/hns3/hns3_rxtx.c +++ b/drivers/net/hns3/hns3_rxtx.c @@ -2654,6 +2654,9 @@ hns3_recv_scattered_pkts(void *rx_queue, continue; } + if (unlikely(bd_base_info & BIT(HNS3_RXD_TS_VLD_B))) + hns3_rx_ptp_timestamp_handle(rxq, first_seg, rxdp); + /* * The last buffer of the received packet. packet len from * buffer description may contains CRC len, packet len should @@ -2704,6 +2707,9 @@ hns3_recv_scattered_pkts(void *rx_queue, first_seg->packet_type = hns3_rx_calc_ptype(rxq, l234_info, ol_info); + if (first_seg->packet_type == RTE_PTYPE_L2_ETHER_TIMESYNC) + rxm->ol_flags |= PKT_RX_IEEE1588_PTP; + hns3_rxd_to_vlan_tci(rxq, first_seg, l234_info, &rxd); /* Increment bytes counter */