1 | /* SPDX-License-Identifier: GPL-2.0 OR MIT */ |
---|---|
2 | /* Copyright 2017-2019 Qiang Yu <yuq825@gmail.com> */ |
3 | |
4 | #ifndef __LIMA_DRV_H__ |
5 | #define __LIMA_DRV_H__ |
6 | |
7 | #include <drm/drm_file.h> |
8 | |
9 | #include "lima_ctx.h" |
10 | |
11 | extern int lima_sched_timeout_ms; |
12 | extern uint lima_heap_init_nr_pages; |
13 | extern uint lima_max_error_tasks; |
14 | extern uint lima_job_hang_limit; |
15 | |
16 | struct lima_vm; |
17 | struct lima_bo; |
18 | struct lima_sched_task; |
19 | |
20 | struct drm_lima_gem_submit_bo; |
21 | |
22 | struct lima_drm_priv { |
23 | struct lima_vm *vm; |
24 | struct lima_ctx_mgr ctx_mgr; |
25 | }; |
26 | |
27 | struct lima_submit { |
28 | struct lima_ctx *ctx; |
29 | int pipe; |
30 | u32 flags; |
31 | |
32 | struct drm_lima_gem_submit_bo *bos; |
33 | struct lima_bo **lbos; |
34 | u32 nr_bos; |
35 | |
36 | u32 in_sync[2]; |
37 | u32 out_sync; |
38 | |
39 | struct lima_sched_task *task; |
40 | }; |
41 | |
42 | static inline struct lima_drm_priv * |
43 | to_lima_drm_priv(struct drm_file *file) |
44 | { |
45 | return file->driver_priv; |
46 | } |
47 | |
48 | #endif |
49 |