Remove the 'name' member from rte_pci_driver and move to generic rte_driver.

Most of the PMD drivers were initially using DRIVER_REGISTER_PCI(<name>..)
as well as assigning a name to eth_driver.pci_drv.name member.
In this patch, only the original DRIVER_REGISTER_PCI(<name>..) name has been
populated into the rte_driver.name member - assignments through eth_driver
has been removed.

Signed-off-by: Jan Viktorin <viktorin at rehivetech.com>
Signed-off-by: Shreyansh Jain <shreyansh.jain at nxp.com>
---
 app/test/test_pci.c                             | 10 +++++++---
 app/test/virtual_pmd.c                          |  2 +-
 drivers/crypto/qat/qat_qp.c                     |  2 +-
 drivers/net/bnx2x/bnx2x_ethdev.c                |  2 --
 drivers/net/bnxt/bnxt_ethdev.c                  |  1 -
 drivers/net/cxgbe/cxgbe_ethdev.c                |  1 -
 drivers/net/cxgbe/sge.c                         |  7 ++++---
 drivers/net/e1000/em_ethdev.c                   |  1 -
 drivers/net/e1000/igb_ethdev.c                  |  2 --
 drivers/net/ena/ena_ethdev.c                    |  1 -
 drivers/net/enic/enic_ethdev.c                  |  1 -
 drivers/net/fm10k/fm10k_ethdev.c                |  1 -
 drivers/net/i40e/i40e_ethdev.c                  |  1 -
 drivers/net/i40e/i40e_ethdev_vf.c               |  1 -
 drivers/net/i40e/i40e_fdir.c                    |  2 +-
 drivers/net/ixgbe/ixgbe_ethdev.c                |  2 --
 drivers/net/mlx4/mlx4.c                         |  4 +++-
 drivers/net/mlx5/mlx5.c                         |  4 +++-
 drivers/net/nfp/nfp_net.c                       |  5 ++---
 drivers/net/qede/qede_ethdev.c                  |  2 --
 drivers/net/thunderx/nicvf_ethdev.c             |  1 -
 drivers/net/virtio/virtio_ethdev.c              |  3 +--
 drivers/net/vmxnet3/vmxnet3_ethdev.c            |  4 ++--
 drivers/net/vmxnet3/vmxnet3_rxtx.c              |  2 +-
 lib/librte_cryptodev/rte_cryptodev.c            |  4 ++--
 lib/librte_eal/common/eal_common_pci.c          |  4 ++--
 lib/librte_eal/common/include/rte_pci.h         |  4 ++--
 lib/librte_eal/linuxapp/eal/rte_eal_version.map |  3 +++
 lib/librte_ether/rte_ethdev.c                   |  6 +++---
 29 files changed, 38 insertions(+), 45 deletions(-)

diff --git a/app/test/test_pci.c b/app/test/test_pci.c
index 69f78d9..ae597ab 100644
--- a/app/test/test_pci.c
+++ b/app/test/test_pci.c
@@ -78,14 +78,18 @@ struct rte_pci_id my_driver_id2[] = {
 };

 struct rte_pci_driver my_driver = {
-       .name = "test_driver",
+       .driver = {
+               .name = "test_driver"
+       },
        .devinit = my_driver_init,
        .id_table = my_driver_id,
        .drv_flags = 0,
 };

 struct rte_pci_driver my_driver2 = {
-       .name = "test_driver2",
+       .driver = {
+               .name = "test_driver2"
+       },
        .devinit = my_driver_init,
        .id_table = my_driver_id2,
        .drv_flags = 0,
@@ -95,7 +99,7 @@ static int
 my_driver_init(__attribute__((unused)) struct rte_pci_driver *dr,
               struct rte_pci_device *dev)
 {
-       printf("My driver init called in %s\n", dr->name);
+       printf("My driver init called in %s\n", dr->driver.name);
        printf("%x:%x:%x.%d", dev->addr.domain, dev->addr.bus,
               dev->addr.devid, dev->addr.function);
        printf(" - vendor:%x device:%x\n", dev->id.vendor_id, 
dev->id.device_id);
diff --git a/app/test/virtual_pmd.c b/app/test/virtual_pmd.c
index 8a1f0d0..56eeb99 100644
--- a/app/test/virtual_pmd.c
+++ b/app/test/virtual_pmd.c
@@ -586,7 +586,7 @@ virtual_ethdev_create(const char *name, struct ether_addr 
*mac_addr,
                goto err;

        pci_dev->numa_node = socket_id;
-       pci_drv->name = virtual_ethdev_driver_name;
+       pci_drv->driver.name = virtual_ethdev_driver_name;
        pci_drv->id_table = id_table;

        if (isr_support)
diff --git a/drivers/crypto/qat/qat_qp.c b/drivers/crypto/qat/qat_qp.c
index 5de47e3..2e7188b 100644
--- a/drivers/crypto/qat/qat_qp.c
+++ b/drivers/crypto/qat/qat_qp.c
@@ -300,7 +300,7 @@ qat_queue_create(struct rte_cryptodev *dev, struct 
qat_queue *queue,
         * Allocate a memzone for the queue - create a unique name.
         */
        snprintf(queue->memz_name, sizeof(queue->memz_name), "%s_%s_%d_%d_%d",
-               dev->driver->pci_drv.name, "qp_mem", dev->data->dev_id,
+               dev->driver->pci_drv.driver.name, "qp_mem", dev->data->dev_id,
                queue->hw_bundle_number, queue->hw_queue_number);
        qp_mz = queue_dma_zone_reserve(queue->memz_name, queue_size_bytes,
                        socket_id);
diff --git a/drivers/net/bnx2x/bnx2x_ethdev.c b/drivers/net/bnx2x/bnx2x_ethdev.c
index 214b655..847888e 100644
--- a/drivers/net/bnx2x/bnx2x_ethdev.c
+++ b/drivers/net/bnx2x/bnx2x_ethdev.c
@@ -618,7 +618,6 @@ eth_bnx2xvf_dev_init(struct rte_eth_dev *eth_dev)

 static struct eth_driver rte_bnx2x_pmd = {
        .pci_drv = {
-               .name = "rte_bnx2x_pmd",
                .id_table = pci_id_bnx2x_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
                .devinit = rte_eth_dev_pci_probe,
@@ -633,7 +632,6 @@ static struct eth_driver rte_bnx2x_pmd = {
  */
 static struct eth_driver rte_bnx2xvf_pmd = {
        .pci_drv = {
-               .name = "rte_bnx2xvf_pmd",
                .id_table = pci_id_bnx2xvf_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING,
                .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index 28eb8b9..d5ca9bf 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -1045,7 +1045,6 @@ bnxt_dev_uninit(struct rte_eth_dev *eth_dev) {

 static struct eth_driver bnxt_rte_pmd = {
        .pci_drv = {
-                   .name = "rte_" DRV_MODULE_NAME "_pmd",
                    .id_table = bnxt_pci_id_map,
                    .drv_flags = RTE_PCI_DRV_NEED_MAPPING,
                    .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c
index 431b06d..a37b124 100644
--- a/drivers/net/cxgbe/cxgbe_ethdev.c
+++ b/drivers/net/cxgbe/cxgbe_ethdev.c
@@ -1039,7 +1039,6 @@ out_free_adapter:

 static struct eth_driver rte_cxgbe_pmd = {
        .pci_drv = {
-               .name = "rte_cxgbe_pmd",
                .id_table = cxgb4_pci_tbl,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
                .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/cxgbe/sge.c b/drivers/net/cxgbe/sge.c
index ab5a842..736f08c 100644
--- a/drivers/net/cxgbe/sge.c
+++ b/drivers/net/cxgbe/sge.c
@@ -1645,7 +1645,8 @@ int t4_sge_alloc_rxq(struct adapter *adap, struct 
sge_rspq *iq, bool fwevtq,
        iq->size = cxgbe_roundup(iq->size, 16);

        snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d",
-                eth_dev->driver->pci_drv.name, fwevtq ? "fwq_ring" : "rx_ring",
+                eth_dev->driver->pci_drv.driver.name,
+                fwevtq ? "fwq_ring" : "rx_ring",
                 eth_dev->data->port_id, queue_id);
        snprintf(z_name_sw, sizeof(z_name_sw), "%s_sw_ring", z_name);

@@ -1697,7 +1698,7 @@ int t4_sge_alloc_rxq(struct adapter *adap, struct 
sge_rspq *iq, bool fwevtq,
                fl->size = cxgbe_roundup(fl->size, 8);

                snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d",
-                        eth_dev->driver->pci_drv.name,
+                        eth_dev->driver->pci_drv.driver.name,
                         fwevtq ? "fwq_ring" : "fl_ring",
                         eth_dev->data->port_id, queue_id);
                snprintf(z_name_sw, sizeof(z_name_sw), "%s_sw_ring", z_name);
@@ -1893,7 +1894,7 @@ int t4_sge_alloc_eth_txq(struct adapter *adap, struct 
sge_eth_txq *txq,
        nentries = txq->q.size + s->stat_len / sizeof(struct tx_desc);

        snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d",
-                eth_dev->driver->pci_drv.name, "tx_ring",
+                eth_dev->driver->pci_drv.driver.name, "tx_ring",
                 eth_dev->data->port_id, queue_id);
        snprintf(z_name_sw, sizeof(z_name_sw), "%s_sw_ring", z_name);

diff --git a/drivers/net/e1000/em_ethdev.c b/drivers/net/e1000/em_ethdev.c
index 1281c8b..7f8fc21 100644
--- a/drivers/net/e1000/em_ethdev.c
+++ b/drivers/net/e1000/em_ethdev.c
@@ -391,7 +391,6 @@ eth_em_dev_uninit(struct rte_eth_dev *eth_dev)

 static struct eth_driver rte_em_pmd = {
        .pci_drv = {
-               .name = "rte_em_pmd",
                .id_table = pci_id_em_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
                        RTE_PCI_DRV_DETACHABLE,
diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c
index 395477e..811d9ae 100644
--- a/drivers/net/e1000/igb_ethdev.c
+++ b/drivers/net/e1000/igb_ethdev.c
@@ -1078,7 +1078,6 @@ eth_igbvf_dev_uninit(struct rte_eth_dev *eth_dev)

 static struct eth_driver rte_igb_pmd = {
        .pci_drv = {
-               .name = "rte_igb_pmd",
                .id_table = pci_id_igb_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
                        RTE_PCI_DRV_DETACHABLE,
@@ -1095,7 +1094,6 @@ static struct eth_driver rte_igb_pmd = {
  */
 static struct eth_driver rte_igbvf_pmd = {
        .pci_drv = {
-               .name = "rte_igbvf_pmd",
                .id_table = pci_id_igbvf_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_DETACHABLE,
                .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c
index ee906d4..4d6e83f 100644
--- a/drivers/net/ena/ena_ethdev.c
+++ b/drivers/net/ena/ena_ethdev.c
@@ -1686,7 +1686,6 @@ static uint16_t eth_ena_xmit_pkts(void *tx_queue, struct 
rte_mbuf **tx_pkts,

 static struct eth_driver rte_ena_pmd = {
        .pci_drv = {
-               .name = "rte_ena_pmd",
                .id_table = pci_id_ena_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING,
                .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethdev.c
index 59812d0..c80b8f7 100644
--- a/drivers/net/enic/enic_ethdev.c
+++ b/drivers/net/enic/enic_ethdev.c
@@ -613,7 +613,6 @@ static int eth_enicpmd_dev_init(struct rte_eth_dev *eth_dev)

 static struct eth_driver rte_enic_pmd = {
        .pci_drv = {
-               .name = "rte_enic_pmd",
                .id_table = pci_id_enic_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING,
                .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/fm10k/fm10k_ethdev.c b/drivers/net/fm10k/fm10k_ethdev.c
index 26cdc10..11e4014 100644
--- a/drivers/net/fm10k/fm10k_ethdev.c
+++ b/drivers/net/fm10k/fm10k_ethdev.c
@@ -3055,7 +3055,6 @@ static const struct rte_pci_id pci_id_fm10k_map[] = {

 static struct eth_driver rte_pmd_fm10k = {
        .pci_drv = {
-               .name = "rte_pmd_fm10k",
                .id_table = pci_id_fm10k_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
                        RTE_PCI_DRV_DETACHABLE,
diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index dacaaea..892a221 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -663,7 +663,6 @@ static const struct rte_i40e_xstats_name_off 
rte_i40e_txq_prio_strings[] = {

 static struct eth_driver rte_i40e_pmd = {
        .pci_drv = {
-               .name = "rte_i40e_pmd",
                .id_table = pci_id_i40e_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
                        RTE_PCI_DRV_DETACHABLE,
diff --git a/drivers/net/i40e/i40e_ethdev_vf.c 
b/drivers/net/i40e/i40e_ethdev_vf.c
index 4a745f9..952bcd3 100644
--- a/drivers/net/i40e/i40e_ethdev_vf.c
+++ b/drivers/net/i40e/i40e_ethdev_vf.c
@@ -1554,7 +1554,6 @@ i40evf_dev_uninit(struct rte_eth_dev *eth_dev)
  */
 static struct eth_driver rte_i40evf_pmd = {
        .pci_drv = {
-               .name = "rte_i40evf_pmd",
                .id_table = pci_id_i40evf_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_DETACHABLE,
                .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/i40e/i40e_fdir.c b/drivers/net/i40e/i40e_fdir.c
index f65c411..a4efc6d 100644
--- a/drivers/net/i40e/i40e_fdir.c
+++ b/drivers/net/i40e/i40e_fdir.c
@@ -251,7 +251,7 @@ i40e_fdir_setup(struct i40e_pf *pf)

        /* reserve memory for the fdir programming packet */
        snprintf(z_name, sizeof(z_name), "%s_%s_%d",
-                       eth_dev->driver->pci_drv.name,
+                       eth_dev->driver->pci_drv.driver.name,
                        I40E_FDIR_MZ_NAME,
                        eth_dev->data->port_id);
        mz = i40e_memzone_reserve(z_name, I40E_FDIR_PKT_LEN, SOCKET_ID_ANY);
diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
index d2f46bc..65ec846 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -1562,7 +1562,6 @@ eth_ixgbevf_dev_uninit(struct rte_eth_dev *eth_dev)

 static struct eth_driver rte_ixgbe_pmd = {
        .pci_drv = {
-               .name = "rte_ixgbe_pmd",
                .id_table = pci_id_ixgbe_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
                        RTE_PCI_DRV_DETACHABLE,
@@ -1579,7 +1578,6 @@ static struct eth_driver rte_ixgbe_pmd = {
  */
 static struct eth_driver rte_ixgbevf_pmd = {
        .pci_drv = {
-               .name = "rte_ixgbevf_pmd",
                .id_table = pci_id_ixgbevf_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_DETACHABLE,
                .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c
index b333ad6..3d2df9c 100644
--- a/drivers/net/mlx4/mlx4.c
+++ b/drivers/net/mlx4/mlx4.c
@@ -5911,7 +5911,9 @@ static const struct rte_pci_id mlx4_pci_id_map[] = {

 static struct eth_driver mlx4_driver = {
        .pci_drv = {
-               .name = MLX4_DRIVER_NAME,
+               .driver = {
+                       .name = MLX4_DRIVER_NAME
+               },
                .id_table = mlx4_pci_id_map,
                .devinit = mlx4_pci_devinit,
                .drv_flags = RTE_PCI_DRV_INTR_LSC,
diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c
index ebad7cb..82c11f3 100644
--- a/drivers/net/mlx5/mlx5.c
+++ b/drivers/net/mlx5/mlx5.c
@@ -728,7 +728,9 @@ static const struct rte_pci_id mlx5_pci_id_map[] = {

 static struct eth_driver mlx5_driver = {
        .pci_drv = {
-               .name = MLX5_DRIVER_NAME,
+               .driver = {
+                       .name = MLX5_DRIVER_NAME
+               },
                .id_table = mlx5_pci_id_map,
                .devinit = mlx5_pci_devinit,
                .drv_flags = RTE_PCI_DRV_INTR_LSC,
diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c
index cbaf219..764d58d 100644
--- a/drivers/net/nfp/nfp_net.c
+++ b/drivers/net/nfp/nfp_net.c
@@ -214,7 +214,7 @@ ring_dma_zone_reserve(struct rte_eth_dev *dev, const char 
*ring_name,
        const struct rte_memzone *mz;

        snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d",
-                dev->driver->pci_drv.name,
+                dev->driver->pci_drv.driver.name,
                 ring_name, dev->data->port_id, queue_id);

        mz = rte_memzone_lookup(z_name);
@@ -1000,7 +1000,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->driver_name = dev->driver->pci_drv.name;
+       dev_info->driver_name = dev->driver->pci_drv.driver.name;
        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;
@@ -2460,7 +2460,6 @@ static struct rte_pci_id pci_id_nfp_net_map[] = {

 static struct eth_driver rte_nfp_net_pmd = {
        .pci_drv = {
-               .name = "rte_nfp_net_pmd",
                .id_table = pci_id_nfp_net_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
                             RTE_PCI_DRV_DETACHABLE,
diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
index a92dd3b..2ef432f 100644
--- a/drivers/net/qede/qede_ethdev.c
+++ b/drivers/net/qede/qede_ethdev.c
@@ -1478,7 +1478,6 @@ static struct rte_pci_id pci_id_qede_map[] = {

 static struct eth_driver rte_qedevf_pmd = {
        .pci_drv = {
-                   .name = "rte_qedevf_pmd",
                    .id_table = pci_id_qedevf_map,
                    .drv_flags =
                    RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
@@ -1492,7 +1491,6 @@ static struct eth_driver rte_qedevf_pmd = {

 static struct eth_driver rte_qede_pmd = {
        .pci_drv = {
-                   .name = "rte_qede_pmd",
                    .id_table = pci_id_qede_map,
                    .drv_flags =
                    RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
diff --git a/drivers/net/thunderx/nicvf_ethdev.c 
b/drivers/net/thunderx/nicvf_ethdev.c
index ad7d607..783acbf 100644
--- a/drivers/net/thunderx/nicvf_ethdev.c
+++ b/drivers/net/thunderx/nicvf_ethdev.c
@@ -1759,7 +1759,6 @@ static const struct rte_pci_id pci_id_nicvf_map[] = {

 static struct eth_driver rte_nicvf_pmd = {
        .pci_drv = {
-               .name = "rte_nicvf_pmd",
                .id_table = pci_id_nicvf_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
                .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/virtio/virtio_ethdev.c 
b/drivers/net/virtio/virtio_ethdev.c
index 5453709..7abacd3 100644
--- a/drivers/net/virtio/virtio_ethdev.c
+++ b/drivers/net/virtio/virtio_ethdev.c
@@ -1304,7 +1304,6 @@ eth_virtio_dev_uninit(struct rte_eth_dev *eth_dev)

 static struct eth_driver rte_virtio_pmd = {
        .pci_drv = {
-               .name = "rte_virtio_pmd",
                .id_table = pci_id_virtio_map,
                .drv_flags = RTE_PCI_DRV_DETACHABLE,
                .devinit = rte_eth_dev_pci_probe,
@@ -1534,7 +1533,7 @@ virtio_dev_info_get(struct rte_eth_dev *dev, struct 
rte_eth_dev_info *dev_info)
        struct virtio_hw *hw = dev->data->dev_private;

        if (dev->pci_dev)
-               dev_info->driver_name = dev->driver->pci_drv.name;
+               dev_info->driver_name = dev->driver->pci_drv.driver.name;
        else
                dev_info->driver_name = "virtio_user PMD";
        dev_info->max_rx_queues = (uint16_t)hw->max_rx_queues;
diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c 
b/drivers/net/vmxnet3/vmxnet3_ethdev.c
index d732979..857e59a 100644
--- a/drivers/net/vmxnet3/vmxnet3_ethdev.c
+++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c
@@ -137,7 +137,8 @@ gpa_zone_reserve(struct rte_eth_dev *dev, uint32_t size,
        const struct rte_memzone *mz;

        snprintf(z_name, sizeof(z_name), "%s_%d_%s",
-                                       dev->driver->pci_drv.name, 
dev->data->port_id, post_string);
+                                       dev->driver->pci_drv.driver.name,
+                                       dev->data->port_id, post_string);

        mz = rte_memzone_lookup(z_name);
        if (mz)
@@ -328,7 +329,6 @@ eth_vmxnet3_dev_uninit(struct rte_eth_dev *eth_dev)

 static struct eth_driver rte_vmxnet3_pmd = {
        .pci_drv = {
-               .name = "rte_vmxnet3_pmd",
                .id_table = pci_id_vmxnet3_map,
                .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_DETACHABLE,
                .devinit = rte_eth_dev_pci_probe,
diff --git a/drivers/net/vmxnet3/vmxnet3_rxtx.c 
b/drivers/net/vmxnet3/vmxnet3_rxtx.c
index 9deeb3f..e6d93f3 100644
--- a/drivers/net/vmxnet3/vmxnet3_rxtx.c
+++ b/drivers/net/vmxnet3/vmxnet3_rxtx.c
@@ -774,7 +774,7 @@ ring_dma_zone_reserve(struct rte_eth_dev *dev, const char 
*ring_name,
        const struct rte_memzone *mz;

        snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d",
-                       dev->driver->pci_drv.name, ring_name,
+                       dev->driver->pci_drv.driver.name, ring_name,
                        dev->data->port_id, queue_id);

        mz = rte_memzone_lookup(z_name);
diff --git a/lib/librte_cryptodev/rte_cryptodev.c 
b/lib/librte_cryptodev/rte_cryptodev.c
index c81e366..2e17169 100644
--- a/lib/librte_cryptodev/rte_cryptodev.c
+++ b/lib/librte_cryptodev/rte_cryptodev.c
@@ -459,7 +459,7 @@ rte_cryptodev_pci_probe(struct rte_pci_driver *pci_drv,
                return 0;

        CDEV_LOG_ERR("driver %s: crypto_dev_init(vendor_id=0x%x device_id=0x%x)"
-                       " failed", pci_drv->name,
+                       " failed", pci_drv->driver.name,
                        (unsigned) pci_dev->id.vendor_id,
                        (unsigned) pci_dev->id.device_id);

@@ -870,7 +870,7 @@ rte_cryptodev_info_get(uint8_t dev_id, struct 
rte_cryptodev_info *dev_info)

        dev_info->pci_dev = dev->pci_dev;
        if (dev->driver)
-               dev_info->driver_name = dev->driver->pci_drv.name;
+               dev_info->driver_name = dev->driver->pci_drv.driver.name;
 }


diff --git a/lib/librte_eal/common/eal_common_pci.c 
b/lib/librte_eal/common/eal_common_pci.c
index da0038f..308c2a9 100644
--- a/lib/librte_eal/common/eal_common_pci.c
+++ b/lib/librte_eal/common/eal_common_pci.c
@@ -195,7 +195,7 @@ rte_eal_pci_probe_one_driver(struct rte_pci_driver *dr, 
struct rte_pci_device *d
                }

                RTE_LOG(INFO, EAL, "  probe driver: %x:%x %s\n", 
dev->id.vendor_id,
-                               dev->id.device_id, dr->name);
+                               dev->id.device_id, dr->driver.name);

                if (dr->drv_flags & RTE_PCI_DRV_NEED_MAPPING) {
                        /* map resources for devices that use igb_uio */
@@ -255,7 +255,7 @@ rte_eal_pci_detach_dev(struct rte_pci_driver *dr,
                                loc->function, dev->numa_node);

                RTE_LOG(DEBUG, EAL, "  remove driver: %x:%x %s\n", 
dev->id.vendor_id,
-                               dev->id.device_id, dr->name);
+                               dev->id.device_id, dr->driver.name);

                if (dr->devuninit && (dr->devuninit(dev) < 0))
                        return -1;      /* negative value is an error */
diff --git a/lib/librte_eal/common/include/rte_pci.h 
b/lib/librte_eal/common/include/rte_pci.h
index 2b36727..60a5222 100644
--- a/lib/librte_eal/common/include/rte_pci.h
+++ b/lib/librte_eal/common/include/rte_pci.h
@@ -199,7 +199,7 @@ typedef int (pci_devuninit_t)(struct rte_pci_device *);
  */
 struct rte_pci_driver {
        TAILQ_ENTRY(rte_pci_driver) next;       /**< Next in list. */
-       const char *name;                       /**< Driver name. */
+       struct rte_driver driver;               /**< Inherit core driver. */
        pci_devinit_t *devinit;                 /**< Device init. function. */
        pci_devuninit_t *devuninit;             /**< Device uninit function. */
        const struct rte_pci_id *id_table;      /**< ID table, NULL terminated. 
*/
@@ -493,7 +493,7 @@ void rte_eal_pci_register(struct rte_pci_driver *driver);
 RTE_INIT(pciinitfn_ ##nm); \
 static void pciinitfn_ ##nm(void) \
 { \
-       (pci_drv).name = RTE_STR(nm);\
+       (pci_drv).driver.name = RTE_STR(nm);\
        rte_eal_pci_register(&pci_drv); \
 }\
 DRIVER_EXPORT_NAME(nm, __COUNTER__)
diff --git a/lib/librte_eal/linuxapp/eal/rte_eal_version.map 
b/lib/librte_eal/linuxapp/eal/rte_eal_version.map
index c0bd391..b8bfd4b 100644
--- a/lib/librte_eal/linuxapp/eal/rte_eal_version.map
+++ b/lib/librte_eal/linuxapp/eal/rte_eal_version.map
@@ -172,4 +172,7 @@ DPDK_16.11 {

        rte_eal_dev_attach;
        rte_eal_dev_detach;
+       rte_eal_vdrv_register;
+       rte_eal_vdrv_unregister;
+
 } DPDK_16.07;
diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
index cf38f32..d7179e1 100644
--- a/lib/librte_ether/rte_ethdev.c
+++ b/lib/librte_ether/rte_ethdev.c
@@ -276,7 +276,7 @@ rte_eth_dev_pci_probe(struct rte_pci_driver *pci_drv,
                return 0;

        RTE_PMD_DEBUG_TRACE("driver %s: eth_dev_init(vendor_id=0x%u 
device_id=0x%x) failed\n",
-                       pci_drv->name,
+                       pci_drv->driver.name,
                        (unsigned) pci_dev->id.vendor_id,
                        (unsigned) pci_dev->id.device_id);
        if (rte_eal_process_type() == RTE_PROC_PRIMARY)
@@ -2566,7 +2566,7 @@ rte_eth_dma_zone_reserve(const struct rte_eth_dev *dev, 
const char *ring_name,
        const struct rte_memzone *mz;

        snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d",
-                dev->driver->pci_drv.name, ring_name,
+                dev->driver->pci_drv.driver.name, ring_name,
                 dev->data->port_id, queue_id);

        mz = rte_memzone_lookup(z_name);
@@ -3208,7 +3208,7 @@ rte_eth_copy_pci_info(struct rte_eth_dev *eth_dev, struct 
rte_pci_device *pci_de

        eth_dev->data->kdrv = pci_dev->kdrv;
        eth_dev->data->numa_node = pci_dev->numa_node;
-       eth_dev->data->drv_name = pci_dev->driver->name;
+       eth_dev->data->drv_name = pci_dev->driver->driver.name;
 }

 int
-- 
2.7.4

Reply via email to