From 998cc9d887d980253db0f9f44f24f07a6076e1bd Mon Sep 17 00:00:00 2001 From: Huang Jiachai Date: Mon, 12 Dec 2016 15:18:44 +0800 Subject: [PATCH] drm/rockchip: update pre dither down config between vop big and hdmi/edp/dp connect mode is 10bit, so we disable pre dither down, otherwise enable pre dither down. Change-Id: If18ed05647d2eb3c6d5c159dd365ea66e55cd408 Signed-off-by: Huang Jiachai --- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index 0ef34f76b908..75c764ccb6ef 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c @@ -1435,19 +1435,21 @@ static void vop_crtc_enable(struct drm_crtc *crtc) VOP_CTRL_SET(vop, out_mode, s->output_mode); switch (s->bus_format) { case MEDIA_BUS_FMT_RGB565_1X16: - val = DITHER_DOWN_EN(1) | DITHER_DOWN_MODE(RGB888_TO_RGB565) | - PRE_DITHER_DOWN_EN(1); + val = DITHER_DOWN_EN(1) | DITHER_DOWN_MODE(RGB888_TO_RGB565); break; case MEDIA_BUS_FMT_RGB666_1X18: case MEDIA_BUS_FMT_RGB666_1X24_CPADHI: - val = DITHER_DOWN_EN(1) | DITHER_DOWN_MODE(RGB888_TO_RGB666) | - PRE_DITHER_DOWN_EN(1); + val = DITHER_DOWN_EN(1) | DITHER_DOWN_MODE(RGB888_TO_RGB666); break; case MEDIA_BUS_FMT_RGB888_1X24: default: val = DITHER_DOWN_EN(0) | PRE_DITHER_DOWN_EN(0); break; } + if (s->output_mode == ROCKCHIP_OUT_MODE_AAAA) + val |= PRE_DITHER_DOWN_EN(0); + else + val |= PRE_DITHER_DOWN_EN(1); val |= DITHER_DOWN_MODE_SEL(DITHER_DOWN_ALLEGRO); VOP_CTRL_SET(vop, dither_down, val); -- 2.34.1