Disable relay mode at the end of LUT programming to make sure that the
processed image goes through.

Signed-off-by: AngeloGioacchino Del Regno 
<angelogioacchino.delre...@collabora.com>
---
 drivers/gpu/drm/mediatek/mtk_disp_gamma.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_disp_gamma.c 
b/drivers/gpu/drm/mediatek/mtk_disp_gamma.c
index d5da3e84cd53..44f397f88d0a 100644
--- a/drivers/gpu/drm/mediatek/mtk_disp_gamma.c
+++ b/drivers/gpu/drm/mediatek/mtk_disp_gamma.c
@@ -20,6 +20,7 @@
 #define DISP_GAMMA_EN                          0x0000
 #define GAMMA_EN                                       BIT(0)
 #define DISP_GAMMA_CFG                         0x0020
+#define GAMMA_RELAY_MODE                               BIT(0)
 #define GAMMA_LUT_EN                                   BIT(1)
 #define GAMMA_DITHERING                                        BIT(2)
 #define DISP_GAMMA_SIZE                                0x0030
@@ -184,6 +185,9 @@ void mtk_gamma_set_common(struct device *dev, void __iomem 
*regs, struct drm_crt
        /* Enable the gamma table */
        cfg_val |= FIELD_PREP(GAMMA_LUT_EN, 1);
 
+       /* Disable RELAY mode to pass the processed image */
+       cfg_val &= ~GAMMA_RELAY_MODE;
+
        writel(cfg_val, regs + DISP_GAMMA_CFG);
 }
 
-- 
2.40.1

Reply via email to