summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/vgpu/vgpu.h
diff options
context:
space:
mode:
authorAingara Paramakuru <aparamakuru@nvidia.com>2015-09-29 12:56:05 -0400
committerTerje Bergstrom <tbergstrom@nvidia.com>2015-10-22 10:39:56 -0400
commitee18a3ae2699513ab3762757432355b5624ce4a0 (patch)
tree010f362b70e58b095f19e1d829f35a81fe9ba7de /drivers/gpu/nvgpu/vgpu/vgpu.h
parent9165427ef7bb0d303a37214a3f4e68efebaf1418 (diff)
gpu: nvgpu: vgpu: re-factor gr ctx management
Move the gr ctx management to the GPU HAL. Also, add support for a new interface to allocate gr ctxsw buffers. Bug 1677153 Change-Id: I5a7980acf4de0de7dbd94b7dd20f91a6196dc989 Signed-off-by: Aingara Paramakuru <aparamakuru@nvidia.com> Reviewed-on: http://git-master/r/806961 Signed-off-by: Seema Khowala <seemaj@nvidia.com> Reviewed-on: http://git-master/r/817009 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/vgpu/vgpu.h')
-rw-r--r--drivers/gpu/nvgpu/vgpu/vgpu.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/vgpu/vgpu.h b/drivers/gpu/nvgpu/vgpu/vgpu.h
index f1590593..ffb863cd 100644
--- a/drivers/gpu/nvgpu/vgpu/vgpu.h
+++ b/drivers/gpu/nvgpu/vgpu/vgpu.h
@@ -29,6 +29,14 @@ u64 vgpu_bar1_map(struct gk20a *g, struct sg_table **sgt, u64 size);
29int vgpu_gr_isr(struct gk20a *g, struct tegra_vgpu_gr_intr_info *info); 29int vgpu_gr_isr(struct gk20a *g, struct tegra_vgpu_gr_intr_info *info);
30int vgpu_gr_nonstall_isr(struct gk20a *g, 30int vgpu_gr_nonstall_isr(struct gk20a *g,
31 struct tegra_vgpu_gr_nonstall_intr_info *info); 31 struct tegra_vgpu_gr_nonstall_intr_info *info);
32int vgpu_gr_alloc_gr_ctx(struct gk20a *g,
33 struct gr_ctx_desc **__gr_ctx,
34 struct vm_gk20a *vm,
35 u32 class,
36 u32 flags);
37void vgpu_gr_free_gr_ctx(struct gk20a *g, struct vm_gk20a *vm,
38 struct gr_ctx_desc *gr_ctx);
39int vgpu_gr_init_ctx_state(struct gk20a *g);
32int vgpu_fifo_isr(struct gk20a *g, struct tegra_vgpu_fifo_intr_info *info); 40int vgpu_fifo_isr(struct gk20a *g, struct tegra_vgpu_fifo_intr_info *info);
33int vgpu_fifo_nonstall_isr(struct gk20a *g, 41int vgpu_fifo_nonstall_isr(struct gk20a *g,
34 struct tegra_vgpu_fifo_nonstall_intr_info *info); 42 struct tegra_vgpu_fifo_nonstall_intr_info *info);
@@ -77,6 +85,22 @@ static inline int vgpu_gr_isr(struct gk20a *g,
77{ 85{
78 return 0; 86 return 0;
79} 87}
88static inline int vgpu_gr_alloc_gr_ctx(struct gk20a *g,
89 struct gr_ctx_desc **__gr_ctx,
90 struct vm_gk20a *vm,
91 u32 class,
92 u32 flags)
93{
94 return -ENOSYS;
95}
96static inline void vgpu_gr_free_gr_ctx(struct gk20a *g, struct vm_gk20a *vm,
97 struct gr_ctx_desc *gr_ctx)
98{
99}
100static inline int vgpu_gr_init_ctx_state(struct gk20a *g)
101{
102 return -ENOSYS;
103}
80static inline int vgpu_fifo_isr(struct gk20a *g, 104static inline int vgpu_fifo_isr(struct gk20a *g,
81 struct tegra_vgpu_fifo_intr_info *info) 105 struct tegra_vgpu_fifo_intr_info *info)
82{ 106{