diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.h')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_gk20a.h | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.h b/drivers/gpu/nvgpu/gk20a/channel_gk20a.h index 4b1cb351..cdf75a9a 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.h | |||
@@ -24,6 +24,9 @@ | |||
24 | #ifndef CHANNEL_GK20A_H | 24 | #ifndef CHANNEL_GK20A_H |
25 | #define CHANNEL_GK20A_H | 25 | #define CHANNEL_GK20A_H |
26 | 26 | ||
27 | /* TODO: To be removed when work_struct update_fn_work is moved out of common code */ | ||
28 | #include <linux/workqueue.h> | ||
29 | |||
27 | #include <linux/stacktrace.h> | 30 | #include <linux/stacktrace.h> |
28 | #include <nvgpu/list.h> | 31 | #include <nvgpu/list.h> |
29 | 32 | ||
@@ -374,16 +377,6 @@ struct channel_gk20a *gk20a_open_new_channel_with_cb(struct gk20a *g, | |||
374 | int runlist_id, | 377 | int runlist_id, |
375 | bool is_privileged_channel); | 378 | bool is_privileged_channel); |
376 | 379 | ||
377 | int gk20a_submit_channel_gpfifo(struct channel_gk20a *c, | ||
378 | struct nvgpu_gpfifo *gpfifo, | ||
379 | struct nvgpu_submit_gpfifo_args *args, | ||
380 | u32 num_entries, | ||
381 | u32 flags, | ||
382 | struct nvgpu_fence *fence, | ||
383 | struct gk20a_fence **fence_out, | ||
384 | bool force_need_sync_fence, | ||
385 | struct fifo_profile_gk20a *profile); | ||
386 | |||
387 | int gk20a_channel_alloc_gpfifo(struct channel_gk20a *c, | 380 | int gk20a_channel_alloc_gpfifo(struct channel_gk20a *c, |
388 | unsigned int num_entries, | 381 | unsigned int num_entries, |
389 | unsigned int num_inflight_jobs, | 382 | unsigned int num_inflight_jobs, |
@@ -408,4 +401,20 @@ int gk20a_channel_set_runlist_interleave(struct channel_gk20a *ch, | |||
408 | void gk20a_channel_event_id_post_event(struct channel_gk20a *ch, | 401 | void gk20a_channel_event_id_post_event(struct channel_gk20a *ch, |
409 | u32 event_id); | 402 | u32 event_id); |
410 | 403 | ||
404 | int channel_gk20a_alloc_job(struct channel_gk20a *c, | ||
405 | struct channel_gk20a_job **job_out); | ||
406 | void channel_gk20a_free_job(struct channel_gk20a *c, | ||
407 | struct channel_gk20a_job *job); | ||
408 | u32 nvgpu_get_gp_free_count(struct channel_gk20a *c); | ||
409 | u32 nvgpu_gp_free_count(struct channel_gk20a *c); | ||
410 | int gk20a_channel_add_job(struct channel_gk20a *c, | ||
411 | struct channel_gk20a_job *job, | ||
412 | bool skip_buffer_refcounting); | ||
413 | void free_priv_cmdbuf(struct channel_gk20a *c, | ||
414 | struct priv_cmd_entry *e); | ||
415 | void gk20a_channel_clean_up_jobs(struct channel_gk20a *c, | ||
416 | bool clean_all); | ||
417 | |||
418 | u32 nvgpu_get_gpfifo_entry_size(void); | ||
419 | |||
411 | #endif /* CHANNEL_GK20A_H */ | 420 | #endif /* CHANNEL_GK20A_H */ |