diff options
author | Richard Zhao <rizhao@nvidia.com> | 2018-02-26 20:58:14 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-03-06 17:52:30 -0500 |
commit | d6b5d74c5ede5fb620b056286f9f615566f84b29 (patch) | |
tree | ed98310272f5626aede13f73904a2478a2f05a42 | |
parent | 98d91dd2609faadfa4aa9aafad5e295c924ae08f (diff) |
gpu: nvgpu: make gr functions that are used by vsrv global
Fixed vsrv link errors for gr unification.
Jira VQRM-2982
Change-Id: Icd46792191f1a9aaefbf86d2f3c0b4d5bce2384e
Signed-off-by: Richard Zhao <rizhao@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1664706
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gr_gk20a.c | 8 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gr_gk20a.h | 6 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/gr_gp10b.c | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/gr_gp10b.h | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/gr_gv11b.c | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gv11b/gr_gv11b.h | 1 |
6 files changed, 15 insertions, 6 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c index c64900bd..07185db2 100644 --- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c | |||
@@ -752,7 +752,7 @@ static u32 fecs_current_ctx_data(struct gk20a *g, struct nvgpu_mem *inst_block) | |||
752 | gr_fecs_current_ctx_valid_f(1); | 752 | gr_fecs_current_ctx_valid_f(1); |
753 | } | 753 | } |
754 | 754 | ||
755 | static int gr_gk20a_fecs_ctx_bind_channel(struct gk20a *g, | 755 | int gr_gk20a_fecs_ctx_bind_channel(struct gk20a *g, |
756 | struct channel_gk20a *c) | 756 | struct channel_gk20a *c) |
757 | { | 757 | { |
758 | u32 inst_base_ptr = u64_lo32(nvgpu_inst_block_addr(g, &c->inst_block) | 758 | u32 inst_base_ptr = u64_lo32(nvgpu_inst_block_addr(g, &c->inst_block) |
@@ -881,7 +881,7 @@ u32 gk20a_gr_tpc_offset(struct gk20a *g, u32 tpc) | |||
881 | return tpc_offset; | 881 | return tpc_offset; |
882 | } | 882 | } |
883 | 883 | ||
884 | static int gr_gk20a_commit_global_ctx_buffers(struct gk20a *g, | 884 | int gr_gk20a_commit_global_ctx_buffers(struct gk20a *g, |
885 | struct channel_gk20a *c, bool patch) | 885 | struct channel_gk20a *c, bool patch) |
886 | { | 886 | { |
887 | struct gr_gk20a *gr = &g->gr; | 887 | struct gr_gk20a *gr = &g->gr; |
@@ -1282,7 +1282,7 @@ int gr_gk20a_init_fs_state(struct gk20a *g) | |||
1282 | return 0; | 1282 | return 0; |
1283 | } | 1283 | } |
1284 | 1284 | ||
1285 | static int gr_gk20a_fecs_ctx_image_save(struct channel_gk20a *c, u32 save_type) | 1285 | int gr_gk20a_fecs_ctx_image_save(struct channel_gk20a *c, u32 save_type) |
1286 | { | 1286 | { |
1287 | struct gk20a *g = c->g; | 1287 | struct gk20a *g = c->g; |
1288 | int ret; | 1288 | int ret; |
@@ -1306,7 +1306,7 @@ static int gr_gk20a_fecs_ctx_image_save(struct channel_gk20a *c, u32 save_type) | |||
1306 | return ret; | 1306 | return ret; |
1307 | } | 1307 | } |
1308 | 1308 | ||
1309 | static u32 gk20a_init_sw_bundle(struct gk20a *g) | 1309 | u32 gk20a_init_sw_bundle(struct gk20a *g) |
1310 | { | 1310 | { |
1311 | struct av_list_gk20a *sw_bundle_init = &g->gr.ctx_vars.sw_bundle_init; | 1311 | struct av_list_gk20a *sw_bundle_init = &g->gr.ctx_vars.sw_bundle_init; |
1312 | u32 last_bundle_data = 0; | 1312 | u32 last_bundle_data = 0; |
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.h b/drivers/gpu/nvgpu/gk20a/gr_gk20a.h index 1bf58f5c..fff22f29 100644 --- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.h | |||
@@ -802,4 +802,10 @@ void gk20a_gr_set_error_notifier(struct gk20a *g, | |||
802 | struct gr_gk20a_isr_data *isr_data, u32 error_notifier); | 802 | struct gr_gk20a_isr_data *isr_data, u32 error_notifier); |
803 | int gk20a_gr_handle_notify_pending(struct gk20a *g, | 803 | int gk20a_gr_handle_notify_pending(struct gk20a *g, |
804 | struct gr_gk20a_isr_data *isr_data); | 804 | struct gr_gk20a_isr_data *isr_data); |
805 | int gr_gk20a_commit_global_ctx_buffers(struct gk20a *g, | ||
806 | struct channel_gk20a *c, bool patch); | ||
807 | int gr_gk20a_fecs_ctx_bind_channel(struct gk20a *g, | ||
808 | struct channel_gk20a *c); | ||
809 | u32 gk20a_init_sw_bundle(struct gk20a *g); | ||
810 | int gr_gk20a_fecs_ctx_image_save(struct channel_gk20a *c, u32 save_type); | ||
805 | #endif /*__GR_GK20A_H__*/ | 811 | #endif /*__GR_GK20A_H__*/ |
diff --git a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c index 8cbda409..6c145c00 100644 --- a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c +++ b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c | |||
@@ -2073,7 +2073,7 @@ u32 get_ecc_override_val(struct gk20a *g) | |||
2073 | return 0; | 2073 | return 0; |
2074 | } | 2074 | } |
2075 | 2075 | ||
2076 | static bool gr_gp10b_suspend_context(struct channel_gk20a *ch, | 2076 | bool gr_gp10b_suspend_context(struct channel_gk20a *ch, |
2077 | bool *cilp_preempt_pending) | 2077 | bool *cilp_preempt_pending) |
2078 | { | 2078 | { |
2079 | struct gk20a *g = ch->g; | 2079 | struct gk20a *g = ch->g; |
diff --git a/drivers/gpu/nvgpu/gp10b/gr_gp10b.h b/drivers/gpu/nvgpu/gp10b/gr_gp10b.h index 8f1ebb16..61634668 100644 --- a/drivers/gpu/nvgpu/gp10b/gr_gp10b.h +++ b/drivers/gpu/nvgpu/gp10b/gr_gp10b.h | |||
@@ -152,5 +152,7 @@ void gr_gp10b_init_czf_bypass(struct gk20a *g); | |||
152 | void gr_gp10b_init_ctxsw_hdr_data(struct gk20a *g, struct nvgpu_mem *mem); | 152 | void gr_gp10b_init_ctxsw_hdr_data(struct gk20a *g, struct nvgpu_mem *mem); |
153 | void gr_gp10b_init_gfxp_wfi_timeout_count(struct gk20a *g); | 153 | void gr_gp10b_init_gfxp_wfi_timeout_count(struct gk20a *g); |
154 | unsigned long gr_gp10b_get_max_gfxp_wfi_timeout_count(struct gk20a *g); | 154 | unsigned long gr_gp10b_get_max_gfxp_wfi_timeout_count(struct gk20a *g); |
155 | bool gr_gp10b_suspend_context(struct channel_gk20a *ch, | ||
156 | bool *cilp_preempt_pending); | ||
155 | 157 | ||
156 | #endif | 158 | #endif |
diff --git a/drivers/gpu/nvgpu/gv11b/gr_gv11b.c b/drivers/gpu/nvgpu/gv11b/gr_gv11b.c index 808cf19f..e697b491 100644 --- a/drivers/gpu/nvgpu/gv11b/gr_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/gr_gv11b.c | |||
@@ -131,7 +131,7 @@ bool gr_gv11b_is_valid_compute_class(struct gk20a *g, u32 class_num) | |||
131 | return valid; | 131 | return valid; |
132 | } | 132 | } |
133 | 133 | ||
134 | static u32 gv11b_gr_sm_offset(struct gk20a *g, u32 sm) | 134 | u32 gv11b_gr_sm_offset(struct gk20a *g, u32 sm) |
135 | { | 135 | { |
136 | 136 | ||
137 | u32 sm_pri_stride = nvgpu_get_litter_value(g, GPU_LIT_SM_PRI_STRIDE); | 137 | u32 sm_pri_stride = nvgpu_get_litter_value(g, GPU_LIT_SM_PRI_STRIDE); |
diff --git a/drivers/gpu/nvgpu/gv11b/gr_gv11b.h b/drivers/gpu/nvgpu/gv11b/gr_gv11b.h index 0f42e795..4615ff55 100644 --- a/drivers/gpu/nvgpu/gv11b/gr_gv11b.h +++ b/drivers/gpu/nvgpu/gv11b/gr_gv11b.h | |||
@@ -231,5 +231,6 @@ void gr_gv11b_update_ctxsw_preemption_mode(struct gk20a *g, | |||
231 | struct channel_gk20a *ch_ctx, | 231 | struct channel_gk20a *ch_ctx, |
232 | struct nvgpu_mem *mem); | 232 | struct nvgpu_mem *mem); |
233 | int gr_gv11b_handle_ssync_hww(struct gk20a *g); | 233 | int gr_gv11b_handle_ssync_hww(struct gk20a *g); |
234 | u32 gv11b_gr_sm_offset(struct gk20a *g, u32 sm); | ||
234 | 235 | ||
235 | #endif | 236 | #endif |