On 3/27/2018 11:10 PM, Ferruh Yigit wrote:
Public struct rte_eth_dev_info has a "struct rte_pci_device" field in it
although it is common for all ethdev in all buses.

Replacing pci specific struct with generic device struct and updating
places that are using pci device in a way to get this information from
generic device.

Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com>
---
Cc: Pablo de Lara <pablo.de.lara.gua...@intel.com>

There is no deprecation notice sent for this update but in this release
ethdev info already updated and ABI already broken, it can be good
opportunity for this update.
---
  app/test-pmd/config.c                     | 11 ++++++++++-
  app/test-pmd/testpmd.h                    | 24 ++++++++++++++++++------
  drivers/net/af_packet/rte_eth_af_packet.c |  1 +
  drivers/net/ark/ark_ethdev.c              |  4 +++-
  drivers/net/avf/avf_ethdev.c              |  2 +-
  drivers/net/avp/avp_ethdev.c              |  2 +-
  drivers/net/bnx2x/bnx2x_ethdev.c          |  2 +-
  drivers/net/bnxt/bnxt_ethdev.c            |  2 +-
  drivers/net/cxgbe/cxgbe_ethdev.c          |  2 +-
  drivers/net/dpaa/dpaa_ethdev.c            |  1 +
  drivers/net/dpaa2/dpaa2_ethdev.c          |  1 +
  drivers/net/e1000/em_ethdev.c             |  2 +-
  drivers/net/e1000/igb_ethdev.c            |  4 ++--
  drivers/net/ena/ena_ethdev.c              |  2 +-
  drivers/net/enic/enic_ethdev.c            |  2 +-
  drivers/net/fm10k/fm10k_ethdev.c          |  2 +-
  drivers/net/i40e/i40e_ethdev.c            |  2 +-
  drivers/net/i40e/i40e_ethdev_vf.c         |  2 +-
  drivers/net/ixgbe/ixgbe_ethdev.c          |  4 ++--
  drivers/net/kni/rte_eth_kni.c             |  2 +-
  drivers/net/liquidio/lio_ethdev.c         |  2 +-
  drivers/net/mlx4/mlx4_ethdev.c            |  2 +-
  drivers/net/mlx5/mlx5_ethdev.c            |  2 +-
  drivers/net/mrvl/mrvl_ethdev.c            |  2 ++
  drivers/net/nfp/nfp_net.c                 |  2 +-
  drivers/net/null/rte_eth_null.c           |  1 +
  drivers/net/octeontx/octeontx_ethdev.c    |  2 +-
  drivers/net/pcap/rte_eth_pcap.c           |  1 +
  drivers/net/qede/qede_ethdev.c            |  2 +-
  drivers/net/ring/rte_eth_ring.c           |  1 +
  drivers/net/sfc/sfc_ethdev.c              |  2 +-
  drivers/net/szedata2/rte_eth_szedata2.c   |  2 +-
  drivers/net/tap/rte_eth_tap.c             |  2 +-
  drivers/net/thunderx/nicvf_ethdev.c       |  2 +-
  drivers/net/virtio/virtio_ethdev.c        |  2 +-
  drivers/net/vmxnet3/vmxnet3_ethdev.c      |  2 +-
  examples/ethtool/lib/rte_ethtool.c        | 15 +++++++++------
  examples/ip_pipeline/init.c               | 10 ++++++++--
  examples/kni/main.c                       | 10 +++++++---
  lib/librte_ether/rte_ethdev.h             |  2 +-
  test/test/test_kni.c                      | 28 ++++++++++++++++++++++------
  41 files changed, 114 insertions(+), 54 deletions(-)


[...]

diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c
index 781d75cc2..ec3a024c6 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_ETH_DEV_TO_PCI(eth_dev);
+       device_info->device = eth_dev->device;
device_info->min_rx_bufsize = CXGBE_MIN_RX_BUFSIZE;
        device_info->max_rx_pktlen = CXGBE_MAX_RX_PKTLEN;
diff --git a/drivers/net/dpaa/dpaa_ethdev.c b/drivers/net/dpaa/dpaa_ethdev.c
index db493648a..29513158f 100644
--- a/drivers/net/dpaa/dpaa_ethdev.c
+++ b/drivers/net/dpaa/dpaa_ethdev.c
@@ -245,6 +245,7 @@ static void dpaa_eth_dev_info(struct rte_eth_dev *dev,
PMD_INIT_FUNC_TRACE(); + dev_info->device = dev->device;
        dev_info->max_rx_queues = dpaa_intf->nb_rx_queues;
        dev_info->max_tx_queues = dpaa_intf->nb_tx_queues;
        dev_info->min_rx_bufsize = DPAA_MIN_RX_BUF_SIZE;
diff --git a/drivers/net/dpaa2/dpaa2_ethdev.c b/drivers/net/dpaa2/dpaa2_ethdev.c
index 2fb7b2da7..7802067e8 100644
--- a/drivers/net/dpaa2/dpaa2_ethdev.c
+++ b/drivers/net/dpaa2/dpaa2_ethdev.c
@@ -163,6 +163,7 @@ dpaa2_dev_info_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *dev_info)
dev_info->if_index = priv->hw_id; + dev_info->device = dev->device;
        dev_info->max_mac_addrs = priv->max_mac_filters;
        dev_info->max_rx_pktlen = DPAA2_MAX_RX_PKT_LEN;
        dev_info->min_rx_bufsize = DPAA2_MIN_RX_BUF_SIZE;

[...]

For dpaa and dpaa2 specific change...

diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
index ab1030d42..0ed903966 100644
--- a/lib/librte_ether/rte_ethdev.h
+++ b/lib/librte_ether/rte_ethdev.h
@@ -995,7 +995,7 @@ struct rte_pci_device;
   * Ethernet device information
   */
  struct rte_eth_dev_info {
-       struct rte_pci_device *pci_dev; /**< Device PCI information. */
+       struct rte_device *device; /** Generic device information */
        const char *driver_name; /**< Device Driver name. */
        unsigned int if_index; /**< Index to bound host interface, or 0 if none.
                Use if_indextoname() to translate into an interface name. */

[...]

And for the above change:

Acked-By: Shreyansh Jain <shreyansh.j...@nxp.com>

_
Shreyansh

Reply via email to