From bfcf44d74ae66aecddd4e0713136726c2910d2a3 Mon Sep 17 00:00:00 2001 From: Yu Qiaowei Date: Wed, 1 Mar 2023 11:38:42 +0800 Subject: [PATCH] video: rockchip: rga3: clean timeout job before matching scheduler Signed-off-by: Yu Qiaowei Change-Id: I3f476ac2b519953a290587bb7399c68153a5bae3 --- drivers/video/rockchip/rga3/rga_job.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/video/rockchip/rga3/rga_job.c b/drivers/video/rockchip/rga3/rga_job.c index bec9bd47df2f..7810dfcb9968 100644 --- a/drivers/video/rockchip/rga3/rga_job.c +++ b/drivers/video/rockchip/rga3/rga_job.c @@ -355,8 +355,14 @@ static void rga_job_insert_todo_list(struct rga_job *job) static struct rga_scheduler_t *rga_job_schedule(struct rga_job *job) { + int i; struct rga_scheduler_t *scheduler = NULL; + for (i = 0; i < rga_drvdata->num_of_scheduler; i++) { + scheduler = rga_drvdata->scheduler[i]; + rga_job_scheduler_timeout_clean(scheduler); + } + if (rga_drvdata->num_of_scheduler > 1) { job->core = rga_job_assign(job); if (job->core <= 0) { @@ -376,8 +382,6 @@ static struct rga_scheduler_t *rga_job_schedule(struct rga_job *job) return NULL; } - rga_job_scheduler_timeout_clean(scheduler); - return scheduler; }