char: xilinx_hwicap: Fold hwicap_remove() into only caller
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Mon, 5 Jun 2023 09:20:45 +0000 (11:20 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 15 Jun 2023 11:43:21 +0000 (13:43 +0200)
hwicap_remove() is only called by hwicap_drv_remove(). Simplify by
unrolling the former into the latter function.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Michal Simek <michal.simek@amd.com>
Message-ID: <20230605092047.50472-1-u.kleine-koenig@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/char/xilinx_hwicap/xilinx_hwicap.c

index a46f637..c4d75e6 100644 (file)
@@ -721,27 +721,6 @@ static struct hwicap_driver_config fifo_icap_config = {
        .reset = fifo_icap_reset,
 };
 
-static int hwicap_remove(struct device *dev)
-{
-       struct hwicap_drvdata *drvdata;
-
-       drvdata = dev_get_drvdata(dev);
-
-       if (!drvdata)
-               return 0;
-
-       device_destroy(icap_class, drvdata->devt);
-       cdev_del(&drvdata->cdev);
-       iounmap(drvdata->base_address);
-       release_mem_region(drvdata->mem_start, drvdata->mem_size);
-       kfree(drvdata);
-
-       mutex_lock(&icap_sem);
-       probed_devices[MINOR(dev->devt)-XHWICAP_MINOR] = 0;
-       mutex_unlock(&icap_sem);
-       return 0;               /* success */
-}
-
 #ifdef CONFIG_OF
 static int hwicap_of_probe(struct platform_device *op,
                                     const struct hwicap_driver_config *config)
@@ -827,7 +806,24 @@ static int hwicap_drv_probe(struct platform_device *pdev)
 
 static int hwicap_drv_remove(struct platform_device *pdev)
 {
-       return hwicap_remove(&pdev->dev);
+       struct device *dev = &pdev->dev;
+       struct hwicap_drvdata *drvdata;
+
+       drvdata = dev_get_drvdata(dev);
+       if (!drvdata)
+               return 0;
+
+       device_destroy(icap_class, drvdata->devt);
+       cdev_del(&drvdata->cdev);
+       iounmap(drvdata->base_address);
+       release_mem_region(drvdata->mem_start, drvdata->mem_size);
+       kfree(drvdata);
+
+       mutex_lock(&icap_sem);
+       probed_devices[MINOR(dev->devt)-XHWICAP_MINOR] = 0;
+       mutex_unlock(&icap_sem);
+
+       return 0;
 }
 
 #ifdef CONFIG_OF