common/mlx5: register class drivers through common layer
[dpdk.git] / drivers / net / ice / ice_rxtx.c
index 3c3f61e..cc31390 100644 (file)
@@ -244,12 +244,6 @@ _ice_rx_queue_release_mbufs(struct ice_rx_queue *rxq)
        rxq->rx_nb_avail = 0;
 }
 
-static void
-ice_rx_queue_release_mbufs(struct ice_rx_queue *rxq)
-{
-       rxq->rx_rel_mbufs(rxq);
-}
-
 /* turn on or off rx queue
  * @q_idx: queue index in pf scope
  * @on: turn on or off the queue
@@ -408,7 +402,7 @@ ice_rx_queue_start(struct rte_eth_dev *dev, uint16_t rx_queue_id)
                PMD_DRV_LOG(ERR, "Failed to switch RX queue %u on",
                            rx_queue_id);
 
-               ice_rx_queue_release_mbufs(rxq);
+               rxq->rx_rel_mbufs(rxq);
                ice_reset_rx_queue(rxq);
                return -EINVAL;
        }
@@ -435,7 +429,7 @@ ice_rx_queue_stop(struct rte_eth_dev *dev, uint16_t rx_queue_id)
                                    rx_queue_id);
                        return -EINVAL;
                }
-               ice_rx_queue_release_mbufs(rxq);
+               rxq->rx_rel_mbufs(rxq);
                ice_reset_rx_queue(rxq);
                dev->data->rx_queue_state[rx_queue_id] =
                        RTE_ETH_QUEUE_STATE_STOPPED;
@@ -487,7 +481,7 @@ ice_tx_queue_start(struct rte_eth_dev *dev, uint16_t tx_queue_id)
        tx_ctx.tso_qnum = txq->reg_idx; /* index for tso state structure */
        tx_ctx.legacy_int = 1; /* Legacy or Advanced Host Interface */
 
-       ice_set_ctx((uint8_t *)&tx_ctx, txq_elem.txqs[0].txq_ctx,
+       ice_set_ctx(hw, (uint8_t *)&tx_ctx, txq_elem.txqs[0].txq_ctx,
                    ice_tlan_ctx_info);
 
        txq->qtx_tail = hw->hw_addr + QTX_COMM_DBELL(txq->reg_idx);
@@ -659,7 +653,7 @@ ice_fdir_tx_queue_start(struct rte_eth_dev *dev, uint16_t tx_queue_id)
        tx_ctx.tso_qnum = txq->reg_idx; /* index for tso state structure */
        tx_ctx.legacy_int = 1; /* Legacy or Advanced Host Interface */
 
-       ice_set_ctx((uint8_t *)&tx_ctx, txq_elem.txqs[0].txq_ctx,
+       ice_set_ctx(hw, (uint8_t *)&tx_ctx, txq_elem.txqs[0].txq_ctx,
                    ice_tlan_ctx_info);
 
        txq->qtx_tail = hw->hw_addr + QTX_COMM_DBELL(txq->reg_idx);
@@ -698,11 +692,6 @@ _ice_tx_queue_release_mbufs(struct ice_tx_queue *txq)
                }
        }
 }
-static void
-ice_tx_queue_release_mbufs(struct ice_tx_queue *txq)
-{
-       txq->tx_rel_mbufs(txq);
-}
 
 static void
 ice_reset_tx_queue(struct ice_tx_queue *txq)
@@ -778,7 +767,7 @@ ice_tx_queue_stop(struct rte_eth_dev *dev, uint16_t tx_queue_id)
                return -EINVAL;
        }
 
-       ice_tx_queue_release_mbufs(txq);
+       txq->tx_rel_mbufs(txq);
        ice_reset_tx_queue(txq);
        dev->data->tx_queue_state[tx_queue_id] = RTE_ETH_QUEUE_STATE_STOPPED;
 
@@ -801,7 +790,7 @@ ice_fdir_rx_queue_stop(struct rte_eth_dev *dev, uint16_t rx_queue_id)
                            rx_queue_id);
                return -EINVAL;
        }
-       ice_rx_queue_release_mbufs(rxq);
+       rxq->rx_rel_mbufs(rxq);
 
        return 0;
 }
@@ -837,7 +826,7 @@ ice_fdir_tx_queue_stop(struct rte_eth_dev *dev, uint16_t tx_queue_id)
                return -EINVAL;
        }
 
-       ice_tx_queue_release_mbufs(txq);
+       txq->tx_rel_mbufs(txq);
 
        return 0;
 }
@@ -976,7 +965,7 @@ ice_rx_queue_release(void *rxq)
                return;
        }
 
-       ice_rx_queue_release_mbufs(q);
+       q->rx_rel_mbufs(q);
        rte_free(q->sw_ring);
        rte_free(q);
 }
@@ -1172,7 +1161,7 @@ ice_tx_queue_release(void *txq)
                return;
        }
 
-       ice_tx_queue_release_mbufs(q);
+       q->tx_rel_mbufs(q);
        rte_free(q->sw_ring);
        rte_free(q);
 }
@@ -1904,24 +1893,6 @@ ice_tx_descriptor_status(void *tx_queue, uint16_t offset)
        return RTE_ETH_TX_DESC_FULL;
 }
 
-void
-ice_clear_queues(struct rte_eth_dev *dev)
-{
-       uint16_t i;
-
-       PMD_INIT_FUNC_TRACE();
-
-       for (i = 0; i < dev->data->nb_tx_queues; i++) {
-               ice_tx_queue_release_mbufs(dev->data->tx_queues[i]);
-               ice_reset_tx_queue(dev->data->tx_queues[i]);
-       }
-
-       for (i = 0; i < dev->data->nb_rx_queues; i++) {
-               ice_rx_queue_release_mbufs(dev->data->rx_queues[i]);
-               ice_reset_rx_queue(dev->data->rx_queues[i]);
-       }
-}
-
 void
 ice_free_queues(struct rte_eth_dev *dev)
 {
@@ -1934,6 +1905,7 @@ ice_free_queues(struct rte_eth_dev *dev)
                        continue;
                ice_rx_queue_release(dev->data->rx_queues[i]);
                dev->data->rx_queues[i] = NULL;
+               rte_eth_dma_zone_free(dev, "rx_ring", i);
        }
        dev->data->nb_rx_queues = 0;
 
@@ -1942,6 +1914,7 @@ ice_free_queues(struct rte_eth_dev *dev)
                        continue;
                ice_tx_queue_release(dev->data->tx_queues[i]);
                dev->data->tx_queues[i] = NULL;
+               rte_eth_dma_zone_free(dev, "tx_ring", i);
        }
        dev->data->nb_tx_queues = 0;
 }
@@ -2614,7 +2587,7 @@ end_of_tx:
        return nb_tx;
 }
 
-static inline int __attribute__((always_inline))
+static __rte_always_inline int
 ice_tx_free_bufs(struct ice_tx_queue *txq)
 {
        struct ice_tx_entry *txep;
@@ -2903,7 +2876,7 @@ ice_xmit_pkts_simple(void *tx_queue,
        return nb_tx;
 }
 
-void __attribute__((cold))
+void __rte_cold
 ice_set_rx_function(struct rte_eth_dev *dev)
 {
        PMD_INIT_FUNC_TRACE();
@@ -3013,7 +2986,7 @@ ice_rx_burst_mode_get(struct rte_eth_dev *dev, __rte_unused uint16_t queue_id,
        return ret;
 }
 
-void __attribute__((cold))
+void __rte_cold
 ice_set_tx_function_flag(struct rte_eth_dev *dev, struct ice_tx_queue *txq)
 {
        struct ice_adapter *ad =
@@ -3082,7 +3055,7 @@ ice_prep_pkts(__rte_unused void *tx_queue, struct rte_mbuf **tx_pkts,
        return i;
 }
 
-void __attribute__((cold))
+void __rte_cold
 ice_set_tx_function(struct rte_eth_dev *dev)
 {
        struct ice_adapter *ad =
@@ -3711,7 +3684,7 @@ ice_get_default_pkt_type(uint16_t ptype)
        return type_table[ptype];
 }
 
-void __attribute__((cold))
+void __rte_cold
 ice_set_default_ptype_table(struct rte_eth_dev *dev)
 {
        struct ice_adapter *ad =