Skip to content

Commit

Permalink
drm/exynos: fixed converting between display mode and timing
Browse files Browse the repository at this point in the history
missing members are added into converting function between timing and display
mode and refresh rate of display mode is calculated by drm mode function.

Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
  • Loading branch information
Seung-Woo Kim authored and Inki Dae committed Nov 15, 2011
1 parent 1b17b20 commit 8b58dfe
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion drivers/gpu/drm/exynos/exynos_drm_connector.c
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ convert_to_display_mode(struct drm_display_mode *mode,
DRM_DEBUG_KMS("%s\n", __FILE__);

mode->clock = timing->pixclock / 1000;
mode->vrefresh = timing->refresh;

mode->hdisplay = timing->xres;
mode->hsync_start = mode->hdisplay + timing->left_margin;
Expand All @@ -57,6 +58,12 @@ convert_to_display_mode(struct drm_display_mode *mode,
mode->vsync_start = mode->vdisplay + timing->upper_margin;
mode->vsync_end = mode->vsync_start + timing->vsync_len;
mode->vtotal = mode->vsync_end + timing->lower_margin;

if (timing->vmode & FB_VMODE_INTERLACED)
mode->flags |= DRM_MODE_FLAG_INTERLACE;

if (timing->vmode & FB_VMODE_DOUBLE)
mode->flags |= DRM_MODE_FLAG_DBLSCAN;
}

/* convert drm_display_mode to exynos_video_timings */
Expand All @@ -69,7 +76,7 @@ convert_to_video_timing(struct fb_videomode *timing,
memset(timing, 0, sizeof(*timing));

timing->pixclock = mode->clock * 1000;
timing->refresh = mode->vrefresh;
timing->refresh = drm_mode_vrefresh(mode);

timing->xres = mode->hdisplay;
timing->left_margin = mode->hsync_start - mode->hdisplay;
Expand Down

0 comments on commit 8b58dfe

Please sign in to comment.