diff options
Diffstat (limited to 'drivers/gpu/drm/meson/meson_venc.c')
-rw-r--r-- | drivers/gpu/drm/meson/meson_venc.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/gpu/drm/meson/meson_venc.c b/drivers/gpu/drm/meson/meson_venc.c index bcffe8ea642c..e95e0e7a7fa1 100644 --- a/drivers/gpu/drm/meson/meson_venc.c +++ b/drivers/gpu/drm/meson/meson_venc.c | |||
@@ -983,6 +983,13 @@ void meson_venc_hdmi_mode_set(struct meson_drm *priv, int vic, | |||
983 | unsigned int sof_lines; | 983 | unsigned int sof_lines; |
984 | unsigned int vsync_lines; | 984 | unsigned int vsync_lines; |
985 | 985 | ||
986 | /* Use VENCI for 480i and 576i and double HDMI pixels */ | ||
987 | if (mode->flags & DRM_MODE_FLAG_DBLCLK) { | ||
988 | hdmi_repeat = true; | ||
989 | use_enci = true; | ||
990 | venc_hdmi_latency = 1; | ||
991 | } | ||
992 | |||
986 | if (meson_venc_hdmi_supported_vic(vic)) { | 993 | if (meson_venc_hdmi_supported_vic(vic)) { |
987 | vmode = meson_venc_hdmi_get_vic_vmode(vic); | 994 | vmode = meson_venc_hdmi_get_vic_vmode(vic); |
988 | if (!vmode) { | 995 | if (!vmode) { |
@@ -994,13 +1001,7 @@ void meson_venc_hdmi_mode_set(struct meson_drm *priv, int vic, | |||
994 | } else { | 1001 | } else { |
995 | meson_venc_hdmi_get_dmt_vmode(mode, &vmode_dmt); | 1002 | meson_venc_hdmi_get_dmt_vmode(mode, &vmode_dmt); |
996 | vmode = &vmode_dmt; | 1003 | vmode = &vmode_dmt; |
997 | } | 1004 | use_enci = false; |
998 | |||
999 | /* Use VENCI for 480i and 576i and double HDMI pixels */ | ||
1000 | if (mode->flags & DRM_MODE_FLAG_DBLCLK) { | ||
1001 | hdmi_repeat = true; | ||
1002 | use_enci = true; | ||
1003 | venc_hdmi_latency = 1; | ||
1004 | } | 1005 | } |
1005 | 1006 | ||
1006 | /* Repeat VENC pixels for 480/576i/p, 720p50/60 and 1080p50/60 */ | 1007 | /* Repeat VENC pixels for 480/576i/p, 720p50/60 and 1080p50/60 */ |