diff options
author | Lakshmanan M <lm@nvidia.com> | 2016-06-29 06:36:39 -0400 |
---|---|---|
committer | Vijayakumar Subbu <vsubbu@nvidia.com> | 2016-07-20 06:09:28 -0400 |
commit | 89aecd1202b49727e940069f2a6feb5c3cf4c927 (patch) | |
tree | 8a0d3a493b389167ce1d93e55f23e114ec2cbd38 /drivers/gpu/nvgpu/gk20a/mm_gk20a.h | |
parent | f6ebdc5f2916706f7a61983567420e0985faeeb1 (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.h | 6 |
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); | |||
307 | int gk20a_init_mm_setup_sw(struct gk20a *g); | 307 | int gk20a_init_mm_setup_sw(struct gk20a *g); |
308 | int gk20a_init_mm_setup_hw(struct gk20a *g); | 308 | int gk20a_init_mm_setup_hw(struct gk20a *g); |
309 | void gk20a_mm_debugfs_init(struct device *dev); | 309 | void gk20a_mm_debugfs_init(struct device *dev); |
310 | void gk20a_init_mm_ce_context(struct gk20a *g); | ||
310 | 311 | ||
311 | int gk20a_mm_fb_flush(struct gk20a *g); | 312 | int gk20a_mm_fb_flush(struct gk20a *g); |
312 | void gk20a_mm_l2_flush(struct gk20a *g, bool invalidate); | 313 | void 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 | ||
393 | int gk20a_mm_init(struct mm_gk20a *mm); | 399 | int gk20a_mm_init(struct mm_gk20a *mm); |