From 5192df6d13aa5ad12c5ade843a598b428760d9c0 Mon Sep 17 00:00:00 2001 From: "Vadim V. Vlasov" Date: Fri, 11 Dec 2020 16:55:06 +0300 Subject: [PATCH] drm/panfrost: Trim affinity for Mali T620 libmali uses 0xf affinity instead of 0xff for jobs in slot 1. Looks like this resolves problem with cache incoherency. --- drivers/gpu/drm/panfrost/panfrost_job.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/panfrost/panfrost_job.c b/drivers/gpu/drm/panfrost/panfrost_job.c index 04e6f6f9b742..28a1a8f50fad 100644 --- a/drivers/gpu/drm/panfrost/panfrost_job.c +++ b/drivers/gpu/drm/panfrost/panfrost_job.c @@ -143,6 +143,8 @@ static void panfrost_job_write_affinity(struct panfrost_device *pfdev, * multiple (2) coherent core groups */ affinity = pfdev->features.shader_present; + if (panfrost_model_eq(pfdev, 0x620) && js == 1) + affinity &= 0xf; job_write(pfdev, JS_AFFINITY_NEXT_LO(js), affinity & 0xFFFFFFFF); job_write(pfdev, JS_AFFINITY_NEXT_HI(js), affinity >> 32); -- 2.31.1