From 2224d6642136767ec01d146d48ffc881b55b32f7 Mon Sep 17 00:00:00 2001 From: Brajesh Gupta Date: Wed, 29 Jul 2026 09:49:08 +0530 Subject: [PATCH] drm/imagination: Set scheduler timeout period higher than Firmware timeout Firmware schedules workloads on the GPU and tracks progress. It is also responsible for detecting any lockup and triggering recovery. Update the GPU scheduler timeout to a reasonably high value to avoid premature timeout at the GPU scheduler end. Signed-off-by: Brajesh Gupta Reviewed-by: Alessio Belle Link: https://patch.msgid.link/20260729-sched_timeout-v1-1-4adc801b1997@imgtec.com Signed-off-by: Alessio Belle --- drivers/gpu/drm/imagination/pvr_queue.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/imagination/pvr_queue.c b/drivers/gpu/drm/imagination/pvr_queue.c index 54e88b4208d7..09993e858df8 100644 --- a/drivers/gpu/drm/imagination/pvr_queue.c +++ b/drivers/gpu/drm/imagination/pvr_queue.c @@ -17,6 +17,7 @@ #include "pvr_rogue_fwif_client.h" #define MAX_DEADLINE_MS 30000 +#define SCHED_TIMEOUT_PERIOD (2 * MAX_DEADLINE_MS) #define CTX_COMPUTE_CCCB_SIZE_LOG2 15 #define CTX_FRAG_CCCB_SIZE_LOG2 15 @@ -1283,7 +1284,7 @@ struct pvr_queue *pvr_queue_create(struct pvr_context *ctx, .submit_wq = pvr_dev->sched_wq, .credit_limit = 64 * 1024, .hang_limit = 1, - .timeout = msecs_to_jiffies(500), + .timeout = msecs_to_jiffies(SCHED_TIMEOUT_PERIOD), .timeout_wq = pvr_dev->sched_wq, .name = "pvr-queue", .dev = pvr_dev->base.dev,