summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
diff options
context:
space:
mode:
authorLakshmanan M <lm@nvidia.com>2016-06-29 06:36:39 -0400
committerVijayakumar Subbu <vsubbu@nvidia.com>2016-07-20 06:09:28 -0400
commit89aecd1202b49727e940069f2a6feb5c3cf4c927 (patch)
tree8a0d3a493b389167ce1d93e55f23e114ec2cbd38 /drivers/gpu/nvgpu/gk20a/channel_gk20a.h
parentf6ebdc5f2916706f7a61983567420e0985faeeb1 (diff)
gpu: nvgpu: Add nvgpu infra to allow kernel to create privileged CE channels
Added interface to allow kernel to create privileged CE channels for page migration and clearing support between sysmem and videmem. JIRA DNVGPU-53 Change-Id: I3e18d18403809c9e64fa45d40b6c4e3844992506 Signed-off-by: Lakshmanan M <lm@nvidia.com> Reviewed-on: http://git-master/r/1173085 GVS: Gerrit_Virtual_Submit Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/channel_gk20a.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.h b/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
index 4b5fe1b3..971175f2 100644
--- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.h
@@ -265,7 +265,9 @@ struct channel_gk20a *gk20a_open_new_channel(struct gk20a *g,
265 bool is_privileged_channel); 265 bool is_privileged_channel);
266struct channel_gk20a *gk20a_open_new_channel_with_cb(struct gk20a *g, 266struct channel_gk20a *gk20a_open_new_channel_with_cb(struct gk20a *g,
267 void (*update_fn)(struct channel_gk20a *, void *), 267 void (*update_fn)(struct channel_gk20a *, void *),
268 void *update_fn_data); 268 void *update_fn_data,
269 int runlist_id,
270 bool is_privileged_channel);
269void channel_gk20a_unbind(struct channel_gk20a *ch_gk20a); 271void channel_gk20a_unbind(struct channel_gk20a *ch_gk20a);
270 272
271int gk20a_submit_channel_gpfifo(struct channel_gk20a *c, 273int gk20a_submit_channel_gpfifo(struct channel_gk20a *c,
@@ -295,6 +297,8 @@ int gk20a_channel_get_timescale_from_timeslice(struct gk20a *g,
295 int *__timeslice_timeout, int *__timeslice_scale); 297 int *__timeslice_timeout, int *__timeslice_scale);
296int gk20a_channel_set_priority(struct channel_gk20a *ch, u32 priority); 298int gk20a_channel_set_priority(struct channel_gk20a *ch, u32 priority);
297int gk20a_channel_set_timeslice(struct channel_gk20a *ch, u32 timeslice); 299int gk20a_channel_set_timeslice(struct channel_gk20a *ch, u32 timeslice);
300int gk20a_channel_set_runlist_interleave(struct channel_gk20a *ch,
301 u32 level);
298void gk20a_channel_event_id_post_event(struct channel_gk20a *ch, 302void gk20a_channel_event_id_post_event(struct channel_gk20a *ch,
299 int event_id); 303 int event_id);
300 304