The plane's opacity should be reseted while the plane
is disabled. It prevents from seeing a possible global
or layer background color set earlier.

Signed-off-by: Yannick Fertre <yannick.fer...@foss.st.com>
---
 drivers/gpu/drm/stm/ltdc.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/stm/ltdc.c b/drivers/gpu/drm/stm/ltdc.c
index 5576fdae4962..cb4f08673a64 100644
--- a/drivers/gpu/drm/stm/ltdc.c
+++ b/drivers/gpu/drm/stm/ltdc.c
@@ -1514,6 +1514,9 @@ static void ltdc_plane_atomic_disable(struct drm_plane 
*plane,
        /* Disable layer */
        regmap_write_bits(ldev->regmap, LTDC_L1CR + lofs, LXCR_LEN | 
LXCR_CLUTEN |  LXCR_HMEN, 0);
 
+       /* Reset the layer transparency to hide any related background color */
+       regmap_write_bits(ldev->regmap, LTDC_L1CACR + lofs, LXCACR_CONSTA, 
0x00);
+
        /* Commit shadow registers = update plane at next vblank */
        if (ldev->caps.plane_reg_shadow)
                regmap_write_bits(ldev->regmap, LTDC_L1RCR + lofs,
-- 
2.34.1

Reply via email to