diff options
author | Gustavo Padovan <gustavo.padovan@collabora.co.uk> | 2014-11-27 21:28:44 +0300 |
---|---|---|
committer | Inki Dae <daeinki@gmail.com> | 2015-01-25 15:28:08 +0300 |
commit | a8dc5ed67f94030b72daece4e5e433fa6fae3e3e (patch) | |
tree | 155f04aad6a7f3100fa8cd739a7cb4dac92d2419 /drivers/gpu/drm/exynos | |
parent | 93bca243ec96f0acb949d4aa2306f07467e89985 (diff) | |
download | linux-a8dc5ed67f94030b72daece4e5e433fa6fae3e3e.tar.xz |
drm/exynos: don't duplicate drm_display_mode in fimd context
We can safely use the mode stored in the crtc.
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')
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_drm_crtc.c | 5 | ||||
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_drm_fimd.c | 12 |
2 files changed, 1 insertions, 16 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_crtc.c b/drivers/gpu/drm/exynos/exynos_drm_crtc.c index 9e8ed5fd60ae..357fcd59aa48 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_crtc.c +++ b/drivers/gpu/drm/exynos/exynos_drm_crtc.c @@ -89,7 +89,6 @@ exynos_drm_crtc_mode_set(struct drm_crtc *crtc, struct drm_display_mode *mode, struct drm_display_mode *adjusted_mode, int x, int y, struct drm_framebuffer *old_fb) { - struct exynos_drm_crtc *exynos_crtc = to_exynos_crtc(crtc); struct drm_framebuffer *fb = crtc->primary->fb; unsigned int crtc_w; unsigned int crtc_h; @@ -102,10 +101,6 @@ exynos_drm_crtc_mode_set(struct drm_crtc *crtc, struct drm_display_mode *mode, crtc_w = fb->width - x; crtc_h = fb->height - y; - - if (exynos_crtc->ops->mode_set) - exynos_crtc->ops->mode_set(exynos_crtc, &crtc->mode); - return exynos_plane_mode_set(crtc->primary, crtc, fb, 0, 0, crtc_w, crtc_h, x, y, crtc_w, crtc_h); } diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c b/drivers/gpu/drm/exynos/exynos_drm_fimd.c index 9acd6890a3d6..d54ca07658c9 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c +++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c @@ -164,7 +164,6 @@ struct fimd_context { struct clk *lcd_clk; void __iomem *regs; struct regmap *sysreg; - struct drm_display_mode mode; struct fimd_win_data win_data[WINDOWS_NR]; unsigned int default_win; unsigned long irq_flags; @@ -345,18 +344,10 @@ static bool fimd_mode_fixup(struct exynos_drm_crtc *crtc, return true; } -static void fimd_mode_set(struct exynos_drm_crtc *crtc, - const struct drm_display_mode *in_mode) -{ - struct fimd_context *ctx = crtc->ctx; - - drm_mode_copy(&ctx->mode, in_mode); -} - static void fimd_commit(struct exynos_drm_crtc *crtc) { struct fimd_context *ctx = crtc->ctx; - struct drm_display_mode *mode = &ctx->mode; + struct drm_display_mode *mode = &crtc->base.mode; struct fimd_driver_data *driver_data = ctx->driver_data; void *timing_base = ctx->regs + driver_data->timing_base; u32 val, clkdiv; @@ -1016,7 +1007,6 @@ static void fimd_te_handler(struct exynos_drm_crtc *crtc) static struct exynos_drm_crtc_ops fimd_crtc_ops = { .dpms = fimd_dpms, .mode_fixup = fimd_mode_fixup, - .mode_set = fimd_mode_set, .commit = fimd_commit, .enable_vblank = fimd_enable_vblank, .disable_vblank = fimd_disable_vblank, |