driver: soc: xilinx: Convert to platform remove callback returning void
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Wed, 28 Jun 2023 08:36:36 +0000 (10:36 +0200)
committerMichal Simek <michal.simek@amd.com>
Mon, 10 Jul 2023 11:01:09 +0000 (13:01 +0200)
The .remove() callback for a platform driver returns an int which makes
many driver authors wrongly assume it's possible to do error handling by
returning an error code. However the only effect compared to returning
zero is that the core emits an error message. By converting to
.remove_new() (which is semantically equivalent to return 0 in
.remove()) this error message is suppressed which is a good thing as
xlnx_event_manager_remove() already emits an better error message.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20230628083636.684394-1-u.kleine-koenig@pengutronix.de
Signed-off-by: Michal Simek <michal.simek@amd.com>
drivers/soc/xilinx/xlnx_event_manager.c

index f9d9b82..86a048a 100644 (file)
@@ -666,7 +666,7 @@ static int xlnx_event_manager_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int xlnx_event_manager_remove(struct platform_device *pdev)
+static void xlnx_event_manager_remove(struct platform_device *pdev)
 {
        int i;
        struct registered_event_data *eve_data;
@@ -691,13 +691,11 @@ static int xlnx_event_manager_remove(struct platform_device *pdev)
        xlnx_event_cleanup_sgi(pdev);
 
        event_manager_availability = -EACCES;
-
-       return ret;
 }
 
 static struct platform_driver xlnx_event_manager_driver = {
        .probe = xlnx_event_manager_probe,
-       .remove = xlnx_event_manager_remove,
+       .remove_new = xlnx_event_manager_remove,
        .driver = {
                .name = "xlnx_event_manager",
        },