summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
diff options
context:
space:
mode:
authorDeepak Goyal <dgoyal@nvidia.com>2017-11-15 01:10:54 -0500
committermobile promotions <svcmobile_promotions@nvidia.com>2017-12-14 12:03:45 -0500
commit49be5d49292c9c853f5b6ad53c32d59f866322ec (patch)
tree8e34c42aff1cad6ea0fe4e2d9885dcd9043ef1ab /drivers/gpu/nvgpu/gk20a/gr_gk20a.c
parent1bf9b91c05ceebf872171a536c2660ee69fa5f64 (diff)
gpu: nvgpu: gv11b: implement ecc scrubber
Check the availability of ecc units by checking relevant ecc fuse and fuse overrides. During gpu boot, initialize ecc units by scrubbing individual ecc units available. ECC initialization should be done before gr initialization. Following ecc units are scrubbed: SM LRF SM L1 DATA SM L1 TAG SM CBU SM ICACHE Bug 200339497 Change-Id: I54bf8cc1fce639a9993bf80984dafc28dca0dba3 Signed-off-by: Deepak Goyal <dgoyal@nvidia.com> Signed-off-by: seshendra Gadagottu <sgadagottu@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1612734 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gr_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gr_gk20a.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
index 99f85b57..ea4d1d24 100644
--- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
@@ -4478,7 +4478,10 @@ static int gk20a_init_gr_setup_hw(struct gk20a *g)
4478 if (g->ops.gr.enable_gpc_exceptions) 4478 if (g->ops.gr.enable_gpc_exceptions)
4479 g->ops.gr.enable_gpc_exceptions(g); 4479 g->ops.gr.enable_gpc_exceptions(g);
4480 4480
4481 /* TBD: ECC for L1/SM */ 4481 /* enable ECC for L1/SM */
4482 if (g->ops.gr.ecc_init_scrub_reg)
4483 g->ops.gr.ecc_init_scrub_reg(g);
4484
4482 /* TBD: enable per BE exceptions */ 4485 /* TBD: enable per BE exceptions */
4483 4486
4484 /* reset and enable exceptions */ 4487 /* reset and enable exceptions */