All Exynos planes are assigned to exactly one CRTC, it allows to simplify
initialization by moving setting of possible_crtcs to exynos_plane_init.

Signed-off-by: Andrzej Hajda <a.ha...@samsung.com>
---
 drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 2 +-
 drivers/gpu/drm/exynos/exynos7_drm_decon.c    | 2 +-
 drivers/gpu/drm/exynos/exynos_drm_fimd.c      | 2 +-
 drivers/gpu/drm/exynos/exynos_drm_plane.c     | 5 ++---
 drivers/gpu/drm/exynos/exynos_drm_plane.h     | 1 -
 drivers/gpu/drm/exynos/exynos_drm_vidi.c      | 2 +-
 drivers/gpu/drm/exynos/exynos_mixer.c         | 2 +-
 7 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/exynos/exynos5433_drm_decon.c 
b/drivers/gpu/drm/exynos/exynos5433_drm_decon.c
index 2cb7736..80d8be0 100644
--- a/drivers/gpu/drm/exynos/exynos5433_drm_decon.c
+++ b/drivers/gpu/drm/exynos/exynos5433_drm_decon.c
@@ -548,7 +548,7 @@ static int decon_bind(struct device *dev, struct device 
*master, void *data)
                ctx->configs[win].type = decon_win_types[tmp];
 
                ret = exynos_plane_init(drm_dev, &ctx->planes[win], win,
-                                       1 << ctx->pipe, &ctx->configs[win]);
+                                       &ctx->configs[win]);
                if (ret)
                        return ret;
        }
diff --git a/drivers/gpu/drm/exynos/exynos7_drm_decon.c 
b/drivers/gpu/drm/exynos/exynos7_drm_decon.c
index 206e779..4320b3b 100644
--- a/drivers/gpu/drm/exynos/exynos7_drm_decon.c
+++ b/drivers/gpu/drm/exynos/exynos7_drm_decon.c
@@ -642,7 +642,7 @@ static int decon_bind(struct device *dev, struct device 
*master, void *data)
                ctx->configs[i].type = decon_win_types[i];
 
                ret = exynos_plane_init(drm_dev, &ctx->planes[i], i,
-                                       1 << ctx->pipe, &ctx->configs[i]);
+                                       &ctx->configs[i]);
                if (ret)
                        return ret;
        }
diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c 
b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
index df4dc34..830a364 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c
@@ -1009,7 +1009,7 @@ static int fimd_bind(struct device *dev, struct device 
*master, void *data)
                ctx->configs[i].zpos = i;
                ctx->configs[i].type = fimd_win_types[i];
                ret = exynos_plane_init(drm_dev, &ctx->planes[i], i,
-                                       1 << ctx->pipe, &ctx->configs[i]);
+                                       &ctx->configs[i]);
                if (ret)
                        return ret;
        }
diff --git a/drivers/gpu/drm/exynos/exynos_drm_plane.c 
b/drivers/gpu/drm/exynos/exynos_drm_plane.c
index c2f17f3..611b6fd 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_plane.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_plane.c
@@ -273,14 +273,13 @@ static void exynos_plane_attach_zpos_property(struct 
drm_plane *plane,
 }
 
 int exynos_plane_init(struct drm_device *dev,
-                     struct exynos_drm_plane *exynos_plane,
-                     unsigned int index, unsigned long possible_crtcs,
+                     struct exynos_drm_plane *exynos_plane, unsigned int index,
                      const struct exynos_drm_plane_config *config)
 {
        int err;
 
        err = drm_universal_plane_init(dev, &exynos_plane->base,
-                                      possible_crtcs,
+                                      1 << dev->mode_config.num_crtc,
                                       &exynos_plane_funcs,
                                       config->pixel_formats,
                                       config->num_pixel_formats,
diff --git a/drivers/gpu/drm/exynos/exynos_drm_plane.h 
b/drivers/gpu/drm/exynos/exynos_drm_plane.h
index 9aafad1..497047b 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_plane.h
+++ b/drivers/gpu/drm/exynos/exynos_drm_plane.h
@@ -11,5 +11,4 @@
 
 int exynos_plane_init(struct drm_device *dev,
                      struct exynos_drm_plane *exynos_plane, unsigned int index,
-                     unsigned long possible_crtcs,
                      const struct exynos_drm_plane_config *config);
diff --git a/drivers/gpu/drm/exynos/exynos_drm_vidi.c 
b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
index cb5e3c6..8860ff4 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_vidi.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_vidi.c
@@ -408,7 +408,7 @@ static int vidi_bind(struct device *dev, struct device 
*master, void *data)
                plane_config.type = vidi_win_types[i];
 
                ret = exynos_plane_init(drm_dev, &ctx->planes[i], i,
-                                       1 << ctx->pipe, &plane_config);
+                                       &plane_config);
                if (ret)
                        return ret;
        }
diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c 
b/drivers/gpu/drm/exynos/exynos_mixer.c
index 1474982..3722b5f 100644
--- a/drivers/gpu/drm/exynos/exynos_mixer.c
+++ b/drivers/gpu/drm/exynos/exynos_mixer.c
@@ -1154,7 +1154,7 @@ static int mixer_bind(struct device *dev, struct device 
*manager, void *data)
                        continue;
 
                ret = exynos_plane_init(drm_dev, &ctx->planes[i], i,
-                                       1 << ctx->pipe, &plane_configs[i]);
+                                       &plane_configs[i]);
                if (ret)
                        return ret;
        }
-- 
2.7.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to