aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_connector.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_connector.c b/drivers/gpu/drm/exynos/exynos_drm_connector.c
index d1a459fdbe92..7ca1274775b7 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_connector.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_connector.c
@@ -47,6 +47,7 @@ convert_to_display_mode(struct drm_display_mode *mode,
47 DRM_DEBUG_KMS("%s\n", __FILE__); 47 DRM_DEBUG_KMS("%s\n", __FILE__);
48 48
49 mode->clock = timing->pixclock / 1000; 49 mode->clock = timing->pixclock / 1000;
50 mode->vrefresh = timing->refresh;
50 51
51 mode->hdisplay = timing->xres; 52 mode->hdisplay = timing->xres;
52 mode->hsync_start = mode->hdisplay + timing->left_margin; 53 mode->hsync_start = mode->hdisplay + timing->left_margin;
@@ -57,6 +58,12 @@ convert_to_display_mode(struct drm_display_mode *mode,
57 mode->vsync_start = mode->vdisplay + timing->upper_margin; 58 mode->vsync_start = mode->vdisplay + timing->upper_margin;
58 mode->vsync_end = mode->vsync_start + timing->vsync_len; 59 mode->vsync_end = mode->vsync_start + timing->vsync_len;
59 mode->vtotal = mode->vsync_end + timing->lower_margin; 60 mode->vtotal = mode->vsync_end + timing->lower_margin;
61
62 if (timing->vmode & FB_VMODE_INTERLACED)
63 mode->flags |= DRM_MODE_FLAG_INTERLACE;
64
65 if (timing->vmode & FB_VMODE_DOUBLE)
66 mode->flags |= DRM_MODE_FLAG_DBLSCAN;
60} 67}
61 68
62/* convert drm_display_mode to exynos_video_timings */ 69/* convert drm_display_mode to exynos_video_timings */
@@ -69,7 +76,7 @@ convert_to_video_timing(struct fb_videomode *timing,
69 memset(timing, 0, sizeof(*timing)); 76 memset(timing, 0, sizeof(*timing));
70 77
71 timing->pixclock = mode->clock * 1000; 78 timing->pixclock = mode->clock * 1000;
72 timing->refresh = mode->vrefresh; 79 timing->refresh = drm_mode_vrefresh(mode);
73 80
74 timing->xres = mode->hdisplay; 81 timing->xres = mode->hdisplay;
75 timing->left_margin = mode->hsync_start - mode->hdisplay; 82 timing->left_margin = mode->hsync_start - mode->hdisplay;