diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2017-12-15 12:04:15 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-01-17 15:29:09 -0500 |
commit | 2f6698b863c9cc1db6455637b7c72e812b470b93 (patch) | |
tree | d0c8abf32d6994b9f54bf5eddafd8316e038c829 /drivers/gpu/nvgpu/gv11b/gr_gv11b.h | |
parent | 6a73114788ffafe4c53771c707ecbd9c9ea0a117 (diff) |
gpu: nvgpu: Make graphics context property of TSG
Move graphics context ownership to TSG instead of channel. Combine
channel_ctx_gk20a and gr_ctx_desc to one structure, because the split
between them was arbitrary. Move context header to be property of
channel.
Bug 1842197
Change-Id: I410e3262f80b318d8528bcbec270b63a2d8d2ff9
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1639532
Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Tested-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Konsta Holtta <kholtta@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gv11b/gr_gv11b.h')
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/gr_gv11b.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/gr_gv11b.h b/drivers/gpu/nvgpu/gv11b/gr_gv11b.h index b69e69bd..022a7698 100644 --- a/drivers/gpu/nvgpu/gv11b/gr_gv11b.h +++ b/drivers/gpu/nvgpu/gv11b/gr_gv11b.h | |||
@@ -41,9 +41,10 @@ struct zbc_s_table { | |||
41 | }; | 41 | }; |
42 | 42 | ||
43 | struct gk20a; | 43 | struct gk20a; |
44 | struct gr_gk20a; | ||
44 | struct zbc_entry; | 45 | struct zbc_entry; |
45 | struct zbc_query_params; | 46 | struct zbc_query_params; |
46 | struct channel_ctx_gk20a; | 47 | struct nvgpu_gr_ctx; |
47 | struct nvgpu_warpstate; | 48 | struct nvgpu_warpstate; |
48 | struct nvgpu_gr_sm_error_state; | 49 | struct nvgpu_gr_sm_error_state; |
49 | struct gr_ctx_desc; | 50 | struct gr_ctx_desc; |
@@ -128,7 +129,7 @@ int gr_gv11b_dump_gr_status_regs(struct gk20a *g, | |||
128 | int gr_gv11b_wait_empty(struct gk20a *g, unsigned long duration_ms, | 129 | int gr_gv11b_wait_empty(struct gk20a *g, unsigned long duration_ms, |
129 | u32 expect_delay); | 130 | u32 expect_delay); |
130 | void gr_gv11b_commit_global_attrib_cb(struct gk20a *g, | 131 | void gr_gv11b_commit_global_attrib_cb(struct gk20a *g, |
131 | struct channel_ctx_gk20a *ch_ctx, | 132 | struct nvgpu_gr_ctx *ch_ctx, |
132 | u64 addr, bool patch); | 133 | u64 addr, bool patch); |
133 | void gr_gv11b_set_gpc_tpc_mask(struct gk20a *g, u32 gpc_index); | 134 | void gr_gv11b_set_gpc_tpc_mask(struct gk20a *g, u32 gpc_index); |
134 | void gr_gv11b_get_access_map(struct gk20a *g, | 135 | void gr_gv11b_get_access_map(struct gk20a *g, |
@@ -222,13 +223,13 @@ unsigned long gr_gv11b_get_max_gfxp_wfi_timeout_count(struct gk20a *g); | |||
222 | void gr_gv11b_ecc_init_scrub_reg(struct gk20a *g); | 223 | void gr_gv11b_ecc_init_scrub_reg(struct gk20a *g); |
223 | 224 | ||
224 | int gr_gv11b_set_ctxsw_preemption_mode(struct gk20a *g, | 225 | int gr_gv11b_set_ctxsw_preemption_mode(struct gk20a *g, |
225 | struct gr_ctx_desc *gr_ctx, | 226 | struct nvgpu_gr_ctx *gr_ctx, |
226 | struct vm_gk20a *vm, u32 class, | 227 | struct vm_gk20a *vm, u32 class, |
227 | u32 graphics_preempt_mode, | 228 | u32 graphics_preempt_mode, |
228 | u32 compute_preempt_mode); | 229 | u32 compute_preempt_mode); |
229 | 230 | ||
230 | void gr_gv11b_update_ctxsw_preemption_mode(struct gk20a *g, | 231 | void gr_gv11b_update_ctxsw_preemption_mode(struct gk20a *g, |
231 | struct channel_ctx_gk20a *ch_ctx, | 232 | struct channel_gk20a *ch_ctx, |
232 | struct nvgpu_mem *mem); | 233 | struct nvgpu_mem *mem); |
233 | 234 | ||
234 | #endif | 235 | #endif |