The rte_afu_driver is assigned to rte_afu_device.driver during probing.
There is no need of accessing the rte_afu_driver via rte_device.driver
and type casting to its container.

Signed-off-by: Thomas Monjalon <tho...@monjalon.net>
---
 drivers/bus/ifpga/ifpga_bus.c     | 6 ++----
 drivers/bus/ifpga/rte_bus_ifpga.h | 3 ---
 2 files changed, 2 insertions(+), 7 deletions(-)

diff --git a/drivers/bus/ifpga/ifpga_bus.c b/drivers/bus/ifpga/ifpga_bus.c
index 207aea152..a10f54f7b 100644
--- a/drivers/bus/ifpga/ifpga_bus.c
+++ b/drivers/bus/ifpga/ifpga_bus.c
@@ -349,16 +349,14 @@ static int
 ifpga_remove_driver(struct rte_afu_device *afu_dev)
 {
        const char *name;
-       const struct rte_afu_driver *driver;
 
        name = rte_ifpga_device_name(afu_dev);
-       if (!afu_dev->device.driver) {
+       if (afu_dev->driver == NULL) {
                IFPGA_BUS_DEBUG("no driver attach to device %s\n", name);
                return 1;
        }
 
-       driver = RTE_DRV_TO_AFU_CONST(afu_dev->device.driver);
-       return driver->remove(afu_dev);
+       return afu_dev->driver->remove(afu_dev);
 }
 
 static int
diff --git a/drivers/bus/ifpga/rte_bus_ifpga.h 
b/drivers/bus/ifpga/rte_bus_ifpga.h
index 51d5ae0d9..d53c0f483 100644
--- a/drivers/bus/ifpga/rte_bus_ifpga.h
+++ b/drivers/bus/ifpga/rte_bus_ifpga.h
@@ -83,9 +83,6 @@ struct rte_afu_device {
 #define RTE_DEV_TO_AFU(ptr) \
        container_of(ptr, struct rte_afu_device, device)
 
-#define RTE_DRV_TO_AFU_CONST(ptr) \
-       container_of(ptr, const struct rte_afu_driver, driver)
-
 /**
  * Initialization function for the driver called during FPGA BUS probing.
  */
-- 
2.19.0

Reply via email to