net/mlx5: add header reformat HW steering action
[dpdk.git] / drivers / net / hns3 / hns3_ethdev_vf.c
index 36d860d..06ddf64 100644 (file)
@@ -6,7 +6,6 @@
 #include <rte_alarm.h>
 #include <ethdev_pci.h>
 #include <rte_io.h>
-#include <rte_pci.h>
 #include <rte_vfio.h>
 
 #include "hns3_ethdev.h"
@@ -810,25 +809,13 @@ hns3vf_get_push_lsc_cap(struct hns3_hw *hw)
 static int
 hns3vf_get_capability(struct hns3_hw *hw)
 {
-       struct rte_pci_device *pci_dev;
-       struct rte_eth_dev *eth_dev;
-       uint8_t revision;
        int ret;
 
-       eth_dev = &rte_eth_devices[hw->data->port_id];
-       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
-
-       /* Get PCI revision id */
-       ret = rte_pci_read_config(pci_dev, &revision, HNS3_PCI_REVISION_ID_LEN,
-                                 HNS3_PCI_REVISION_ID);
-       if (ret != HNS3_PCI_REVISION_ID_LEN) {
-               PMD_INIT_LOG(ERR, "failed to read pci revision id, ret = %d",
-                            ret);
-               return -EIO;
-       }
-       hw->revision = revision;
+       ret = hns3_get_pci_revision_id(hw, &hw->revision);
+       if (ret)
+               return ret;
 
-       if (revision < PCI_REVISION_ID_HIP09_A) {
+       if (hw->revision < PCI_REVISION_ID_HIP09_A) {
                hns3vf_set_default_dev_specifications(hw);
                hw->intr.mapping_mode = HNS3_INTR_MAPPING_VEC_RSV_ONE;
                hw->intr.gl_unit = HNS3_INTR_COALESCE_GL_UINT_2US;
@@ -1039,15 +1026,6 @@ hns3vf_get_configuration(struct hns3_hw *hw)
        return hns3vf_get_port_base_vlan_filter_state(hw);
 }
 
-static int
-hns3vf_set_tc_queue_mapping(struct hns3_adapter *hns, uint16_t nb_rx_q,
-                           uint16_t nb_tx_q)
-{
-       struct hns3_hw *hw = &hns->hw;
-
-       return hns3_queue_to_tc_mapping(hw, nb_rx_q, nb_tx_q);
-}
-
 static void
 hns3vf_request_link_info(struct hns3_hw *hw)
 {
@@ -1543,7 +1521,7 @@ hns3vf_init_vf(struct rte_eth_dev *eth_dev)
                goto err_set_tc_queue;
        }
 
-       ret = hns3vf_set_tc_queue_mapping(hns, hw->tqps_num, hw->tqps_num);
+       ret = hns3_queue_to_tc_mapping(hw, hw->tqps_num, hw->tqps_num);
        if (ret) {
                PMD_INIT_LOG(ERR, "failed to set tc info, ret = %d.", ret);
                goto err_set_tc_queue;
@@ -1752,7 +1730,7 @@ hns3vf_do_start(struct hns3_adapter *hns, bool reset_queue)
        uint16_t nb_tx_q = hw->data->nb_tx_queues;
        int ret;
 
-       ret = hns3vf_set_tc_queue_mapping(hns, nb_rx_q, nb_tx_q);
+       ret = hns3_queue_to_tc_mapping(hw, nb_rx_q, nb_tx_q);
        if (ret)
                return ret;
 
@@ -2312,6 +2290,7 @@ static const struct eth_dev_ops hns3vf_eth_dev_ops = {
        .get_reg            = hns3_get_regs,
        .dev_supported_ptypes_get = hns3_dev_supported_ptypes_get,
        .tx_done_cleanup    = hns3_tx_done_cleanup,
+       .eth_dev_priv_dump  = hns3_eth_dev_priv_dump,
 };
 
 static const struct hns3_reset_ops hns3vf_reset_ops = {
@@ -2421,7 +2400,6 @@ hns3vf_dev_uninit(struct rte_eth_dev *eth_dev)
        PMD_INIT_FUNC_TRACE();
 
        if (rte_eal_process_type() != RTE_PROC_PRIMARY) {
-               __atomic_fetch_sub(&hw->secondary_cnt, 1, __ATOMIC_RELAXED);
                hns3_mp_uninit(eth_dev);
                return 0;
        }