summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_gr_gv11b.h
diff options
context:
space:
mode:
authorLakshmanan M <lm@nvidia.com>2017-05-19 06:10:41 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-05-19 12:44:25 -0400
commit45ca7cb8c5774cfc15015973b1883faa1d93b9e6 (patch)
tree0be9fbe523935b1f07be019f28b72f991fbf216e /drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_gr_gv11b.h
parent5a08eafbe076fba98de62883636ee6b0751cf7e9 (diff)
gpu: nvgpu: gv11b: Add GCC L1.5 parity support
Add handling of GCC L1.5 parity exception. JIRA GPUT19X-86 Change-Id: Ie83fc306d3dff79b0ddaf2616dcf0ff71fccd4ca Signed-off-by: Lakshmanan M <lm@nvidia.com> Reviewed-on: http://git-master/r/1485834 Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_gr_gv11b.h')
-rw-r--r--drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_gr_gv11b.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_gr_gv11b.h b/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_gr_gv11b.h
index 4ce69743..6f38cf5b 100644
--- a/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_gr_gv11b.h
+++ b/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_gr_gv11b.h
@@ -3370,6 +3370,10 @@ static inline u32 gr_gpcs_gpccs_gpc_exception_en_r(void)
3370{ 3370{
3371 return 0x0041ac94; 3371 return 0x0041ac94;
3372} 3372}
3373static inline u32 gr_gpcs_gpccs_gpc_exception_en_gcc_f(u32 v)
3374{
3375 return (v & 0x1) << 2;
3376}
3373static inline u32 gr_gpcs_gpccs_gpc_exception_en_tpc_f(u32 v) 3377static inline u32 gr_gpcs_gpccs_gpc_exception_en_tpc_f(u32 v)
3374{ 3378{
3375 return (v & 0xff) << 16; 3379 return (v & 0xff) << 16;
@@ -3378,6 +3382,10 @@ static inline u32 gr_gpc0_gpccs_gpc_exception_r(void)
3378{ 3382{
3379 return 0x00502c90; 3383 return 0x00502c90;
3380} 3384}
3385static inline u32 gr_gpc0_gpccs_gpc_exception_gcc_v(u32 r)
3386{
3387 return (r >> 2) & 0x1;
3388}
3381static inline u32 gr_gpc0_gpccs_gpc_exception_tpc_v(u32 r) 3389static inline u32 gr_gpc0_gpccs_gpc_exception_tpc_v(u32 r)
3382{ 3390{
3383 return (r >> 16) & 0xff; 3391 return (r >> 16) & 0xff;
@@ -3386,6 +3394,62 @@ static inline u32 gr_gpc0_gpccs_gpc_exception_tpc_0_pending_v(void)
3386{ 3394{
3387 return 0x00000001; 3395 return 0x00000001;
3388} 3396}
3397static inline u32 gr_pri_gpc0_gcc_l15_ecc_status_r(void)
3398{
3399 return 0x00501048;
3400}
3401static inline u32 gr_pri_gpc0_gcc_l15_ecc_status_corrected_err_bank0_m(void)
3402{
3403 return 0x1 << 0;
3404}
3405static inline u32 gr_pri_gpc0_gcc_l15_ecc_status_corrected_err_bank1_m(void)
3406{
3407 return 0x1 << 1;
3408}
3409static inline u32 gr_pri_gpc0_gcc_l15_ecc_status_uncorrected_err_bank0_m(void)
3410{
3411 return 0x1 << 4;
3412}
3413static inline u32 gr_pri_gpc0_gcc_l15_ecc_status_uncorrected_err_bank1_m(void)
3414{
3415 return 0x1 << 5;
3416}
3417static inline u32 gr_pri_gpc0_gcc_l15_ecc_status_corrected_err_total_counter_overflow_v(u32 r)
3418{
3419 return (r >> 8) & 0x1;
3420}
3421static inline u32 gr_pri_gpc0_gcc_l15_ecc_status_uncorrected_err_total_counter_overflow_v(u32 r)
3422{
3423 return (r >> 10) & 0x1;
3424}
3425static inline u32 gr_pri_gpc0_gcc_l15_ecc_status_reset_task_f(void)
3426{
3427 return 0x40000000;
3428}
3429static inline u32 gr_pri_gpc0_gcc_l15_ecc_corrected_err_count_r(void)
3430{
3431 return 0x0050104c;
3432}
3433static inline u32 gr_pri_gpc0_gcc_l15_ecc_corrected_err_count_total_s(void)
3434{
3435 return 16;
3436}
3437static inline u32 gr_pri_gpc0_gcc_l15_ecc_corrected_err_count_total_v(u32 r)
3438{
3439 return (r >> 0) & 0xffff;
3440}
3441static inline u32 gr_pri_gpc0_gcc_l15_ecc_uncorrected_err_count_r(void)
3442{
3443 return 0x00501054;
3444}
3445static inline u32 gr_pri_gpc0_gcc_l15_ecc_uncorrected_err_count_total_s(void)
3446{
3447 return 16;
3448}
3449static inline u32 gr_pri_gpc0_gcc_l15_ecc_uncorrected_err_count_total_v(u32 r)
3450{
3451 return (r >> 0) & 0xffff;
3452}
3389static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_r(void) 3453static inline u32 gr_gpc0_tpc0_tpccs_tpc_exception_r(void)
3390{ 3454{
3391 return 0x00504508; 3455 return 0x00504508;