[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230924192604.3262187-6-jernej.skrabec@gmail.com>
Date: Sun, 24 Sep 2023 21:26:02 +0200
From: Jernej Skrabec <jernej.skrabec@...il.com>
To: mripard@...nel.org, wens@...e.org
Cc: airlied@...il.com, daniel@...ll.ch, samuel@...lland.org,
dri-devel@...ts.freedesktop.org,
linux-arm-kernel@...ts.infradead.org, linux-sunxi@...ts.linux.dev,
linux-kernel@...r.kernel.org,
Jernej Skrabec <jernej.skrabec@...il.com>
Subject: [PATCH 5/7] drm/sun4i: dw-hdmi: Split driver registration
There is no reason to register two drivers in same place. Using macro
lowers amount of boilerplate code.
Signed-off-by: Jernej Skrabec <jernej.skrabec@...il.com>
---
drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 27 +-------------------------
drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 2 --
drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c | 3 ++-
3 files changed, 3 insertions(+), 29 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
index 93831cdf1917..d93e8ff71aae 100644
--- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
+++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
@@ -378,32 +378,7 @@ static struct platform_driver sun8i_dw_hdmi_pltfm_driver = {
.of_match_table = sun8i_dw_hdmi_dt_ids,
},
};
-
-static int __init sun8i_dw_hdmi_init(void)
-{
- int ret;
-
- ret = platform_driver_register(&sun8i_dw_hdmi_pltfm_driver);
- if (ret)
- return ret;
-
- ret = platform_driver_register(&sun8i_hdmi_phy_driver);
- if (ret) {
- platform_driver_unregister(&sun8i_dw_hdmi_pltfm_driver);
- return ret;
- }
-
- return ret;
-}
-
-static void __exit sun8i_dw_hdmi_exit(void)
-{
- platform_driver_unregister(&sun8i_dw_hdmi_pltfm_driver);
- platform_driver_unregister(&sun8i_hdmi_phy_driver);
-}
-
-module_init(sun8i_dw_hdmi_init);
-module_exit(sun8i_dw_hdmi_exit);
+module_platform_driver(sun8i_dw_hdmi_pltfm_driver);
MODULE_AUTHOR("Jernej Skrabec <jernej.skrabec@...l.net>");
MODULE_DESCRIPTION("Allwinner DW HDMI bridge");
diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
index 18ffc1b4841f..21e010deeb48 100644
--- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
+++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
@@ -194,8 +194,6 @@ struct sun8i_dw_hdmi {
struct reset_control *rst_ctrl;
};
-extern struct platform_driver sun8i_hdmi_phy_driver;
-
static inline struct sun8i_dw_hdmi *
encoder_to_sun8i_dw_hdmi(struct drm_encoder *encoder)
{
diff --git a/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c b/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c
index 489ea94693ff..f917a979e4a4 100644
--- a/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c
+++ b/drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c
@@ -729,10 +729,11 @@ static int sun8i_hdmi_phy_probe(struct platform_device *pdev)
return 0;
}
-struct platform_driver sun8i_hdmi_phy_driver = {
+static struct platform_driver sun8i_hdmi_phy_driver = {
.probe = sun8i_hdmi_phy_probe,
.driver = {
.name = "sun8i-hdmi-phy",
.of_match_table = sun8i_hdmi_phy_of_table,
},
};
+module_platform_driver(sun8i_hdmi_phy_driver);
--
2.42.0
Powered by blists - more mailing lists