drm/sti: Convert to platform remove callback returning void
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Sun, 7 May 2023 16:26:04 +0000 (18:26 +0200)
committerDouglas Anderson <dianders@chromium.org>
Thu, 8 Jun 2023 16:04:12 +0000 (09:04 -0700)
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 value returned is (mostly) ignored
and this typically results in resource leaks. To improve here there is a
quest to make the remove callback return void. In the first step of this
quest all drivers are converted to .remove_new() which already returns
void.

Trivially convert the sti drm drivers from always returning zero in the
remove callback to the void returning variant.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Alain Volmat <alain.volmat@foss.st.com>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20230507162616.1368908-42-u.kleine-koenig@pengutronix.de
drivers/gpu/drm/sti/sti_compositor.c
drivers/gpu/drm/sti/sti_drv.c
drivers/gpu/drm/sti/sti_dvo.c
drivers/gpu/drm/sti/sti_hda.c
drivers/gpu/drm/sti/sti_hdmi.c
drivers/gpu/drm/sti/sti_hqvdp.c
drivers/gpu/drm/sti/sti_tvout.c

index 142a8e1b44368e70b9c14f95474f6808606031d3..33487a1fed8f57f311398e5984c43b6629aa2fc3 100644 (file)
@@ -258,10 +258,9 @@ static int sti_compositor_probe(struct platform_device *pdev)
        return component_add(&pdev->dev, &sti_compositor_ops);
 }
 
-static int sti_compositor_remove(struct platform_device *pdev)
+static void sti_compositor_remove(struct platform_device *pdev)
 {
        component_del(&pdev->dev, &sti_compositor_ops);
-       return 0;
 }
 
 struct platform_driver sti_compositor_driver = {
@@ -270,7 +269,7 @@ struct platform_driver sti_compositor_driver = {
                .of_match_table = compositor_of_match,
        },
        .probe = sti_compositor_probe,
-       .remove = sti_compositor_remove,
+       .remove_new = sti_compositor_remove,
 };
 
 MODULE_AUTHOR("Benjamin Gaignard <benjamin.gaignard@st.com>");
index 1b87b5899f9eed798c0192cef2e8a6544fe34923..346c151e87be5f20e1128e6837ad6fb85b841da2 100644 (file)
@@ -246,11 +246,9 @@ static int sti_platform_probe(struct platform_device *pdev)
        return component_master_add_with_match(dev, &sti_ops, match);
 }
 
-static int sti_platform_remove(struct platform_device *pdev)
+static void sti_platform_remove(struct platform_device *pdev)
 {
        component_master_del(&pdev->dev, &sti_ops);
-
-       return 0;
 }
 
 static const struct of_device_id sti_dt_ids[] = {
@@ -261,7 +259,7 @@ MODULE_DEVICE_TABLE(of, sti_dt_ids);
 
 static struct platform_driver sti_platform_driver = {
        .probe = sti_platform_probe,
-       .remove = sti_platform_remove,
+       .remove_new = sti_platform_remove,
        .driver = {
                .name = DRIVER_NAME,
                .of_match_table = sti_dt_ids,
index 0c6679e361c82732bca7f96cbbaababd9e017143..fd1df4ce385264ec2b4c5dc3f9bb009b12f0045b 100644 (file)
@@ -567,10 +567,9 @@ static int sti_dvo_probe(struct platform_device *pdev)
        return component_add(&pdev->dev, &sti_dvo_ops);
 }
 
-static int sti_dvo_remove(struct platform_device *pdev)
+static void sti_dvo_remove(struct platform_device *pdev)
 {
        component_del(&pdev->dev, &sti_dvo_ops);
-       return 0;
 }
 
 static const struct of_device_id dvo_of_match[] = {
@@ -586,7 +585,7 @@ struct platform_driver sti_dvo_driver = {
                .of_match_table = dvo_of_match,
        },
        .probe = sti_dvo_probe,
-       .remove = sti_dvo_remove,
+       .remove_new = sti_dvo_remove,
 };
 
 MODULE_AUTHOR("Benjamin Gaignard <benjamin.gaignard@st.com>");
index 15097ac6793146bf4be75dc21da4d8303ada30b9..6ee35612a14e58f4232df3c47d7037abed55f41c 100644 (file)
@@ -792,10 +792,9 @@ static int sti_hda_probe(struct platform_device *pdev)
        return component_add(&pdev->dev, &sti_hda_ops);
 }
 
-static int sti_hda_remove(struct platform_device *pdev)
+static void sti_hda_remove(struct platform_device *pdev)
 {
        component_del(&pdev->dev, &sti_hda_ops);
-       return 0;
 }
 
 static const struct of_device_id hda_of_match[] = {
@@ -812,7 +811,7 @@ struct platform_driver sti_hda_driver = {
                .of_match_table = hda_of_match,
        },
        .probe = sti_hda_probe,
-       .remove = sti_hda_remove,
+       .remove_new = sti_hda_remove,
 };
 
 MODULE_AUTHOR("Benjamin Gaignard <benjamin.gaignard@st.com>");
index dc1562f14ceb04f4be586dfd0114baf965baa86e..500936d5743c5278f218336a65212fb5b8384f7f 100644 (file)
@@ -1472,7 +1472,7 @@ static int sti_hdmi_probe(struct platform_device *pdev)
        return ret;
 }
 
-static int sti_hdmi_remove(struct platform_device *pdev)
+static void sti_hdmi_remove(struct platform_device *pdev)
 {
        struct sti_hdmi *hdmi = dev_get_drvdata(&pdev->dev);
 
@@ -1480,8 +1480,6 @@ static int sti_hdmi_remove(struct platform_device *pdev)
        if (hdmi->audio_pdev)
                platform_device_unregister(hdmi->audio_pdev);
        component_del(&pdev->dev, &sti_hdmi_ops);
-
-       return 0;
 }
 
 struct platform_driver sti_hdmi_driver = {
@@ -1491,7 +1489,7 @@ struct platform_driver sti_hdmi_driver = {
                .of_match_table = hdmi_of_match,
        },
        .probe = sti_hdmi_probe,
-       .remove = sti_hdmi_remove,
+       .remove_new = sti_hdmi_remove,
 };
 
 MODULE_AUTHOR("Benjamin Gaignard <benjamin.gaignard@st.com>");
index 02b77279f6e4c44d718f0356d26ca8040c2e2511..0fb48ac044d8a003e48f93164593387ecb9d77a6 100644 (file)
@@ -1400,10 +1400,9 @@ static int sti_hqvdp_probe(struct platform_device *pdev)
        return component_add(&pdev->dev, &sti_hqvdp_ops);
 }
 
-static int sti_hqvdp_remove(struct platform_device *pdev)
+static void sti_hqvdp_remove(struct platform_device *pdev)
 {
        component_del(&pdev->dev, &sti_hqvdp_ops);
-       return 0;
 }
 
 static const struct of_device_id hqvdp_of_match[] = {
@@ -1419,7 +1418,7 @@ struct platform_driver sti_hqvdp_driver = {
                .of_match_table = hqvdp_of_match,
        },
        .probe = sti_hqvdp_probe,
-       .remove = sti_hqvdp_remove,
+       .remove_new = sti_hqvdp_remove,
 };
 
 MODULE_AUTHOR("Benjamin Gaignard <benjamin.gaignard@st.com>");
index 2499715a69b79e45fdc75dc47e438eb18be16329..64615638b79a28a79e1e03effa162cbaf8c7a5a3 100644 (file)
@@ -872,10 +872,9 @@ static int sti_tvout_probe(struct platform_device *pdev)
        return component_add(dev, &sti_tvout_ops);
 }
 
-static int sti_tvout_remove(struct platform_device *pdev)
+static void sti_tvout_remove(struct platform_device *pdev)
 {
        component_del(&pdev->dev, &sti_tvout_ops);
-       return 0;
 }
 
 static const struct of_device_id tvout_of_match[] = {
@@ -891,7 +890,7 @@ struct platform_driver sti_tvout_driver = {
                .of_match_table = tvout_of_match,
        },
        .probe = sti_tvout_probe,
-       .remove = sti_tvout_remove,
+       .remove_new = sti_tvout_remove,
 };
 
 MODULE_AUTHOR("Benjamin Gaignard <benjamin.gaignard@st.com>");