Using non-zero AXI IDs for anything other than the display channels
collides with the PRG AXI snooping, so only do this if there is no
PRG present.

Signed-off-by: Lucas Stach <l.st...@pengutronix.de>
---
 drivers/gpu/ipu-v3/ipu-image-convert.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/ipu-v3/ipu-image-convert.c 
b/drivers/gpu/ipu-v3/ipu-image-convert.c
index 805b6fa7b5f4..524a717ab28e 100644
--- a/drivers/gpu/ipu-v3/ipu-image-convert.c
+++ b/drivers/gpu/ipu-v3/ipu-image-convert.c
@@ -671,7 +671,12 @@ static void init_idmac_channel(struct 
ipu_image_convert_ctx *ctx,
        ipu_ic_task_idma_init(chan->ic, channel, width, height,
                              burst_size, rot_mode);
 
-       ipu_cpmem_set_axi_id(channel, 1);
+       /*
+        * Setting a non-zero AXI ID collides with the PRG AXI snooping, so
+        * only do this when there is no PRG present.
+        */
+       if (!channel->ipu->prg_priv)
+               ipu_cpmem_set_axi_id(channel, 1);
 
        ipu_idmac_set_double_buffer(channel, ctx->double_buffering);
 }
-- 
2.11.0

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to