The drivers avp, bnx2x and liquidio were using the helper function
rte_eth_dev_pci_allocate() and can be replaced by
rte_eth_dev_pci_generic_probe() which calls the former.

Fixes: dcd5c8112bc3 ("ethdev: add PCI driver helpers")
Cc: sta...@dpdk.org

Signed-off-by: Thomas Monjalon <tho...@monjalon.net>
Reviewed-by: Ferruh Yigit <ferruh.yi...@intel.com>
Reviewed-by: Andrew Rybchenko <arybche...@solarflare.com>
Reviewed-by: Stephen Hemminger <step...@networkplumber.org>
---
 drivers/net/avp/avp_ethdev.c      | 15 ++-------------
 drivers/net/bnx2x/bnx2x_ethdev.c  | 20 +++++---------------
 drivers/net/liquidio/lio_ethdev.c | 15 ++-------------
 3 files changed, 9 insertions(+), 41 deletions(-)

diff --git a/drivers/net/avp/avp_ethdev.c b/drivers/net/avp/avp_ethdev.c
index 5b3c4cebf..dc97e60e6 100644
--- a/drivers/net/avp/avp_ethdev.c
+++ b/drivers/net/avp/avp_ethdev.c
@@ -1048,19 +1048,8 @@ static int
 eth_avp_pci_probe(struct rte_pci_driver *pci_drv __rte_unused,
                  struct rte_pci_device *pci_dev)
 {
-       struct rte_eth_dev *eth_dev;
-       int ret;
-
-       eth_dev = rte_eth_dev_pci_allocate(pci_dev,
-                                          sizeof(struct avp_adapter));
-       if (eth_dev == NULL)
-               return -ENOMEM;
-
-       ret = eth_avp_dev_init(eth_dev);
-       if (ret)
-               rte_eth_dev_pci_release(eth_dev);
-
-       return ret;
+       return rte_eth_dev_pci_generic_probe(pci_dev, sizeof(struct 
avp_adapter),
+                       eth_avp_dev_init);
 }
 
 static int
diff --git a/drivers/net/bnx2x/bnx2x_ethdev.c b/drivers/net/bnx2x/bnx2x_ethdev.c
index 6ccbb99c9..7a1e9f583 100644
--- a/drivers/net/bnx2x/bnx2x_ethdev.c
+++ b/drivers/net/bnx2x/bnx2x_ethdev.c
@@ -644,24 +644,14 @@ static struct rte_pci_driver rte_bnx2xvf_pmd;
 static int eth_bnx2x_pci_probe(struct rte_pci_driver *pci_drv,
        struct rte_pci_device *pci_dev)
 {
-       struct rte_eth_dev *eth_dev;
-       int ret;
-
-       eth_dev = rte_eth_dev_pci_allocate(pci_dev, sizeof(struct bnx2x_softc));
-       if (!eth_dev)
-               return -ENOMEM;
-
        if (pci_drv == &rte_bnx2x_pmd)
-               ret = eth_bnx2x_dev_init(eth_dev);
+               return rte_eth_dev_pci_generic_probe(pci_dev,
+                               sizeof(struct bnx2x_softc), eth_bnx2x_dev_init);
        else if (pci_drv == &rte_bnx2xvf_pmd)
-               ret = eth_bnx2xvf_dev_init(eth_dev);
+               return rte_eth_dev_pci_generic_probe(pci_dev,
+                               sizeof(struct bnx2x_softc), 
eth_bnx2xvf_dev_init);
        else
-               ret = -EINVAL;
-
-       if (ret)
-               rte_eth_dev_pci_release(eth_dev);
-
-       return ret;
+               return -EINVAL;
 }
 
 static int eth_bnx2x_pci_remove(struct rte_pci_device *pci_dev)
diff --git a/drivers/net/liquidio/lio_ethdev.c 
b/drivers/net/liquidio/lio_ethdev.c
index a13a566f9..0e0b5d84d 100644
--- a/drivers/net/liquidio/lio_ethdev.c
+++ b/drivers/net/liquidio/lio_ethdev.c
@@ -2110,19 +2110,8 @@ static int
 lio_eth_dev_pci_probe(struct rte_pci_driver *pci_drv __rte_unused,
                      struct rte_pci_device *pci_dev)
 {
-       struct rte_eth_dev *eth_dev;
-       int ret;
-
-       eth_dev = rte_eth_dev_pci_allocate(pci_dev,
-                                          sizeof(struct lio_device));
-       if (eth_dev == NULL)
-               return -ENOMEM;
-
-       ret = lio_eth_dev_init(eth_dev);
-       if (ret)
-               rte_eth_dev_pci_release(eth_dev);
-
-       return ret;
+       return rte_eth_dev_pci_generic_probe(pci_dev, sizeof(struct lio_device),
+                       lio_eth_dev_init);
 }
 
 static int
-- 
2.16.2

Reply via email to