On 05/15/2017 01:24 PM, Ferruh Yigit wrote:
Instead of many PMD define their own macro, define a generic one in
ethdev and use that in PMDs.

Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com>
Acked-by: Allain Legacy <allain.leg...@windriver.com>
Acked-by: Wenzhuo Lu <wenzhuo...@intel.com>

Acked-by: Andrew Rybchenko <arybche...@solarflare.com>

---

v3:
* rebased on top of latest next-net, there were updates in ixgbe and
virtio

v2:
* Convert RTE_DEV_TO_PCI(eth_dev->device) to RTE_ETH_DEV_TO_PCI(eth_dev)
---
  drivers/net/ark/ark_ethdev.c            |  4 ++--
  drivers/net/ark/ark_ethdev.h            |  4 ----
  drivers/net/avp/avp_ethdev.c            | 27 ++++++++++------------
  drivers/net/bnx2x/bnx2x_ethdev.c        |  4 ++--
  drivers/net/bnxt/bnxt_ethdev.c          |  6 ++---
  drivers/net/bonding/rte_eth_bond_args.c |  2 +-
  drivers/net/cxgbe/cxgbe_ethdev.c        |  4 ++--
  drivers/net/e1000/e1000_ethdev.h        |  2 --
  drivers/net/e1000/em_ethdev.c           | 15 ++++++-------
  drivers/net/e1000/igb_ethdev.c          | 28 +++++++++++------------
  drivers/net/e1000/igb_pf.c              |  2 +-
  drivers/net/ena/ena_ethdev.c            |  4 ++--
  drivers/net/enic/enic_ethdev.c          |  4 ++--
  drivers/net/fm10k/fm10k_ethdev.c        | 16 ++++++-------
  drivers/net/i40e/i40e_ethdev.c          | 30 ++++++++++++-------------
  drivers/net/i40e/i40e_ethdev.h          |  3 ---
  drivers/net/i40e/i40e_ethdev_vf.c       | 20 ++++++++---------
  drivers/net/ixgbe/ixgbe_ethdev.c        | 40 ++++++++++++++++-----------------
  drivers/net/ixgbe/ixgbe_ethdev.h        |  3 ---
  drivers/net/ixgbe/ixgbe_pf.c            |  2 +-
  drivers/net/ixgbe/rte_pmd_ixgbe.c       | 20 ++++++++---------
  drivers/net/liquidio/lio_ethdev.c       |  2 +-
  drivers/net/mlx4/mlx4.c                 |  2 +-
  drivers/net/mlx5/mlx5_ethdev.c          |  2 +-
  drivers/net/nfp/nfp_net.c               | 16 ++++++-------
  drivers/net/qede/qede_ethdev.c          |  6 ++---
  drivers/net/sfc/sfc.c                   |  4 ++--
  drivers/net/sfc/sfc.h                   |  3 ---
  drivers/net/sfc/sfc_debug.h             |  3 ++-
  drivers/net/sfc/sfc_ethdev.c            |  4 ++--
  drivers/net/sfc/sfc_intr.c              | 10 ++++-----
  drivers/net/sfc/sfc_log.h               |  3 ++-
  drivers/net/sfc/sfc_rx.c                |  2 +-
  drivers/net/sfc/sfc_tx.c                |  2 +-
  drivers/net/szedata2/rte_eth_szedata2.c |  6 ++---
  drivers/net/thunderx/nicvf_ethdev.c     |  6 ++---
  drivers/net/virtio/virtio_ethdev.c      | 11 +++++----
  drivers/net/vmxnet3/vmxnet3_ethdev.c    |  4 ++--
  lib/librte_ether/rte_ethdev.h           |  2 ++
  39 files changed, 156 insertions(+), 172 deletions(-)

diff --git a/drivers/net/ark/ark_ethdev.c b/drivers/net/ark/ark_ethdev.c
index 995c93d..5c45038 100644
--- a/drivers/net/ark/ark_ethdev.c
+++ b/drivers/net/ark/ark_ethdev.c
@@ -278,7 +278,7 @@ eth_ark_dev_init(struct rte_eth_dev *dev)
        ret = check_for_ext(ark);
        if (ret)
                return ret;
-       pci_dev = ARK_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        rte_eth_copy_pci_info(dev, pci_dev);
/* Use dummy function until setup */
@@ -751,7 +751,7 @@ eth_ark_dev_info_get(struct rte_eth_dev *dev,
                                ETH_LINK_SPEED_40G |
                                ETH_LINK_SPEED_50G |
                                ETH_LINK_SPEED_100G);
-       dev_info->pci_dev = ARK_DEV_TO_PCI(dev);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
  }
static int
diff --git a/drivers/net/ark/ark_ethdev.h b/drivers/net/ark/ark_ethdev.h
index 9f8d32f..df5547b 100644
--- a/drivers/net/ark/ark_ethdev.h
+++ b/drivers/net/ark/ark_ethdev.h
@@ -34,8 +34,4 @@
  #ifndef _ARK_ETHDEV_H_
  #define _ARK_ETHDEV_H_
-#define ARK_DEV_TO_PCI(eth_dev) \
-       RTE_DEV_TO_PCI((eth_dev)->device)
-
-
  #endif
diff --git a/drivers/net/avp/avp_ethdev.c b/drivers/net/avp/avp_ethdev.c
index b08dbaa..3554645 100644
--- a/drivers/net/avp/avp_ethdev.c
+++ b/drivers/net/avp/avp_ethdev.c
@@ -112,9 +112,6 @@ static void avp_dev_stats_get(struct rte_eth_dev *dev,
  static void avp_dev_stats_reset(struct rte_eth_dev *dev);
-#define AVP_DEV_TO_PCI(eth_dev) RTE_DEV_TO_PCI((eth_dev)->device)
-
-
  #define AVP_MAX_RX_BURST 64
  #define AVP_MAX_TX_BURST 64
  #define AVP_MAX_MAC_ADDRS 1
@@ -392,7 +389,7 @@ static void *
  avp_dev_translate_address(struct rte_eth_dev *eth_dev,
                          phys_addr_t host_phys_addr)
  {
-       struct rte_pci_device *pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct rte_mem_resource *resource;
        struct rte_avp_memmap_info *info;
        struct rte_avp_memmap *map;
@@ -445,7 +442,7 @@ avp_dev_version_check(uint32_t version)
  static int
  avp_dev_check_regions(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct rte_avp_memmap_info *memmap;
        struct rte_avp_device_info *info;
        struct rte_mem_resource *resource;
@@ -581,7 +578,7 @@ _avp_set_rx_queue_mappings(struct rte_eth_dev *eth_dev, 
uint16_t rx_queue_id)
  static void
  _avp_set_queue_counts(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct avp_dev *avp = AVP_DEV_PRIVATE_TO_HW(eth_dev->data->dev_private);
        struct rte_avp_device_info *host_info;
        void *addr;
@@ -641,7 +638,7 @@ avp_dev_attach(struct rte_eth_dev *eth_dev)
         * re-run the device create utility which will parse the new host info
         * and setup the AVP device queue pointers.
         */
-       ret = avp_dev_create(AVP_DEV_TO_PCI(eth_dev), eth_dev);
+       ret = avp_dev_create(RTE_ETH_DEV_TO_PCI(eth_dev), eth_dev);
        if (ret < 0) {
                PMD_DRV_LOG(ERR, "Failed to re-create AVP device, ret=%d\n",
                            ret);
@@ -695,7 +692,7 @@ static void
  avp_dev_interrupt_handler(void *data)
  {
        struct rte_eth_dev *eth_dev = data;
-       struct rte_pci_device *pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        void *registers = pci_dev->mem_resource[RTE_AVP_PCI_MMIO_BAR].addr;
        uint32_t status, value;
        int ret;
@@ -754,7 +751,7 @@ avp_dev_interrupt_handler(void *data)
  static int
  avp_dev_enable_interrupts(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        void *registers = pci_dev->mem_resource[RTE_AVP_PCI_MMIO_BAR].addr;
        int ret;
@@ -779,7 +776,7 @@ avp_dev_enable_interrupts(struct rte_eth_dev *eth_dev)
  static int
  avp_dev_disable_interrupts(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        void *registers = pci_dev->mem_resource[RTE_AVP_PCI_MMIO_BAR].addr;
        int ret;
@@ -804,7 +801,7 @@ avp_dev_disable_interrupts(struct rte_eth_dev *eth_dev)
  static int
  avp_dev_setup_interrupts(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        int ret;
/* register a callback handler with UIO for interrupt notifications */
@@ -824,7 +821,7 @@ avp_dev_setup_interrupts(struct rte_eth_dev *eth_dev)
  static int
  avp_dev_migration_pending(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        void *registers = pci_dev->mem_resource[RTE_AVP_PCI_MMIO_BAR].addr;
        uint32_t value;
@@ -985,7 +982,7 @@ eth_avp_dev_init(struct rte_eth_dev *eth_dev)
        struct rte_pci_device *pci_dev;
        int ret;
- pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        eth_dev->dev_ops = &avp_eth_dev_ops;
        eth_dev->rx_pkt_burst = &avp_recv_pkts;
        eth_dev->tx_pkt_burst = &avp_xmit_pkts;
@@ -2010,7 +2007,7 @@ avp_dev_tx_queue_release(void *tx_queue)
  static int
  avp_dev_configure(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = AVP_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct avp_dev *avp = AVP_DEV_PRIVATE_TO_HW(eth_dev->data->dev_private);
        struct rte_avp_device_info *host_info;
        struct rte_avp_device_config config;
@@ -2206,7 +2203,7 @@ avp_dev_info_get(struct rte_eth_dev *eth_dev,
        struct avp_dev *avp = AVP_DEV_PRIVATE_TO_HW(eth_dev->data->dev_private);
dev_info->driver_name = "rte_avp_pmd";
-       dev_info->pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        dev_info->max_rx_queues = avp->max_rx_queues;
        dev_info->max_tx_queues = avp->max_tx_queues;
        dev_info->min_rx_bufsize = AVP_MIN_RX_BUFSIZE;
diff --git a/drivers/net/bnx2x/bnx2x_ethdev.c b/drivers/net/bnx2x/bnx2x_ethdev.c
index 90cbb6c..b26e280 100644
--- a/drivers/net/bnx2x/bnx2x_ethdev.c
+++ b/drivers/net/bnx2x/bnx2x_ethdev.c
@@ -442,7 +442,7 @@ static void
  bnx2x_dev_infos_get(struct rte_eth_dev *dev, struct rte_eth_dev_info 
*dev_info)
  {
        struct bnx2x_softc *sc = dev->data->dev_private;
-       dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        dev_info->max_rx_queues  = sc->max_rx_queues;
        dev_info->max_tx_queues  = sc->max_tx_queues;
        dev_info->min_rx_bufsize = BNX2X_MIN_RX_BUF_SIZE;
@@ -531,7 +531,7 @@ bnx2x_common_dev_init(struct rte_eth_dev *eth_dev, int 
is_vf)
        PMD_INIT_FUNC_TRACE();
eth_dev->dev_ops = is_vf ? &bnx2xvf_eth_dev_ops : &bnx2x_eth_dev_ops;
-       pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
rte_eth_copy_pci_info(eth_dev, pci_dev); diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index e659c57..c230394 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -338,7 +338,7 @@ static void bnxt_dev_info_get_op(struct rte_eth_dev 
*eth_dev,
        struct bnxt *bp = (struct bnxt *)eth_dev->data->dev_private;
        uint16_t max_vnics, i, j, vpool, vrxq;
- dev_info->pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
/* MAC Specifics */
        dev_info->max_mac_addrs = MAX_NUM_MAC_ADDR;
@@ -1049,7 +1049,7 @@ static bool bnxt_vf_pciid(uint16_t id)
  static int bnxt_init_board(struct rte_eth_dev *eth_dev)
  {
        struct bnxt *bp = eth_dev->data->dev_private;
-       struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        int rc;
/* enable device (incl. PCI PM wakeup), and bus-mastering */
@@ -1085,7 +1085,7 @@ static int bnxt_dev_uninit(struct rte_eth_dev *eth_dev);
  static int
  bnxt_dev_init(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        static int version_printed;
        struct bnxt *bp;
        int rc;
diff --git a/drivers/net/bonding/rte_eth_bond_args.c 
b/drivers/net/bonding/rte_eth_bond_args.c
index 3155fca..dc468d2 100644
--- a/drivers/net/bonding/rte_eth_bond_args.c
+++ b/drivers/net/bonding/rte_eth_bond_args.c
@@ -69,7 +69,7 @@ find_port_id_by_pci_addr(const struct rte_pci_addr *pci_addr)
                    rte_eth_devices[i].data->kdrv == RTE_KDRV_NONE)
                        continue;
- pci_dev = RTE_DEV_TO_PCI(rte_eth_devices[i].device);
+               pci_dev = RTE_ETH_DEV_TO_PCI(&rte_eth_devices[i]);
                eth_pci_addr = &pci_dev->addr;
if (pci_addr->bus == eth_pci_addr->bus &&
diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c
index 34fed84..2e2f2cf 100644
--- a/drivers/net/cxgbe/cxgbe_ethdev.c
+++ b/drivers/net/cxgbe/cxgbe_ethdev.c
@@ -148,7 +148,7 @@ static void cxgbe_dev_info_get(struct rte_eth_dev *eth_dev,
                .nb_align = 1,
        };
- device_info->pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       device_info->pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
device_info->min_rx_bufsize = CXGBE_MIN_RX_BUFSIZE;
        device_info->max_rx_pktlen = CXGBE_MAX_RX_PKTLEN;
@@ -1008,7 +1008,7 @@ static int eth_cxgbe_dev_init(struct rte_eth_dev *eth_dev)
        if (rte_eal_process_type() != RTE_PROC_PRIMARY)
                return 0;
- pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
snprintf(name, sizeof(name), "cxgbeadapter%d", eth_dev->data->port_id);
        adapter = rte_zmalloc(name, sizeof(*adapter), 0);
diff --git a/drivers/net/e1000/e1000_ethdev.h b/drivers/net/e1000/e1000_ethdev.h
index 8352d0a..4979895 100644
--- a/drivers/net/e1000/e1000_ethdev.h
+++ b/drivers/net/e1000/e1000_ethdev.h
@@ -291,8 +291,6 @@ struct e1000_adapter {
  #define E1000_DEV_PRIVATE_TO_FILTER_INFO(adapter) \
        (&((struct e1000_adapter *)adapter)->filter)
-#define E1000_DEV_TO_PCI(eth_dev) \
-       RTE_DEV_TO_PCI((eth_dev)->device)
  /*
   * RX/TX IGB function prototypes
   */
diff --git a/drivers/net/e1000/em_ethdev.c b/drivers/net/e1000/em_ethdev.c
index 57eb017..132de6e 100644
--- a/drivers/net/e1000/em_ethdev.c
+++ b/drivers/net/e1000/em_ethdev.c
@@ -316,7 +316,7 @@ eth_em_dev_is_ich8(struct e1000_hw *hw)
  static int
  eth_em_dev_init(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct e1000_adapter *adapter =
                E1000_DEV_PRIVATE(eth_dev->data->dev_private);
@@ -390,7 +390,7 @@ eth_em_dev_init(struct rte_eth_dev *eth_dev)
  static int
  eth_em_dev_uninit(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct e1000_adapter *adapter =
                E1000_DEV_PRIVATE(eth_dev->data->dev_private);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
@@ -593,8 +593,7 @@ eth_em_start(struct rte_eth_dev *dev)
                E1000_DEV_PRIVATE(dev->data->dev_private);
        struct e1000_hw *hw =
                E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev =
-               E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        int ret, mask;
        uint32_t intr_vector = 0;
@@ -777,7 +776,7 @@ eth_em_stop(struct rte_eth_dev *dev)
  {
        struct rte_eth_link link;
        struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
em_rxq_intr_disable(hw);
@@ -1041,7 +1040,7 @@ static int
  eth_em_rx_queue_intr_enable(struct rte_eth_dev *dev, __rte_unused uint16_t 
queue_id)
  {
        struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
em_rxq_intr_enable(hw);
@@ -1091,7 +1090,7 @@ eth_em_infos_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *dev_info)
  {
        struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
- dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        dev_info->min_rx_bufsize = 256; /* See BSIZE field of RCTL register. */
        dev_info->max_rx_pktlen = em_get_max_pktlen(hw);
        dev_info->max_mac_addrs = hw->mac.rar_entry_count;
@@ -1598,7 +1597,7 @@ static int
  eth_em_interrupt_action(struct rte_eth_dev *dev,
                        struct rte_intr_handle *intr_handle)
  {
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct e1000_hw *hw =
                E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct e1000_interrupt *intr =
diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c
index 707b8e9..0040170 100644
--- a/drivers/net/e1000/igb_ethdev.c
+++ b/drivers/net/e1000/igb_ethdev.c
@@ -760,7 +760,7 @@ static int
  eth_igb_dev_init(struct rte_eth_dev *eth_dev)
  {
        int error = 0;
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct e1000_hw *hw =
                E1000_DEV_PRIVATE_TO_HW(eth_dev->data->dev_private);
        struct e1000_vfta * shadow_vfta =
@@ -936,7 +936,7 @@ eth_igb_dev_uninit(struct rte_eth_dev *eth_dev)
                return -EPERM;
hw = E1000_DEV_PRIVATE_TO_HW(eth_dev->data->dev_private);
-       pci_dev = E1000_DEV_TO_PCI(eth_dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        intr_handle = &pci_dev->intr_handle;
if (adapter->stopped == 0)
@@ -994,7 +994,7 @@ eth_igbvf_dev_init(struct rte_eth_dev *eth_dev)
                return 0;
        }
- pci_dev = E1000_DEV_TO_PCI(eth_dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        rte_eth_copy_pci_info(eth_dev, pci_dev);
        eth_dev->data->dev_flags |= RTE_ETH_DEV_DETACHABLE;
@@ -1071,7 +1071,7 @@ eth_igbvf_dev_uninit(struct rte_eth_dev *eth_dev)
  {
        struct e1000_adapter *adapter =
                E1000_DEV_PRIVATE(eth_dev->data->dev_private);
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
PMD_INIT_FUNC_TRACE(); @@ -1252,7 +1252,7 @@ eth_igb_start(struct rte_eth_dev *dev)
                E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct e1000_adapter *adapter =
                E1000_DEV_PRIVATE(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        int ret, mask;
        uint32_t intr_vector = 0;
@@ -1461,7 +1461,7 @@ eth_igb_stop(struct rte_eth_dev *dev)
        struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct e1000_filter_info *filter_info =
                E1000_DEV_PRIVATE_TO_FILTER_INFO(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_eth_link link;
        struct e1000_flex_filter *p_flex;
        struct e1000_5tuple_filter *p_5tuple, *p_5tuple_next;
@@ -1566,7 +1566,7 @@ eth_igb_close(struct rte_eth_dev *dev)
        struct e1000_adapter *adapter =
                E1000_DEV_PRIVATE(dev->data->dev_private);
        struct rte_eth_link link;
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
eth_igb_stop(dev);
@@ -2152,7 +2152,7 @@ eth_igb_infos_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *dev_info)
  {
        struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
- dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        dev_info->min_rx_bufsize = 256; /* See BSIZE field of RCTL register. */
        dev_info->max_rx_pktlen  = 0x3FFF; /* See RLPML register. */
        dev_info->max_mac_addrs = hw->mac.rar_entry_count;
@@ -2281,7 +2281,7 @@ eth_igbvf_infos_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *dev_info)
  {
        struct e1000_hw *hw = E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
- dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        dev_info->min_rx_bufsize = 256; /* See BSIZE field of RCTL register. */
        dev_info->max_rx_pktlen  = 0x3FFF; /* See RLPML register. */
        dev_info->max_mac_addrs = hw->mac.rar_entry_count;
@@ -2813,7 +2813,7 @@ eth_igb_interrupt_action(struct rte_eth_dev *dev,
                E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct e1000_interrupt *intr =
                E1000_DEV_PRIVATE_TO_INTR(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        uint32_t tctl, rctl;
        struct rte_eth_link link;
        int ret;
@@ -3229,7 +3229,7 @@ igbvf_dev_start(struct rte_eth_dev *dev)
                E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct e1000_adapter *adapter =
                E1000_DEV_PRIVATE(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        int ret;
        uint32_t intr_vector = 0;
@@ -3285,7 +3285,7 @@ igbvf_dev_start(struct rte_eth_dev *dev)
  static void
  igbvf_dev_stop(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
PMD_INIT_FUNC_TRACE();
@@ -5271,7 +5271,7 @@ eth_igb_rx_queue_intr_enable(struct rte_eth_dev *dev, 
uint16_t queue_id)
  {
        struct e1000_hw *hw =
                E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        uint32_t mask = 1 << queue_id;
        uint32_t regval;
@@ -5344,7 +5344,7 @@ eth_igb_configure_msix_intr(struct rte_eth_dev *dev)
        uint32_t vec = E1000_MISC_VEC_ID;
        uint32_t base = E1000_MISC_VEC_ID;
        uint32_t misc_shift = 0;
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
/* won't configure msix register if no mapping is done
diff --git a/drivers/net/e1000/igb_pf.c b/drivers/net/e1000/igb_pf.c
index 923c78a..6809d30 100644
--- a/drivers/net/e1000/igb_pf.c
+++ b/drivers/net/e1000/igb_pf.c
@@ -57,7 +57,7 @@
  static inline uint16_t
  dev_num_vf(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = E1000_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
return pci_dev->max_vfs;
  }
diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c
index c30c703..e7af041 100644
--- a/drivers/net/ena/ena_ethdev.c
+++ b/drivers/net/ena/ena_ethdev.c
@@ -1289,7 +1289,7 @@ static int eth_ena_dev_init(struct rte_eth_dev *eth_dev)
        if (rte_eal_process_type() != RTE_PROC_PRIMARY)
                return 0;
- pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        adapter->pdev = pci_dev;
PMD_INIT_LOG(INFO, "Initializing %x:%x:%x.%d",
@@ -1451,7 +1451,7 @@ static void ena_infos_get(struct rte_eth_dev *dev,
        ena_dev = &adapter->ena_dev;
        ena_assert_msg(ena_dev != NULL, "Uninitialized device");
- dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
dev_info->speed_capa =
                        ETH_LINK_SPEED_1G   |
diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethdev.c
index 372bae7..8e16a71 100644
--- a/drivers/net/enic/enic_ethdev.c
+++ b/drivers/net/enic/enic_ethdev.c
@@ -455,7 +455,7 @@ static void enicpmd_dev_info_get(struct rte_eth_dev 
*eth_dev,
        struct enic *enic = pmd_priv(eth_dev);
ENICPMD_FUNC_TRACE();
-       device_info->pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       device_info->pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        /* Scattered Rx uses two receive queues per rx queue exposed to dpdk */
        device_info->max_rx_queues = enic->conf_rq_count / 2;
        device_info->max_tx_queues = enic->conf_wq_count;
@@ -619,7 +619,7 @@ static int eth_enicpmd_dev_init(struct rte_eth_dev *eth_dev)
        eth_dev->rx_pkt_burst = &enic_recv_pkts;
        eth_dev->tx_pkt_burst = &enic_xmit_pkts;
- pdev = RTE_DEV_TO_PCI(eth_dev->device);
+       pdev = RTE_ETH_DEV_TO_PCI(eth_dev);
        rte_eth_copy_pci_info(eth_dev, pdev);
        enic->pdev = pdev;
        addr = &pdev->addr;
diff --git a/drivers/net/fm10k/fm10k_ethdev.c b/drivers/net/fm10k/fm10k_ethdev.c
index 1982359..396f02b 100644
--- a/drivers/net/fm10k/fm10k_ethdev.c
+++ b/drivers/net/fm10k/fm10k_ethdev.c
@@ -712,7 +712,7 @@ fm10k_dev_rx_init(struct rte_eth_dev *dev)
  {
        struct fm10k_hw *hw = FM10K_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct fm10k_macvlan_filter_info *macvlan;
-       struct rte_pci_device *pdev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pdev->intr_handle;
        int i, ret;
        struct fm10k_rx_queue *rxq;
@@ -1173,7 +1173,7 @@ static void
  fm10k_dev_stop(struct rte_eth_dev *dev)
  {
        struct fm10k_hw *hw = FM10K_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pdev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pdev->intr_handle;
        int i;
@@ -1393,7 +1393,7 @@ fm10k_dev_infos_get(struct rte_eth_dev *dev,
        struct rte_eth_dev_info *dev_info)
  {
        struct fm10k_hw *hw = FM10K_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pdev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(dev);
PMD_INIT_FUNC_TRACE(); @@ -2345,7 +2345,7 @@ static int
  fm10k_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, uint16_t queue_id)
  {
        struct fm10k_hw *hw = FM10K_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pdev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(dev);
/* Enable ITR */
        if (hw->mac.type == fm10k_mac_pf)
@@ -2362,7 +2362,7 @@ static int
  fm10k_dev_rx_queue_intr_disable(struct rte_eth_dev *dev, uint16_t queue_id)
  {
        struct fm10k_hw *hw = FM10K_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pdev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(dev);
/* Disable ITR */
        if (hw->mac.type == fm10k_mac_pf)
@@ -2378,7 +2378,7 @@ static int
  fm10k_dev_rxq_interrupt_setup(struct rte_eth_dev *dev)
  {
        struct fm10k_hw *hw = FM10K_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pdev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pdev->intr_handle;
        uint32_t intr_vector, vec;
        uint16_t queue_id;
@@ -2882,7 +2882,7 @@ static int
  eth_fm10k_dev_init(struct rte_eth_dev *dev)
  {
        struct fm10k_hw *hw = FM10K_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pdev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pdev->intr_handle;
        int diag, i;
        struct fm10k_macvlan_filter_info *macvlan;
@@ -3069,7 +3069,7 @@ static int
  eth_fm10k_dev_uninit(struct rte_eth_dev *dev)
  {
        struct fm10k_hw *hw = FM10K_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pdev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pdev->intr_handle;
        PMD_INIT_FUNC_TRACE();
diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 4c49673..d57a7af 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -879,7 +879,7 @@ is_floating_veb_supported(struct rte_devargs *devargs)
  static void
  config_floating_veb(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct i40e_pf *pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private);
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
@@ -1061,7 +1061,7 @@ eth_i40e_dev_init(struct rte_eth_dev *dev)
                return 0;
        }
        i40e_set_default_ptype_table(dev);
-       pci_dev = I40E_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        intr_handle = &pci_dev->intr_handle;
rte_eth_copy_pci_info(dev, pci_dev);
@@ -1414,7 +1414,7 @@ eth_i40e_dev_uninit(struct rte_eth_dev *dev)
pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private);
        hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       pci_dev = I40E_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        intr_handle = &pci_dev->intr_handle;
if (hw->adapter_stopped == 0)
@@ -1547,7 +1547,7 @@ void
  i40e_vsi_queues_unbind_intr(struct i40e_vsi *vsi)
  {
        struct rte_eth_dev *dev = vsi->adapter->eth_dev;
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct i40e_hw *hw = I40E_VSI_TO_HW(vsi);
        uint16_t msix_vect = vsi->msix_intr;
@@ -1661,7 +1661,7 @@ void
  i40e_vsi_queues_bind_intr(struct i40e_vsi *vsi)
  {
        struct rte_eth_dev *dev = vsi->adapter->eth_dev;
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct i40e_hw *hw = I40E_VSI_TO_HW(vsi);
        uint16_t msix_vect = vsi->msix_intr;
@@ -1733,7 +1733,7 @@ static void
  i40e_vsi_enable_queues_intr(struct i40e_vsi *vsi)
  {
        struct rte_eth_dev *dev = vsi->adapter->eth_dev;
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct i40e_hw *hw = I40E_VSI_TO_HW(vsi);
        uint16_t interval = i40e_calc_itr_interval(\
@@ -1765,7 +1765,7 @@ static void
  i40e_vsi_disable_queues_intr(struct i40e_vsi *vsi)
  {
        struct rte_eth_dev *dev = vsi->adapter->eth_dev;
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct i40e_hw *hw = I40E_VSI_TO_HW(vsi);
        uint16_t msix_intr, i;
@@ -1892,7 +1892,7 @@ i40e_dev_start(struct rte_eth_dev *dev)
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct i40e_vsi *main_vsi = pf->main_vsi;
        int ret, i;
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        uint32_t intr_vector = 0;
        struct i40e_vsi *vsi;
@@ -2040,7 +2040,7 @@ i40e_dev_stop(struct rte_eth_dev *dev)
        struct i40e_pf *pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private);
        struct i40e_vsi *main_vsi = pf->main_vsi;
        struct i40e_mirror_rule *p_mirror;
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        int i;
@@ -2092,7 +2092,7 @@ i40e_dev_close(struct rte_eth_dev *dev)
  {
        struct i40e_pf *pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private);
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        uint32_t reg;
        int i;
@@ -2849,7 +2849,7 @@ i40e_dev_info_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *dev_info)
        struct i40e_pf *pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private);
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct i40e_vsi *vsi = pf->main_vsi;
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
dev_info->pci_dev = pci_dev;
        dev_info->max_rx_queues = vsi->nb_qps;
@@ -3768,7 +3768,7 @@ i40e_pf_parameter_init(struct rte_eth_dev *dev)
  {
        struct i40e_pf *pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private);
        struct i40e_hw *hw = I40E_PF_TO_HW(pf);
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        uint16_t qp_count = 0, vsi_count = 0;
if (pci_dev->max_vfs && !hw->func_caps.sr_iov_1_1) {
@@ -8988,7 +8988,7 @@ i40e_dev_filter_ctrl(struct rte_eth_dev *dev,
  static void
  i40e_enable_extended_tag(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        uint32_t buf = 0;
        int ret;
@@ -10436,7 +10436,7 @@ i40e_dev_get_dcb_info(struct rte_eth_dev *dev,
  static int
  i40e_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, uint16_t queue_id)
  {
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        uint16_t interval =
@@ -10470,7 +10470,7 @@ i40e_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, 
uint16_t queue_id)
  static int
  i40e_dev_rx_queue_intr_disable(struct rte_eth_dev *dev, uint16_t queue_id)
  {
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        uint16_t msix_intr;
diff --git a/drivers/net/i40e/i40e_ethdev.h b/drivers/net/i40e/i40e_ethdev.h
index 677c214..b08902d 100644
--- a/drivers/net/i40e/i40e_ethdev.h
+++ b/drivers/net/i40e/i40e_ethdev.h
@@ -892,9 +892,6 @@ int i40e_add_macvlan_filters(struct i40e_vsi *vsi,
                             int total);
  bool is_i40e_supported(struct rte_eth_dev *dev);
-#define I40E_DEV_TO_PCI(eth_dev) \
-       RTE_DEV_TO_PCI((eth_dev)->device)
-
  /* I40E_DEV_PRIVATE_TO */
  #define I40E_DEV_PRIVATE_TO_PF(adapter) \
        (&((struct i40e_adapter *)adapter)->pf)
diff --git a/drivers/net/i40e/i40e_ethdev_vf.c 
b/drivers/net/i40e/i40e_ethdev_vf.c
index a33ab14..124cf63 100644
--- a/drivers/net/i40e/i40e_ethdev_vf.c
+++ b/drivers/net/i40e/i40e_ethdev_vf.c
@@ -727,7 +727,7 @@ i40evf_config_irq_map(struct rte_eth_dev *dev)
        uint8_t cmd_buffer[sizeof(struct i40e_virtchnl_irq_map_info) + \
                sizeof(struct i40e_virtchnl_vector_map)];
        struct i40e_virtchnl_irq_map_info *map_info;
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        uint32_t vector_id;
        int i, err;
@@ -1459,7 +1459,7 @@ i40evf_dev_init(struct rte_eth_dev *eth_dev)
  {
        struct i40e_hw *hw
                = I40E_DEV_PRIVATE_TO_HW(eth_dev->data->dev_private);
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
PMD_INIT_FUNC_TRACE(); @@ -1883,7 +1883,7 @@ i40evf_enable_queues_intr(struct rte_eth_dev *dev)
  {
        struct i40e_vf *vf = I40EVF_DEV_PRIVATE_TO_VF(dev->data->dev_private);
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
if (!rte_intr_allow_others(intr_handle)) {
@@ -1916,7 +1916,7 @@ i40evf_disable_queues_intr(struct rte_eth_dev *dev)
  {
        struct i40e_vf *vf = I40EVF_DEV_PRIVATE_TO_VF(dev->data->dev_private);
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
if (!rte_intr_allow_others(intr_handle)) {
@@ -1943,7 +1943,7 @@ i40evf_disable_queues_intr(struct rte_eth_dev *dev)
  static int
  i40evf_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, uint16_t queue_id)
  {
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        uint16_t interval =
@@ -1978,7 +1978,7 @@ i40evf_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, 
uint16_t queue_id)
  static int
  i40evf_dev_rx_queue_intr_disable(struct rte_eth_dev *dev, uint16_t queue_id)
  {
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        uint16_t msix_intr;
@@ -2063,7 +2063,7 @@ i40evf_dev_start(struct rte_eth_dev *dev)
  {
        struct i40e_vf *vf = I40EVF_DEV_PRIVATE_TO_VF(dev->data->dev_private);
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        uint32_t intr_vector = 0;
@@ -2129,7 +2129,7 @@ i40evf_dev_start(struct rte_eth_dev *dev)
  static void
  i40evf_dev_stop(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
PMD_INIT_FUNC_TRACE();
@@ -2260,7 +2260,7 @@ i40evf_dev_info_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *dev_info)
        struct i40e_vf *vf = I40EVF_DEV_PRIVATE_TO_VF(dev->data->dev_private);
memset(dev_info, 0, sizeof(*dev_info));
-       dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        dev_info->max_rx_queues = vf->vsi_res->num_queue_pairs;
        dev_info->max_tx_queues = vf->vsi_res->num_queue_pairs;
        dev_info->min_rx_bufsize = I40E_BUF_SIZE_MIN;
@@ -2329,7 +2329,7 @@ static void
  i40evf_dev_close(struct rte_eth_dev *dev)
  {
        struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = I40E_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
i40evf_dev_stop(dev);
diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
index 269c8a5..e674586 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -1131,7 +1131,7 @@ ixgbe_swfw_lock_reset(struct ixgbe_hw *hw)
  static int
  eth_ixgbe_dev_init(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct ixgbe_hw *hw =
                IXGBE_DEV_PRIVATE_TO_HW(eth_dev->data->dev_private);
@@ -1365,7 +1365,7 @@ eth_ixgbe_dev_init(struct rte_eth_dev *eth_dev)
  static int
  eth_ixgbe_dev_uninit(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct ixgbe_hw *hw;
@@ -1598,7 +1598,7 @@ eth_ixgbevf_dev_init(struct rte_eth_dev *eth_dev)
  {
        int diag;
        uint32_t tc, tcs;
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct ixgbe_hw *hw =
                IXGBE_DEV_PRIVATE_TO_HW(eth_dev->data->dev_private);
@@ -1747,7 +1747,7 @@ eth_ixgbevf_dev_init(struct rte_eth_dev *eth_dev)
  static int
  eth_ixgbevf_dev_uninit(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct ixgbe_hw *hw;
@@ -2176,7 +2176,7 @@ ixgbe_vmdq_vlan_hw_filter_enable(struct rte_eth_dev *dev)
  static int
  ixgbe_check_vf_rss_rxq_num(struct rte_eth_dev *dev, uint16_t nb_rx_q)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
switch (nb_rx_q) {
        case 1:
@@ -2425,7 +2425,7 @@ ixgbe_set_vf_rate_limit(struct rte_eth_dev *dev, uint16_t 
vf,
        uint16_t total_rate = 0;
        struct rte_pci_device *pci_dev;
- pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        rte_eth_link_get_nowait(dev->data->port_id, &link);
if (vf >= pci_dev->max_vfs)
@@ -2496,7 +2496,7 @@ ixgbe_dev_start(struct rte_eth_dev *dev)
                IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct ixgbe_vf_info *vfinfo =
                *IXGBE_DEV_PRIVATE_TO_P_VFDATA(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        uint32_t intr_vector = 0;
        int err, link_up = 0, negotiate = 0;
@@ -2714,7 +2714,7 @@ ixgbe_dev_stop(struct rte_eth_dev *dev)
                IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct ixgbe_vf_info *vfinfo =
                *IXGBE_DEV_PRIVATE_TO_P_VFDATA(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        int vf;
@@ -3582,7 +3582,7 @@ ixgbe_fw_version_get(struct rte_eth_dev *dev, char *fw_version, size_t fw_size)
  static void
  ixgbe_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct ixgbe_hw *hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        struct rte_eth_conf *dev_conf = &dev->data->dev_conf;
@@ -3724,7 +3724,7 @@ static void
  ixgbevf_dev_info_get(struct rte_eth_dev *dev,
                     struct rte_eth_dev_info *dev_info)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct ixgbe_hw *hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
dev_info->pci_dev = pci_dev;
@@ -4035,7 +4035,7 @@ ixgbe_dev_interrupt_get_status(struct rte_eth_dev *dev)
  static void
  ixgbe_dev_link_status_print(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_eth_link link;
memset(&link, 0, sizeof(link));
@@ -4143,7 +4143,7 @@ static void
  ixgbe_dev_interrupt_delayed_handler(void *param)
  {
        struct rte_eth_dev *dev = (struct rte_eth_dev *)param;
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct ixgbe_interrupt *intr =
                IXGBE_DEV_PRIVATE_TO_INTR(dev->data->dev_private);
@@ -4660,7 +4660,7 @@ ixgbe_remove_rar(struct rte_eth_dev *dev, uint32_t index)
  static void
  ixgbe_set_default_mac_addr(struct rte_eth_dev *dev, struct ether_addr *addr)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
ixgbe_remove_rar(dev, 0); @@ -4799,7 +4799,7 @@ ixgbevf_dev_start(struct rte_eth_dev *dev)
        struct ixgbe_hw *hw =
                IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        uint32_t intr_vector = 0;
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
int err, mask = 0;
@@ -4863,7 +4863,7 @@ static void
  ixgbevf_dev_stop(struct rte_eth_dev *dev)
  {
        struct ixgbe_hw *hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
PMD_INIT_FUNC_TRACE();
@@ -5336,7 +5336,7 @@ ixgbe_mirror_rule_reset(struct rte_eth_dev *dev, uint8_t 
rule_id)
  static int
  ixgbevf_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, uint16_t queue_id)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        uint32_t mask;
        struct ixgbe_hw *hw =
@@ -5370,7 +5370,7 @@ ixgbevf_dev_rx_queue_intr_disable(struct rte_eth_dev 
*dev, uint16_t queue_id)
  static int
  ixgbe_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, uint16_t queue_id)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        uint32_t mask;
        struct ixgbe_hw *hw =
@@ -5495,7 +5495,7 @@ ixgbe_set_ivar_map(struct ixgbe_hw *hw, int8_t direction,
  static void
  ixgbevf_configure_msix(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct ixgbe_hw *hw =
                IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
@@ -5529,7 +5529,7 @@ ixgbevf_configure_msix(struct rte_eth_dev *dev)
  static void
  ixgbe_configure_msix(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        struct ixgbe_hw *hw =
                IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
@@ -7531,7 +7531,7 @@ ixgbe_e_tag_insertion_en_dis(struct rte_eth_dev *dev,
                             struct rte_eth_l2_tunnel_conf *l2_tunnel,
                             bool en)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        int ret = 0;
        uint32_t vmtir, vmvir;
        struct ixgbe_hw *hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
diff --git a/drivers/net/ixgbe/ixgbe_ethdev.h b/drivers/net/ixgbe/ixgbe_ethdev.h
index b576a6f..32c0b38 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.h
+++ b/drivers/net/ixgbe/ixgbe_ethdev.h
@@ -464,9 +464,6 @@ struct ixgbe_adapter {
        struct rte_timecounter      tx_tstamp_tc;
  };
-#define IXGBE_DEV_TO_PCI(eth_dev) \
-       RTE_DEV_TO_PCI((eth_dev)->device)
-
  #define IXGBE_DEV_PRIVATE_TO_HW(adapter)\
        (&((struct ixgbe_adapter *)adapter)->hw)
diff --git a/drivers/net/ixgbe/ixgbe_pf.c b/drivers/net/ixgbe/ixgbe_pf.c
index 6f30c42..a56b270 100644
--- a/drivers/net/ixgbe/ixgbe_pf.c
+++ b/drivers/net/ixgbe/ixgbe_pf.c
@@ -61,7 +61,7 @@
  static inline uint16_t
  dev_num_vf(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = IXGBE_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
return pci_dev->max_vfs;
  }
diff --git a/drivers/net/ixgbe/rte_pmd_ixgbe.c 
b/drivers/net/ixgbe/rte_pmd_ixgbe.c
index e8fc9a6..d6eae6c 100644
--- a/drivers/net/ixgbe/rte_pmd_ixgbe.c
+++ b/drivers/net/ixgbe/rte_pmd_ixgbe.c
@@ -51,7 +51,7 @@ rte_pmd_ixgbe_set_vf_mac_addr(uint8_t port, uint16_t vf,
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (!is_ixgbe_supported(dev))
                return -ENOTSUP;
@@ -84,7 +84,7 @@ rte_pmd_ixgbe_ping_vf(uint8_t port, uint16_t vf)
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (!is_ixgbe_supported(dev))
                return -ENOTSUP;
@@ -115,7 +115,7 @@ rte_pmd_ixgbe_set_vf_vlan_anti_spoof(uint8_t port, uint16_t 
vf, uint8_t on)
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (!is_ixgbe_supported(dev))
                return -ENOTSUP;
@@ -145,7 +145,7 @@ rte_pmd_ixgbe_set_vf_mac_anti_spoof(uint8_t port, uint16_t 
vf, uint8_t on)
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (!is_ixgbe_supported(dev))
                return -ENOTSUP;
@@ -174,7 +174,7 @@ rte_pmd_ixgbe_set_vf_vlan_insert(uint8_t port, uint16_t vf, 
uint16_t vlan_id)
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (!is_ixgbe_supported(dev))
                return -ENOTSUP;
@@ -270,7 +270,7 @@ rte_pmd_ixgbe_set_vf_split_drop_en(uint8_t port, uint16_t 
vf, uint8_t on)
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (!is_ixgbe_supported(dev))
                return -ENOTSUP;
@@ -306,7 +306,7 @@ rte_pmd_ixgbe_set_vf_vlan_stripq(uint8_t port, uint16_t vf, 
uint8_t on)
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        hw = IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
if (!is_ixgbe_supported(dev))
@@ -354,7 +354,7 @@ rte_pmd_ixgbe_set_vf_rxmode(uint8_t port, uint16_t vf,
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (!is_ixgbe_supported(dev))
                return -ENOTSUP;
@@ -401,7 +401,7 @@ rte_pmd_ixgbe_set_vf_rx(uint8_t port, uint16_t vf, uint8_t 
on)
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (!is_ixgbe_supported(dev))
                return -ENOTSUP;
@@ -452,7 +452,7 @@ rte_pmd_ixgbe_set_vf_tx(uint8_t port, uint16_t vf, uint8_t 
on)
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV);
dev = &rte_eth_devices[port];
-       pci_dev = IXGBE_DEV_TO_PCI(dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (!is_ixgbe_supported(dev))
                return -ENOTSUP;
diff --git a/drivers/net/liquidio/lio_ethdev.c 
b/drivers/net/liquidio/lio_ethdev.c
index 436d25b..132c837 100644
--- a/drivers/net/liquidio/lio_ethdev.c
+++ b/drivers/net/liquidio/lio_ethdev.c
@@ -1958,7 +1958,7 @@ lio_eth_dev_uninit(struct rte_eth_dev *eth_dev)
  static int
  lio_eth_dev_init(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pdev = RTE_DEV_TO_PCI(eth_dev->device);
+       struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct lio_device *lio_dev = LIO_DEV(eth_dev);
PMD_INIT_FUNC_TRACE();
diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c
index ec4419a..ec70f59 100644
--- a/drivers/net/mlx4/mlx4.c
+++ b/drivers/net/mlx4/mlx4.c
@@ -4300,7 +4300,7 @@ mlx4_dev_infos_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *info)
        unsigned int max;
        char ifname[IF_NAMESIZE];
- info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (priv == NULL)
                return;
diff --git a/drivers/net/mlx5/mlx5_ethdev.c b/drivers/net/mlx5/mlx5_ethdev.c
index 3fd22cb..eadf452 100644
--- a/drivers/net/mlx5/mlx5_ethdev.c
+++ b/drivers/net/mlx5/mlx5_ethdev.c
@@ -661,7 +661,7 @@ mlx5_dev_infos_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *info)
        unsigned int max;
        char ifname[IF_NAMESIZE];
- info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
priv_lock(priv);
        /* FIXME: we should ask the device for these values. */
diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c
index 5c5cba1..7e286e9 100644
--- a/drivers/net/nfp/nfp_net.c
+++ b/drivers/net/nfp/nfp_net.c
@@ -647,7 +647,7 @@ nfp_configure_rx_interrupt(struct rte_eth_dev *dev,
  static int
  nfp_net_start(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
        uint32_t new_ctrl, update = 0;
        struct nfp_net_hw *hw;
@@ -772,7 +772,7 @@ nfp_net_close(struct rte_eth_dev *dev)
        PMD_INIT_LOG(DEBUG, "Close");
hw = NFP_NET_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       pci_dev = RTE_DEV_TO_PCI(dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
/*
         * We assume that the DPDK application is stopping all the
@@ -1081,7 +1081,7 @@ nfp_net_infos_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *dev_info)
hw = NFP_NET_DEV_PRIVATE_TO_HW(dev->data->dev_private); - dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        dev_info->max_rx_queues = (uint16_t)hw->max_rx_queues;
        dev_info->max_tx_queues = (uint16_t)hw->max_tx_queues;
        dev_info->min_rx_bufsize = ETHER_MIN_MTU;
@@ -1201,7 +1201,7 @@ nfp_rx_queue_intr_enable(struct rte_eth_dev *dev, 
uint16_t queue_id)
        int base = 0;
hw = NFP_NET_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       pci_dev = RTE_DEV_TO_PCI(dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (pci_dev->intr_handle.type != RTE_INTR_HANDLE_UIO)
                base = 1;
@@ -1221,7 +1221,7 @@ nfp_rx_queue_intr_disable(struct rte_eth_dev *dev, 
uint16_t queue_id)
        int base = 0;
hw = NFP_NET_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       pci_dev = RTE_DEV_TO_PCI(dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (pci_dev->intr_handle.type != RTE_INTR_HANDLE_UIO)
                base = 1;
@@ -1235,7 +1235,7 @@ nfp_rx_queue_intr_disable(struct rte_eth_dev *dev, 
uint16_t queue_id)
  static void
  nfp_net_dev_link_status_print(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_eth_link link;
memset(&link, 0, sizeof(link));
@@ -1269,7 +1269,7 @@ nfp_net_irq_unmask(struct rte_eth_dev *dev)
        struct rte_pci_device *pci_dev;
hw = NFP_NET_DEV_PRIVATE_TO_HW(dev->data->dev_private);
-       pci_dev = RTE_DEV_TO_PCI(dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(dev);
if (hw->ctrl & NFP_NET_CFG_CTRL_MSIXAUTO) {
                /* If MSI-X auto-masking is used, clear the entry */
@@ -2450,7 +2450,7 @@ nfp_net_init(struct rte_eth_dev *eth_dev)
        if (rte_eal_process_type() != RTE_PROC_PRIMARY)
                return 0;
- pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        rte_eth_copy_pci_info(eth_dev, pci_dev);
        eth_dev->data->dev_flags |= RTE_ETH_DEV_DETACHABLE;
diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
index 51624c7..49742ac 100644
--- a/drivers/net/qede/qede_ethdev.c
+++ b/drivers/net/qede/qede_ethdev.c
@@ -946,7 +946,7 @@ qede_dev_info_get(struct rte_eth_dev *eth_dev,
PMD_INIT_FUNC_TRACE(edev); - dev_info->pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        dev_info->min_rx_bufsize = (uint32_t)QEDE_MIN_RX_BUFF_SIZE;
        dev_info->max_rx_pktlen = (uint32_t)ETH_TX_MAX_NON_LSO_PKT_LEN;
        dev_info->rx_desc_lim = qede_rx_desc_lim;
@@ -1103,7 +1103,7 @@ static void qede_poll_sp_sb_cb(void *param)
static void qede_dev_close(struct rte_eth_dev *eth_dev)
  {
-       struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        struct qede_dev *qdev = QEDE_INIT_QDEV(eth_dev);
        struct ecore_dev *edev = QEDE_INIT_EDEV(qdev);
        int rc;
@@ -2163,7 +2163,7 @@ static int qede_common_dev_init(struct rte_eth_dev 
*eth_dev, bool is_vf)
        /* Extract key data structures */
        adapter = eth_dev->data->dev_private;
        edev = &adapter->edev;
-       pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        pci_addr = pci_dev->addr;
PMD_INIT_FUNC_TRACE(edev);
diff --git a/drivers/net/sfc/sfc.c b/drivers/net/sfc/sfc.c
index 4e241b2..6cecfc0 100644
--- a/drivers/net/sfc/sfc.c
+++ b/drivers/net/sfc/sfc.c
@@ -465,7 +465,7 @@ static int
  sfc_mem_bar_init(struct sfc_adapter *sa)
  {
        struct rte_eth_dev *eth_dev = sa->eth_dev;
-       struct rte_pci_device *pci_dev = SFC_DEV_TO_PCI(eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        efsys_bar_t *ebp = &sa->mem_bar;
        unsigned int i;
        struct rte_mem_resource *res;
@@ -666,7 +666,7 @@ sfc_detach(struct sfc_adapter *sa)
  int
  sfc_probe(struct sfc_adapter *sa)
  {
-       struct rte_pci_device *pci_dev = SFC_DEV_TO_PCI(sa->eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(sa->eth_dev);
        efx_nic_t *enp;
        int rc;
diff --git a/drivers/net/sfc/sfc.h b/drivers/net/sfc/sfc.h
index fad0ce0..7927678 100644
--- a/drivers/net/sfc/sfc.h
+++ b/drivers/net/sfc/sfc.h
@@ -46,9 +46,6 @@
  extern "C" {
  #endif
-#define SFC_DEV_TO_PCI(eth_dev) \
-       RTE_DEV_TO_PCI((eth_dev)->device)
-
  #if EFSYS_OPT_RX_SCALE
  /** RSS key length (bytes) */
  #define SFC_RSS_KEY_SIZE      40
diff --git a/drivers/net/sfc/sfc_debug.h b/drivers/net/sfc/sfc_debug.h
index c0b4867..f4fe044 100644
--- a/drivers/net/sfc/sfc_debug.h
+++ b/drivers/net/sfc/sfc_debug.h
@@ -48,7 +48,8 @@
  #define sfc_panic(sa, fmt, args...) \
        do {                                                            \
                const struct rte_eth_dev *_dev = (sa)->eth_dev;              \
-               const struct rte_pci_device *_pci_dev = SFC_DEV_TO_PCI(_dev); \
+               const struct rte_pci_device *_pci_dev =                 \
+                       RTE_ETH_DEV_TO_PCI(_dev);                       \
                                                                        \
                rte_panic("sfc " PCI_PRI_FMT " #%" PRIu8 ": " fmt "\n", \
                          _pci_dev->addr.domain, _pci_dev->addr.bus,      \
diff --git a/drivers/net/sfc/sfc_ethdev.c b/drivers/net/sfc/sfc_ethdev.c
index 4c9335f..d5583ec 100644
--- a/drivers/net/sfc/sfc_ethdev.c
+++ b/drivers/net/sfc/sfc_ethdev.c
@@ -107,7 +107,7 @@ sfc_dev_infos_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *dev_info)
sfc_log_init(sa, "entry"); - dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        dev_info->max_rx_pktlen = EFX_MAC_PDU_MAX;
/* Autonegotiation may be disabled */
@@ -1486,7 +1486,7 @@ static int
  sfc_eth_dev_init(struct rte_eth_dev *dev)
  {
        struct sfc_adapter *sa = dev->data->dev_private;
-       struct rte_pci_device *pci_dev = SFC_DEV_TO_PCI(dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        int rc;
        const efx_nic_cfg_t *encp;
        const struct ether_addr *from;
diff --git a/drivers/net/sfc/sfc_intr.c b/drivers/net/sfc/sfc_intr.c
index 7eb4b86..dfa453a 100644
--- a/drivers/net/sfc/sfc_intr.c
+++ b/drivers/net/sfc/sfc_intr.c
@@ -77,7 +77,7 @@ sfc_intr_line_handler(void *cb_arg)
        boolean_t fatal;
        uint32_t qmask;
        unsigned int lsc_seq = sa->port.lsc_seq;
-       struct rte_pci_device *pci_dev = SFC_DEV_TO_PCI(sa->eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(sa->eth_dev);
sfc_log_init(sa, "entry"); @@ -122,7 +122,7 @@ sfc_intr_message_handler(void *cb_arg)
        efx_nic_t *enp = sa->nic;
        boolean_t fatal;
        unsigned int lsc_seq = sa->port.lsc_seq;
-       struct rte_pci_device *pci_dev = SFC_DEV_TO_PCI(sa->eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(sa->eth_dev);
sfc_log_init(sa, "entry"); @@ -177,7 +177,7 @@ sfc_intr_start(struct sfc_adapter *sa)
        if (rc != 0)
                goto fail_intr_init;
- pci_dev = SFC_DEV_TO_PCI(sa->eth_dev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(sa->eth_dev);
        intr_handle = &pci_dev->intr_handle;
if (intr->handler != NULL) {
@@ -232,7 +232,7 @@ void
  sfc_intr_stop(struct sfc_adapter *sa)
  {
        struct sfc_intr *intr = &sa->intr;
-       struct rte_pci_device *pci_dev = SFC_DEV_TO_PCI(sa->eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(sa->eth_dev);
sfc_log_init(sa, "entry"); @@ -306,7 +306,7 @@ int
  sfc_intr_attach(struct sfc_adapter *sa)
  {
        struct sfc_intr *intr = &sa->intr;
-       struct rte_pci_device *pci_dev = SFC_DEV_TO_PCI(sa->eth_dev);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(sa->eth_dev);
sfc_log_init(sa, "entry"); diff --git a/drivers/net/sfc/sfc_log.h b/drivers/net/sfc/sfc_log.h
index 8a5e230..d0f8921 100644
--- a/drivers/net/sfc/sfc_log.h
+++ b/drivers/net/sfc/sfc_log.h
@@ -36,7 +36,8 @@
  #define SFC_LOG(sa, level, ...) \
        do {                                                            \
                const struct rte_eth_dev *_dev = (sa)->eth_dev;              \
-               const struct rte_pci_device *_pci_dev = SFC_DEV_TO_PCI(_dev); \
+               const struct rte_pci_device *_pci_dev =                 \
+                       RTE_ETH_DEV_TO_PCI(_dev);                       \
                                                                        \
                RTE_LOG(level, PMD,                                     \
                        RTE_FMT("sfc_efx " PCI_PRI_FMT " #%" PRIu8 ": "   \
diff --git a/drivers/net/sfc/sfc_rx.c b/drivers/net/sfc/sfc_rx.c
index 2ecd6f2..122b657 100644
--- a/drivers/net/sfc/sfc_rx.c
+++ b/drivers/net/sfc/sfc_rx.c
@@ -942,7 +942,7 @@ sfc_rx_qinit(struct sfc_adapter *sa, unsigned int sw_index,
        info.mem_bar = sa->mem_bar.esb_base;
rc = sa->dp_rx->qcreate(sa->eth_dev->data->port_id, sw_index,
-                               &SFC_DEV_TO_PCI(sa->eth_dev)->addr,
+                               &RTE_ETH_DEV_TO_PCI(sa->eth_dev)->addr,
                                socket_id, &info, &rxq->dp);
        if (rc != 0)
                goto fail_dp_rx_qcreate;
diff --git a/drivers/net/sfc/sfc_tx.c b/drivers/net/sfc/sfc_tx.c
index b8581d1..d75fb84 100644
--- a/drivers/net/sfc/sfc_tx.c
+++ b/drivers/net/sfc/sfc_tx.c
@@ -185,7 +185,7 @@ sfc_tx_qinit(struct sfc_adapter *sa, unsigned int sw_index,
        info.mem_bar = sa->mem_bar.esb_base;
rc = sa->dp_tx->qcreate(sa->eth_dev->data->port_id, sw_index,
-                               &SFC_DEV_TO_PCI(sa->eth_dev)->addr,
+                               &RTE_ETH_DEV_TO_PCI(sa->eth_dev)->addr,
                                socket_id, &info, &txq->dp);
        if (rc != 0)
                goto fail_dp_tx_qinit;
diff --git a/drivers/net/szedata2/rte_eth_szedata2.c 
b/drivers/net/szedata2/rte_eth_szedata2.c
index 54212b7..c70e9f3 100644
--- a/drivers/net/szedata2/rte_eth_szedata2.c
+++ b/drivers/net/szedata2/rte_eth_szedata2.c
@@ -1032,7 +1032,7 @@ eth_dev_info(struct rte_eth_dev *dev,
                struct rte_eth_dev_info *dev_info)
  {
        struct pmd_internals *internals = dev->data->dev_private;
-       dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        dev_info->if_index = 0;
        dev_info->max_mac_addrs = 1;
        dev_info->max_rx_pktlen = (uint32_t)-1;
@@ -1431,7 +1431,7 @@ rte_szedata2_eth_dev_init(struct rte_eth_dev *dev)
        struct szedata *szedata_temp;
        int ret;
        uint32_t szedata2_index;
-       struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_pci_addr *pci_addr = &pci_dev->addr;
        struct rte_mem_resource *pci_rsc =
                &pci_dev->mem_resource[PCI_RESOURCE_NUMBER];
@@ -1554,7 +1554,7 @@ rte_szedata2_eth_dev_init(struct rte_eth_dev *dev)
  static int
  rte_szedata2_eth_dev_uninit(struct rte_eth_dev *dev)
  {
-       struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
        struct rte_pci_addr *pci_addr = &pci_dev->addr;
rte_free(dev->data->mac_addrs);
diff --git a/drivers/net/thunderx/nicvf_ethdev.c 
b/drivers/net/thunderx/nicvf_ethdev.c
index ddcfaba..796701b 100644
--- a/drivers/net/thunderx/nicvf_ethdev.c
+++ b/drivers/net/thunderx/nicvf_ethdev.c
@@ -1373,11 +1373,11 @@ static void
  nicvf_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
  {
        struct nicvf *nic = nicvf_pmd_priv(dev);
-       struct rte_pci_device *pci_dev = RTE_DEV_TO_PCI(dev->device);
+       struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
PMD_INIT_FUNC_TRACE(); - dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
dev_info->min_rx_bufsize = ETHER_MIN_MTU;
        dev_info->max_rx_pktlen = NIC_HW_MAX_FRS;
@@ -2024,7 +2024,7 @@ nicvf_eth_dev_init(struct rte_eth_dev *eth_dev)
                }
        }
- pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
        rte_eth_copy_pci_info(eth_dev, pci_dev);
nic->device_id = pci_dev->id.device_id;
diff --git a/drivers/net/virtio/virtio_ethdev.c 
b/drivers/net/virtio/virtio_ethdev.c
index 763fef5..e58b475 100644
--- a/drivers/net/virtio/virtio_ethdev.c
+++ b/drivers/net/virtio/virtio_ethdev.c
@@ -1355,7 +1355,7 @@ virtio_init_device(struct rte_eth_dev *eth_dev, uint64_t 
req_features)
                return -1;
if (!hw->virtio_user_dev) {
-               pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+               pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
                rte_eth_copy_pci_info(eth_dev, pci_dev);
        }
@@ -1537,8 +1537,7 @@ eth_virtio_dev_init(struct rte_eth_dev *eth_dev) if (rte_eal_process_type() == RTE_PROC_SECONDARY) {
                if (!hw->virtio_user_dev) {
-                       ret = virtio_remap_pci(RTE_DEV_TO_PCI(eth_dev->device),
-                                              hw);
+                       ret = virtio_remap_pci(RTE_ETH_DEV_TO_PCI(eth_dev), hw);
                        if (ret)
                                return ret;
                }
@@ -1567,7 +1566,7 @@ eth_virtio_dev_init(struct rte_eth_dev *eth_dev)
         * virtio_user_eth_dev_alloc() before eth_virtio_dev_init() is called.
         */
        if (!hw->virtio_user_dev) {
-               ret = vtpci_init(RTE_DEV_TO_PCI(eth_dev->device), hw);
+               ret = vtpci_init(RTE_ETH_DEV_TO_PCI(eth_dev), hw);
                if (ret)
                        return ret;
        }
@@ -1609,7 +1608,7 @@ eth_virtio_dev_uninit(struct rte_eth_dev *eth_dev)
                                                virtio_interrupt_handler,
                                                eth_dev);
        if (eth_dev->device)
-               rte_pci_unmap_device(RTE_DEV_TO_PCI(eth_dev->device));
+               rte_pci_unmap_device(RTE_ETH_DEV_TO_PCI(eth_dev));
PMD_INIT_LOG(DEBUG, "dev_uninit completed"); @@ -1894,7 +1893,7 @@ virtio_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info) dev_info->speed_capa = ETH_LINK_SPEED_10G; /* fake value */ - dev_info->pci_dev = dev->device ? RTE_DEV_TO_PCI(dev->device) : NULL;
+       dev_info->pci_dev = dev->device ? RTE_ETH_DEV_TO_PCI(dev) : NULL;
        dev_info->max_rx_queues =
                RTE_MIN(hw->max_queue_pairs, VIRTIO_MAX_RX_QUEUES);
        dev_info->max_tx_queues =
diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c 
b/drivers/net/vmxnet3/vmxnet3_ethdev.c
index 98252bb..17b471f 100644
--- a/drivers/net/vmxnet3/vmxnet3_ethdev.c
+++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c
@@ -259,7 +259,7 @@ eth_vmxnet3_dev_init(struct rte_eth_dev *eth_dev)
        eth_dev->rx_pkt_burst = &vmxnet3_recv_pkts;
        eth_dev->tx_pkt_burst = &vmxnet3_xmit_pkts;
        eth_dev->tx_pkt_prepare = vmxnet3_prep_pkts;
-       pci_dev = RTE_DEV_TO_PCI(eth_dev->device);
+       pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
/*
         * for secondary processes, we don't initialize any further as primary
@@ -868,7 +868,7 @@ static void
  vmxnet3_dev_info_get(struct rte_eth_dev *dev,
                     struct rte_eth_dev_info *dev_info)
  {
-       dev_info->pci_dev = RTE_DEV_TO_PCI(dev->device);
+       dev_info->pci_dev = RTE_ETH_DEV_TO_PCI(dev);
dev_info->max_rx_queues = VMXNET3_MAX_RX_QUEUES;
        dev_info->max_tx_queues = VMXNET3_MAX_TX_QUEUES;
diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
index 0f38b45..f23d116 100644
--- a/lib/librte_ether/rte_ethdev.h
+++ b/lib/librte_ether/rte_ethdev.h
@@ -1048,6 +1048,8 @@ TAILQ_HEAD(rte_eth_dev_cb_list, rte_eth_dev_callback);
        } \
  } while (0)
+#define RTE_ETH_DEV_TO_PCI(eth_dev) RTE_DEV_TO_PCI((eth_dev)->device)
+
  /**
   * l2 tunnel configuration.
   */


Reply via email to