drm/exynos: use exynos_dsi as drvdata
authorMichael Tretter <m.tretter@pengutronix.de>
Fri, 11 Sep 2020 13:54:00 +0000 (15:54 +0200)
committerInki Dae <inki.dae@samsung.com>
Tue, 1 Dec 2020 02:38:29 +0000 (11:38 +0900)
Use the exynos_dsi as drvdata instead of the encoder to further decouple
the driver from the encoder.

Signed-off-by: Michael Tretter <m.tretter@pengutronix.de>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
drivers/gpu/drm/exynos/exynos_drm_dsi.c

index 086a8c9..83ab6b3 100644 (file)
@@ -1689,8 +1689,8 @@ static int exynos_dsi_parse_dt(struct exynos_dsi *dsi)
 static int exynos_dsi_bind(struct device *dev, struct device *master,
                                void *data)
 {
-       struct drm_encoder *encoder = dev_get_drvdata(dev);
-       struct exynos_dsi *dsi = encoder_to_dsi(encoder);
+       struct exynos_dsi *dsi = dev_get_drvdata(dev);
+       struct drm_encoder *encoder = &dsi->encoder;
        struct drm_device *drm_dev = data;
        struct device_node *in_bridge_node;
        struct drm_bridge *in_bridge;
@@ -1718,8 +1718,8 @@ static int exynos_dsi_bind(struct device *dev, struct device *master,
 static void exynos_dsi_unbind(struct device *dev, struct device *master,
                                void *data)
 {
-       struct drm_encoder *encoder = dev_get_drvdata(dev);
-       struct exynos_dsi *dsi = encoder_to_dsi(encoder);
+       struct exynos_dsi *dsi = dev_get_drvdata(dev);
+       struct drm_encoder *encoder = &dsi->encoder;
 
        exynos_dsi_disable(encoder);
 
@@ -1815,7 +1815,7 @@ static int exynos_dsi_probe(struct platform_device *pdev)
        if (ret)
                return ret;
 
-       platform_set_drvdata(pdev, &dsi->encoder);
+       platform_set_drvdata(pdev, dsi);
 
        pm_runtime_enable(dev);
 
@@ -1842,8 +1842,7 @@ static int exynos_dsi_remove(struct platform_device *pdev)
 
 static int __maybe_unused exynos_dsi_suspend(struct device *dev)
 {
-       struct drm_encoder *encoder = dev_get_drvdata(dev);
-       struct exynos_dsi *dsi = encoder_to_dsi(encoder);
+       struct exynos_dsi *dsi = dev_get_drvdata(dev);
        const struct exynos_dsi_driver_data *driver_data = dsi->driver_data;
        int ret, i;
 
@@ -1873,8 +1872,7 @@ static int __maybe_unused exynos_dsi_suspend(struct device *dev)
 
 static int __maybe_unused exynos_dsi_resume(struct device *dev)
 {
-       struct drm_encoder *encoder = dev_get_drvdata(dev);
-       struct exynos_dsi *dsi = encoder_to_dsi(encoder);
+       struct exynos_dsi *dsi = dev_get_drvdata(dev);
        const struct exynos_dsi_driver_data *driver_data = dsi->driver_data;
        int ret, i;