net/dpaa2: add support for VLAN strip
[dpdk.git] / drivers / net / dpaa2 / dpaa2_rxtx.c
index 8476972..30125eb 100644 (file)
@@ -330,6 +330,9 @@ dpaa2_dev_prefetch_rx(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
                if (dev->data->dev_conf.rxmode.hw_vlan_strip)
                        rte_vlan_strip(bufs[num_rx]);
 
+               if (dev->data->dev_conf.rxmode.hw_vlan_strip)
+                       rte_vlan_strip(bufs[num_rx]);
+
                dq_storage++;
                num_rx++;
        }
@@ -406,6 +409,10 @@ dpaa2_dev_tx(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
 
        /*Clear the unused FD fields before sending*/
        while (nb_pkts) {
+               /*Check if the queue is congested*/
+               if (qbman_result_SCN_state_in_mem(dpaa2_q->cscn))
+                       goto skip_tx;
+
                frames_to_send = (nb_pkts >> 3) ? MAX_TX_RING_SLOTS : nb_pkts;
 
                for (loop = 0; loop < frames_to_send; loop++) {