summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_fb_gv11b.h
diff options
context:
space:
mode:
authorDavid Nieto <dmartineznie@nvidia.com>2017-05-05 17:22:06 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-05-11 09:04:33 -0400
commit8c246cb18df28bac83297df2c9d0c47725b94273 (patch)
treef0bc4bdd963b14ccafc9c888dd65d3485bb9bf5b /drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_fb_gv11b.h
parent44dcc5a53fabc68a32f16a1a3a46a2582b5b192b (diff)
gpu: nvgpu: gv11b: MMU parity HWW error intr
Adding support for ISR handling of ecc uncorrectable errors for volta resiliency (Volta-686) TODO: move interrupt init out of MC bug 1881052 JIRA: GPUT19X-82 Change-Id: I45db01a6062445dd1f64a8297744cd15105e3344 Signed-off-by: David Nieto <dmartineznie@nvidia.com> Reviewed-on: http://git-master/r/1476603 Reviewed-by: svccoveritychecker <svccoveritychecker@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_fb_gv11b.h')
-rw-r--r--drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_fb_gv11b.h68
1 files changed, 68 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_fb_gv11b.h b/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_fb_gv11b.h
index 45cb0ad5..76b4e902 100644
--- a/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_fb_gv11b.h
+++ b/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_fb_gv11b.h
@@ -462,6 +462,42 @@ static inline u32 fb_mmu_vpr_info_fetch_true_v(void)
462{ 462{
463 return 0x00000001; 463 return 0x00000001;
464} 464}
465static inline u32 fb_mmu_l2tlb_ecc_status_r(void)
466{
467 return 0x00100e70;
468}
469static inline u32 fb_mmu_l2tlb_ecc_status_reset_f(u32 v)
470{
471 return (v & 0x1) << 30;
472}
473static inline u32 fb_mmu_l2tlb_ecc_status_reset_clear_f(void)
474{
475 return 0x40000000;
476}
477static inline u32 fb_mmu_hubtlb_ecc_status_r(void)
478{
479 return 0x00100e84;
480}
481static inline u32 fb_mmu_hubtlb_ecc_status_reset_f(u32 v)
482{
483 return (v & 0x1) << 30;
484}
485static inline u32 fb_mmu_hubtlb_ecc_status_reset_clear_f(void)
486{
487 return 0x40000000;
488}
489static inline u32 fb_mmu_fillunit_ecc_status_r(void)
490{
491 return 0x00100e98;
492}
493static inline u32 fb_mmu_fillunit_ecc_status_reset_f(u32 v)
494{
495 return (v & 0x1) << 30;
496}
497static inline u32 fb_mmu_fillunit_ecc_status_reset_clear_f(void)
498{
499 return 0x40000000;
500}
465static inline u32 fb_niso_flush_sysmem_addr_r(void) 501static inline u32 fb_niso_flush_sysmem_addr_r(void)
466{ 502{
467 return 0x00100c10; 503 return 0x00100c10;
@@ -526,6 +562,14 @@ static inline u32 fb_niso_intr_mmu_other_fault_notify_pending_f(void)
526{ 562{
527 return 0x80000000; 563 return 0x80000000;
528} 564}
565static inline u32 fb_niso_intr_mmu_ecc_uncorrected_error_notify_f(u32 v)
566{
567 return (v & 0x1) << 26;
568}
569static inline u32 fb_niso_intr_mmu_ecc_uncorrected_error_notify_pending_f(void)
570{
571 return 0x4000000;
572}
529static inline u32 fb_niso_intr_en_r(u32 i) 573static inline u32 fb_niso_intr_en_r(u32 i)
530{ 574{
531 return 0x00100a24 + i*4; 575 return 0x00100a24 + i*4;
@@ -590,6 +634,14 @@ static inline u32 fb_niso_intr_en_mmu_other_fault_notify_enabled_f(void)
590{ 634{
591 return 0x80000000; 635 return 0x80000000;
592} 636}
637static inline u32 fb_niso_intr_en_mmu_ecc_uncorrected_error_notify_f(u32 v)
638{
639 return (v & 0x1) << 26;
640}
641static inline u32 fb_niso_intr_en_mmu_ecc_uncorrected_error_notify_enabled_f(void)
642{
643 return 0x4000000;
644}
593static inline u32 fb_niso_intr_en_set_r(u32 i) 645static inline u32 fb_niso_intr_en_set_r(u32 i)
594{ 646{
595 return 0x00100a2c + i*4; 647 return 0x00100a2c + i*4;
@@ -654,6 +706,14 @@ static inline u32 fb_niso_intr_en_set_mmu_other_fault_notify_set_f(void)
654{ 706{
655 return 0x80000000; 707 return 0x80000000;
656} 708}
709static inline u32 fb_niso_intr_en_set_mmu_ecc_uncorrected_error_notify_f(u32 v)
710{
711 return (v & 0x1) << 26;
712}
713static inline u32 fb_niso_intr_en_set_mmu_ecc_uncorrected_error_notify_set_f(void)
714{
715 return 0x4000000;
716}
657static inline u32 fb_niso_intr_en_clr_r(u32 i) 717static inline u32 fb_niso_intr_en_clr_r(u32 i)
658{ 718{
659 return 0x00100a34 + i*4; 719 return 0x00100a34 + i*4;
@@ -718,6 +778,14 @@ static inline u32 fb_niso_intr_en_clr_mmu_other_fault_notify_set_f(void)
718{ 778{
719 return 0x80000000; 779 return 0x80000000;
720} 780}
781static inline u32 fb_niso_intr_en_clr_mmu_ecc_uncorrected_error_notify_f(u32 v)
782{
783 return (v & 0x1) << 26;
784}
785static inline u32 fb_niso_intr_en_clr_mmu_ecc_uncorrected_error_notify_set_f(void)
786{
787 return 0x4000000;
788}
721static inline u32 fb_niso_intr_en_clr_mmu_non_replay_fault_buffer_v(void) 789static inline u32 fb_niso_intr_en_clr_mmu_non_replay_fault_buffer_v(void)
722{ 790{
723 return 0x00000000; 791 return 0x00000000;