From: Joey Lu <[email protected]>
vs_primary_plane_atomic_disable() calls regmap_set_bits() on
VSDC_FB_CONFIG_EX_FB_EN instead of regmap_clear_bits(), so disabling
the primary plane on DC8200-family hardware actually leaves the
framebuffer enable bit instead of clearing it.
Fixes: dbf21777caa8 ("drm: verisilicon: add a driver for Verisilicon display
controllers")
Signed-off-by: Joey Lu <[email protected]>
[Icenowy: rebased on top of torvalds/master and reworked the commit
message]
Signed-off-by: Icenowy Zheng <[email protected]>
---
drivers/gpu/drm/verisilicon/vs_primary_plane.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/verisilicon/vs_primary_plane.c
b/drivers/gpu/drm/verisilicon/vs_primary_plane.c
index 8e94491693019..d5563c3b825c3 100644
--- a/drivers/gpu/drm/verisilicon/vs_primary_plane.c
+++ b/drivers/gpu/drm/verisilicon/vs_primary_plane.c
@@ -88,8 +88,8 @@ static void vs_primary_plane_atomic_disable(struct drm_plane
*plane,
unsigned int output = vcrtc->id;
struct vs_dc *dc = vcrtc->dc;
- regmap_set_bits(dc->regs, VSDC_FB_CONFIG_EX(output),
- VSDC_FB_CONFIG_EX_FB_EN);
+ regmap_clear_bits(dc->regs, VSDC_FB_CONFIG_EX(output),
+ VSDC_FB_CONFIG_EX_FB_EN);
vs_primary_plane_commit(dc, output);
}
--
2.56.0