diff options
Diffstat (limited to 'drivers/gpu/nvgpu')
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/gr_gp10b.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c index f8c31bd3..a13b9a2c 100644 --- a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c +++ b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c | |||
@@ -1224,6 +1224,16 @@ static void gr_gp10b_get_access_map(struct gk20a *g, | |||
1224 | *num_entries = ARRAY_SIZE(wl_addr_gp10b); | 1224 | *num_entries = ARRAY_SIZE(wl_addr_gp10b); |
1225 | } | 1225 | } |
1226 | 1226 | ||
1227 | static u32 gp10b_mask_hww_warp_esr(u32 hww_warp_esr) | ||
1228 | { | ||
1229 | if (!(hww_warp_esr & gr_gpc0_tpc0_sm_hww_warp_esr_addr_valid_m())) | ||
1230 | hww_warp_esr = set_field(hww_warp_esr, | ||
1231 | gr_gpc0_tpc0_sm_hww_warp_esr_addr_error_type_m(), | ||
1232 | gr_gpc0_tpc0_sm_hww_warp_esr_addr_error_type_none_f()); | ||
1233 | |||
1234 | return hww_warp_esr; | ||
1235 | } | ||
1236 | |||
1227 | void gp10b_init_gr(struct gpu_ops *gops) | 1237 | void gp10b_init_gr(struct gpu_ops *gops) |
1228 | { | 1238 | { |
1229 | gm20b_init_gr(gops); | 1239 | gm20b_init_gr(gops); |
@@ -1256,4 +1266,5 @@ void gp10b_init_gr(struct gpu_ops *gops) | |||
1256 | gops->gr.get_access_map = gr_gp10b_get_access_map; | 1266 | gops->gr.get_access_map = gr_gp10b_get_access_map; |
1257 | gops->gr.handle_sm_exception = gr_gp10b_handle_sm_exception; | 1267 | gops->gr.handle_sm_exception = gr_gp10b_handle_sm_exception; |
1258 | gops->gr.handle_tex_exception = gr_gp10b_handle_tex_exception; | 1268 | gops->gr.handle_tex_exception = gr_gp10b_handle_tex_exception; |
1269 | gops->gr.mask_hww_warp_esr = gp10b_mask_hww_warp_esr; | ||
1259 | } | 1270 | } |