summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/exynos/exynos_drm_plane.c
diff options
context:
space:
mode:
authorGustavo Padovan <gustavo.padovan@collabora.co.uk>2014-10-29 19:25:53 +0000
committerInki Dae <daeinki@gmail.com>2015-01-25 21:28:02 +0900
commit1e3b423d0b79dfa25e5f09f558da264d4050eca8 (patch)
tree46fb6ae335764a2c4accee3d6f378bd04833a253 /drivers/gpu/drm/exynos/exynos_drm_plane.c
parent2bf053eb264ef6f51ba930c74812d9edd0b43798 (diff)
drm/exynos: remove exynos_drm_crtc_plane_* wrappers
This functions were doing nothing but calling a manager op function, so remove them and call the manager directly. Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Signed-off-by: Inki Dae <inki.dae@samsung.com>
Diffstat (limited to 'drivers/gpu/drm/exynos/exynos_drm_plane.c')
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_plane.c19
1 files changed, 15 insertions, 4 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_plane.c b/drivers/gpu/drm/exynos/exynos_drm_plane.c
index c7045a663763..7d768612e567 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_plane.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_plane.c
@@ -76,6 +76,7 @@ int exynos_plane_mode_set(struct drm_plane *plane, struct drm_crtc *crtc,
uint32_t src_w, uint32_t src_h)
{
struct exynos_plane *exynos_plane = to_exynos_plane(plane);
+ struct exynos_drm_manager *manager = to_exynos_crtc(crtc)->manager;
struct exynos_drm_overlay *overlay = &exynos_plane->overlay;
unsigned int actual_w;
unsigned int actual_h;
@@ -141,7 +142,8 @@ int exynos_plane_mode_set(struct drm_plane *plane, struct drm_crtc *crtc,
plane->crtc = crtc;
- exynos_drm_crtc_plane_mode_set(crtc, overlay);
+ if (manager->ops->win_mode_set)
+ manager->ops->win_mode_set(manager, overlay);
return 0;
}
@@ -150,26 +152,35 @@ void exynos_plane_commit(struct drm_plane *plane)
{
struct exynos_plane *exynos_plane = to_exynos_plane(plane);
struct exynos_drm_overlay *overlay = &exynos_plane->overlay;
+ struct exynos_drm_manager *manager = to_exynos_crtc(plane->crtc)->manager;
- exynos_drm_crtc_plane_commit(plane->crtc, overlay->zpos);
+ if (manager->ops->win_commit)
+ manager->ops->win_commit(manager, overlay->zpos);
}
void exynos_plane_dpms(struct drm_plane *plane, int mode)
{
struct exynos_plane *exynos_plane = to_exynos_plane(plane);
struct exynos_drm_overlay *overlay = &exynos_plane->overlay;
+ struct exynos_drm_manager *manager;
if (mode == DRM_MODE_DPMS_ON) {
if (exynos_plane->enabled)
return;
- exynos_drm_crtc_plane_enable(plane->crtc, overlay->zpos);
+ manager = to_exynos_crtc(plane->crtc)->manager;
+ if (manager->ops->win_enable)
+ manager->ops->win_enable(manager, overlay->zpos);
+
exynos_plane->enabled = true;
} else {
if (!exynos_plane->enabled)
return;
- exynos_drm_crtc_plane_disable(plane->crtc, overlay->zpos);
+ manager = to_exynos_crtc(plane->crtc)->manager;
+ if (manager->ops->win_disable)
+ manager->ops->win_disable(manager, overlay->zpos);
+
exynos_plane->enabled = false;
}
}