Scaling engine interrupts need to be enabled/disabled as and when memwrite is enabled and disabled. The reason being scaling engine interrupts are used only by the memory writeout layer.
This patch depends on:
"[Patch v5,1/3] drm: mali-dp: Add support for writeback on DP550/DP650"
Change-Id: Ic78aa5cd7b53998a1947067c4a15c19de239583b Signed-off-by: Ayan Kumar Halder ayan.halder@arm.com --- drivers/gpu/drm/arm/malidp_hw.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/arm/malidp_hw.c b/drivers/gpu/drm/arm/malidp_hw.c index f5633bc..90d76e4 100644 --- a/drivers/gpu/drm/arm/malidp_hw.c +++ b/drivers/gpu/drm/arm/malidp_hw.c @@ -621,12 +621,14 @@ static int malidp550_enable_memwrite(struct malidp_hw_device *hwdev, malidp_hw_setbits(hwdev, MALIDP550_SE_MEMWRITE_ONESHOT | MALIDP_SE_MEMWRITE_EN, MALIDP550_SE_CONTROL);
+ malidp_se_irq_hw_init(hwdev); return 0; }
static void malidp550_disable_memwrite(struct malidp_hw_device *hwdev) { u32 base = malidp_get_block_base(hwdev, MALIDP_DE_BLOCK); + malidp_se_irq_fini(hwdev); malidp_hw_clearbits(hwdev, MALIDP550_SE_MEMWRITE_ONESHOT | MALIDP_SE_MEMWRITE_EN, MALIDP550_SE_CONTROL); malidp_hw_clearbits(hwdev, MALIDP_SCALE_ENGINE_EN, base + MALIDP_DE_DISPLAY_FUNC);