From 0e6433e98feb1678d126d231f3296a17ef2f5c5f Mon Sep 17 00:00:00 2001 From: Sandy Huang Date: Sat, 20 Nov 2021 15:48:51 +0800 Subject: [PATCH] drm/rockchip: vop2: add support RGB101010 and update dither config Signed-off-by: Sandy Huang Change-Id: I616225d36ff3a7385c5937fc663ff063f0683b0c --- drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c index 84d0bbee6f0d..a2ff256fb2e9 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c @@ -4890,12 +4890,14 @@ static void vop2_dither_setup(struct drm_crtc *crtc) case MEDIA_BUS_FMT_RGB565_1X16: VOP_MODULE_SET(vop2, vp, dither_down_en, 1); VOP_MODULE_SET(vop2, vp, dither_down_mode, RGB888_TO_RGB565); + VOP_MODULE_SET(vop2, vp, pre_dither_down_en, 1); break; case MEDIA_BUS_FMT_RGB666_1X18: case MEDIA_BUS_FMT_RGB666_1X24_CPADHI: case MEDIA_BUS_FMT_RGB666_1X7X3_SPWG: VOP_MODULE_SET(vop2, vp, dither_down_en, 1); VOP_MODULE_SET(vop2, vp, dither_down_mode, RGB888_TO_RGB666); + VOP_MODULE_SET(vop2, vp, pre_dither_down_en, 1); break; case MEDIA_BUS_FMT_YUV8_1X24: case MEDIA_BUS_FMT_UYYVYY8_0_5X24: @@ -4904,6 +4906,7 @@ static void vop2_dither_setup(struct drm_crtc *crtc) break; case MEDIA_BUS_FMT_YUV10_1X30: case MEDIA_BUS_FMT_UYYVYY10_0_5X30: + case MEDIA_BUS_FMT_RGB101010_1X30: VOP_MODULE_SET(vop2, vp, dither_down_en, 0); VOP_MODULE_SET(vop2, vp, pre_dither_down_en, 0); break; @@ -4914,12 +4917,10 @@ static void vop2_dither_setup(struct drm_crtc *crtc) case MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA: default: VOP_MODULE_SET(vop2, vp, dither_down_en, 0); - VOP_MODULE_SET(vop2, vp, pre_dither_down_en, 0); + VOP_MODULE_SET(vop2, vp, pre_dither_down_en, 1); break; } - VOP_MODULE_SET(vop2, vp, pre_dither_down_en, - vcstate->output_mode == ROCKCHIP_OUT_MODE_AAAA ? 0 : 1); VOP_MODULE_SET(vop2, vp, dither_down_sel, DITHER_DOWN_ALLEGRO); }