summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/mm_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/mm_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/mm_gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/mm_gk20a.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.h b/drivers/gpu/nvgpu/gk20a/mm_gk20a.h
index 66e46480..184c1f71 100644
--- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.h
@@ -307,6 +307,7 @@ int gk20a_init_mm_support(struct gk20a *g);
307int gk20a_init_mm_setup_sw(struct gk20a *g); 307int gk20a_init_mm_setup_sw(struct gk20a *g);
308int gk20a_init_mm_setup_hw(struct gk20a *g); 308int gk20a_init_mm_setup_hw(struct gk20a *g);
309void gk20a_mm_debugfs_init(struct device *dev); 309void gk20a_mm_debugfs_init(struct device *dev);
310void gk20a_init_mm_ce_context(struct gk20a *g);
310 311
311int gk20a_mm_fb_flush(struct gk20a *g); 312int gk20a_mm_fb_flush(struct gk20a *g);
312void gk20a_mm_l2_flush(struct gk20a *g, bool invalidate); 313void gk20a_mm_l2_flush(struct gk20a *g, bool invalidate);
@@ -349,6 +350,10 @@ struct mm_gk20a {
349 struct vm_gk20a vm; 350 struct vm_gk20a vm;
350 } cde; 351 } cde;
351 352
353 struct {
354 struct vm_gk20a vm;
355 } ce;
356
352 struct mutex l2_op_lock; 357 struct mutex l2_op_lock;
353#ifdef CONFIG_ARCH_TEGRA_18x_SOC 358#ifdef CONFIG_ARCH_TEGRA_18x_SOC
354 struct mem_desc bar2_desc; 359 struct mem_desc bar2_desc;
@@ -388,6 +393,7 @@ struct mm_gk20a {
388 393
389 size_t vidmem_size; 394 size_t vidmem_size;
390 struct device vidmem_dev; 395 struct device vidmem_dev;
396 u32 ce_vidmem_ctx_id;
391}; 397};
392 398
393int gk20a_mm_init(struct mm_gk20a *mm); 399int gk20a_mm_init(struct mm_gk20a *mm);