diff options
| author | Qiang Yu <[email protected]> | 2020-01-16 13:11:56 +0000 |
|---|---|---|
| committer | Qiang Yu <[email protected]> | 2020-01-27 14:01:15 +0000 |
| commit | 2081e8dcf1ee7170c67c0891da5487ac7091d2df (patch) | |
| tree | 9484b5fd71f566361ec48fdefcae2a7053feff8c /drivers/gpu/drm/lima/lima_sched.h | |
| parent | drm/lima: support heap buffer creation (diff) | |
| download | kernel-2081e8dcf1ee7170c67c0891da5487ac7091d2df.tar.gz kernel-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 <[email protected]>
Tested-by: Andreas Baierl <[email protected]>
Signed-off-by: Qiang Yu <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
Diffstat (limited to 'drivers/gpu/drm/lima/lima_sched.h')
| -rw-r--r-- | drivers/gpu/drm/lima/lima_sched.h | 6 |
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, |
