diff --git a/drivers/video/rockchip/lcdc/rk3368_lcdc.c b/drivers/video/rockchip/lcdc/rk3368_lcdc.c index f6b777171258..58151492177f 100644 --- a/drivers/video/rockchip/lcdc/rk3368_lcdc.c +++ b/drivers/video/rockchip/lcdc/rk3368_lcdc.c @@ -1813,7 +1813,10 @@ static int rk3368_load_screen(struct rk_lcdc_driver *dev_drv, bool initscreen) break; case SCREEN_HDMI: /*face = OUT_RGB_AAA;*/ - dev_drv->overlay_mode = VOP_YUV_DOMAIN; + if (screen->color_mode == COLOR_RGB) + dev_drv->overlay_mode = VOP_RGB_DOMAIN; + else + dev_drv->overlay_mode = VOP_YUV_DOMAIN; mask = m_HDMI_OUT_EN | m_RGB_OUT_EN; val = v_HDMI_OUT_EN(1) | v_RGB_OUT_EN(0); lcdc_msk_reg(lcdc_dev, SYS_CTRL, mask, val);