From 8c246cb18df28bac83297df2c9d0c47725b94273 Mon Sep 17 00:00:00 2001 From: David Nieto Date: Fri, 5 May 2017 14:22:06 -0700 Subject: 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 Reviewed-on: http://git-master/r/1476603 Reviewed-by: svccoveritychecker GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom --- drivers/gpu/nvgpu/gv11b/fb_gv11b.h | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'drivers/gpu/nvgpu/gv11b/fb_gv11b.h') diff --git a/drivers/gpu/nvgpu/gv11b/fb_gv11b.h b/drivers/gpu/nvgpu/gv11b/fb_gv11b.h index ab688aba..eff3c25d 100644 --- a/drivers/gpu/nvgpu/gv11b/fb_gv11b.h +++ b/drivers/gpu/nvgpu/gv11b/fb_gv11b.h @@ -1,7 +1,7 @@ /* * GV11B FB * - * Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. + * Copyright (c) 2016-2017, NVIDIA CORPORATION. All rights reserved. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, @@ -17,5 +17,32 @@ #define _NVGPU_GV11B_FB struct gpu_ops; +#define STALL_REG_INDEX 0 +#define NONSTALL_REG_INDEX 1 + +#define NONREPLAY_REG_INDEX 0 +#define REPLAY_REG_INDEX 1 + +#define FAULT_BUF_DISABLED 0 +#define FAULT_BUF_ENABLED 1 + +#define FAULT_BUF_VALID 1 +#define CHECK_NEXT_FAULT_BUF 1 + +#define HUB_INTR_TYPE_OTHER 1 /* bit 0 */ +#define HUB_INTR_TYPE_NONREPLAY 2 /* bit 1 */ +#define HUB_INTR_TYPE_REPLAY 4 /* bit 2 */ +#define HUB_INTR_TYPE_ECC_UNCORRECTED 8 /* bit 3 */ +#define HUB_INTR_TYPE_ACCESS_COUNTER 16 /* bit 4 */ +#define HUB_INTR_TYPE_ALL (HUB_INTR_TYPE_OTHER | \ + HUB_INTR_TYPE_NONREPLAY | \ + HUB_INTR_TYPE_REPLAY | \ + HUB_INTR_TYPE_ECC_UNCORRECTED | \ + HUB_INTR_TYPE_ACCESS_COUNTER) + +void gv11b_fb_enable_hub_intr(struct gk20a *g, + unsigned int index, unsigned int intr_type); +void gv11b_fb_disable_hub_intr(struct gk20a *g, + unsigned int index, unsigned int intr_type); void gv11b_init_fb(struct gpu_ops *gops); #endif -- cgit v1.2.2