summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/lima/lima_sched.h
diff options
context:
space:
mode:
authorQiang Yu <yuq825@gmail.com>2020-01-16 21:11:56 +0800
committerQiang Yu <yuq825@gmail.com>2020-01-27 22:01:15 +0800
commit2081e8dcf1ee7170c67c0891da5487ac7091d2df (patch)
tree9484b5fd71f566361ec48fdefcae2a7053feff8c /drivers/gpu/drm/lima/lima_sched.h
parent6aebc51d7aeff5a30d86485f320f0c871b5f23a4 (diff)
downloadlinux-2081e8dcf1ee7170c67c0891da5487ac7091d2df.tar.gz
linux-2081e8dcf1ee7170c67c0891da5487ac7091d2df.tar.bz2
linux-2081e8dcf1ee7170c67c0891da5487ac7091d2df.zip
drm/lima: recover task by enlarging heap buffer
Increase heap buffer backup memory when GP receive PLBU out of memory interrupt, then resume the task. Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com> Tested-by: Andreas Baierl <ichgeh@imkreisrum.de> Signed-off-by: Qiang Yu <yuq825@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200116131157.13346-5-yuq825@gmail.com
Diffstat (limited to 'drivers/gpu/drm/lima/lima_sched.h')
-rw-r--r--drivers/gpu/drm/lima/lima_sched.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/lima/lima_sched.h b/drivers/gpu/drm/lima/lima_sched.h
index 1d814fecbcc0..d64393fb50a9 100644
--- a/drivers/gpu/drm/lima/lima_sched.h
+++ b/drivers/gpu/drm/lima/lima_sched.h
@@ -20,6 +20,9 @@ struct lima_sched_task {
struct lima_bo **bos;
int num_bos;
+ bool recoverable;
+ struct lima_bo *heap;
+
/* pipe fence */
struct dma_fence *fence;
};
@@ -68,6 +71,9 @@ struct lima_sched_pipe {
void (*task_fini)(struct lima_sched_pipe *pipe);
void (*task_error)(struct lima_sched_pipe *pipe);
void (*task_mmu_error)(struct lima_sched_pipe *pipe);
+ int (*task_recover)(struct lima_sched_pipe *pipe);
+
+ struct work_struct recover_work;
};
int lima_sched_task_init(struct lima_sched_task *task,