summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gv11b/gr_gv11b.c
diff options
context:
space:
mode:
authorSeema Khowala <seemaj@nvidia.com>2017-06-22 17:06:18 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-07-06 15:04:42 -0400
commit1f09340f82af277722deaa0e04e98a88f1e41044 (patch)
treec1044da99cb4235afe416de253e89754773c8732 /drivers/gpu/nvgpu/gv11b/gr_gv11b.c
parent99aeb5ae3b5606ffbeb168d25bec4adc541e1236 (diff)
gpu: nvgpu: gv11b: init handle_sm_exception gr ops
gr_gk20a_handle_sm_exception is initialized to handle_sm_exception and new gr ops handle_tpc_sm_ecc_exception is initialized to gr_gv11b_handle_tpc_sm_ecc_exception to handle sm ecc errors per tpc. JIRA GPUT19X-75 JIRA GPUT19X-109 Change-Id: Iefa95b185b9eed23f9f54e231405fcd9fd83ccc0 Signed-off-by: Seema Khowala <seemaj@nvidia.com> Reviewed-on: https://git-master/r/1514039 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gv11b/gr_gv11b.c')
-rw-r--r--drivers/gpu/nvgpu/gv11b/gr_gv11b.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/gr_gv11b.c b/drivers/gpu/nvgpu/gv11b/gr_gv11b.c
index 9da270ac..d61506c2 100644
--- a/drivers/gpu/nvgpu/gv11b/gr_gv11b.c
+++ b/drivers/gpu/nvgpu/gv11b/gr_gv11b.c
@@ -589,9 +589,10 @@ static int gr_gv11b_handle_icache_exception(struct gk20a *g, u32 gpc, u32 tpc,
589 589
590} 590}
591 591
592static int gr_gv11b_handle_sm_exception(struct gk20a *g, u32 gpc, u32 tpc, 592static int gr_gv11b_handle_tpc_sm_ecc_exception(struct gk20a *g,
593 u32 sm, bool *post_event, struct channel_gk20a *fault_ch, 593 u32 gpc, u32 tpc,
594 u32 *hww_global_esr) 594 bool *post_event, struct channel_gk20a *fault_ch,
595 u32 *hww_global_esr)
595{ 596{
596 int ret = 0; 597 int ret = 0;
597 598
@@ -3228,7 +3229,7 @@ void gv11b_init_gr(struct gpu_ops *gops)
3228 gops->gr.init_cyclestats = gr_gv11b_init_cyclestats; 3229 gops->gr.init_cyclestats = gr_gv11b_init_cyclestats;
3229 gops->gr.set_gpc_tpc_mask = gr_gv11b_set_gpc_tpc_mask; 3230 gops->gr.set_gpc_tpc_mask = gr_gv11b_set_gpc_tpc_mask;
3230 gops->gr.get_access_map = gr_gv11b_get_access_map; 3231 gops->gr.get_access_map = gr_gv11b_get_access_map;
3231 gops->gr.handle_sm_exception = gr_gv11b_handle_sm_exception; 3232 gops->gr.handle_sm_exception = gr_gk20a_handle_sm_exception;
3232 gops->gr.handle_gcc_exception = gr_gv11b_handle_gcc_exception; 3233 gops->gr.handle_gcc_exception = gr_gv11b_handle_gcc_exception;
3233 gops->gr.handle_tex_exception = gr_gv11b_handle_tex_exception; 3234 gops->gr.handle_tex_exception = gr_gv11b_handle_tex_exception;
3234 gops->gr.enable_gpc_exceptions = gr_gv11b_enable_gpc_exceptions; 3235 gops->gr.enable_gpc_exceptions = gr_gv11b_enable_gpc_exceptions;
@@ -3277,4 +3278,6 @@ void gv11b_init_gr(struct gpu_ops *gops)
3277 gops->gr.lock_down_sm = gv11b_gr_lock_down_sm; 3278 gops->gr.lock_down_sm = gv11b_gr_lock_down_sm;
3278 gops->gr.wait_for_sm_lock_down = gv11b_gr_wait_for_sm_lock_down; 3279 gops->gr.wait_for_sm_lock_down = gv11b_gr_wait_for_sm_lock_down;
3279 gops->gr.clear_sm_hww = gv11b_gr_clear_sm_hww; 3280 gops->gr.clear_sm_hww = gv11b_gr_clear_sm_hww;
3281 gops->gr.handle_tpc_sm_ecc_exception =
3282 gr_gv11b_handle_tpc_sm_ecc_exception;
3280} 3283}