diff --git a/drivers/gpu/nvgpu/vgpu/gr_vgpu.c b/drivers/gpu/nvgpu/vgpu/gr_vgpu.c index 835351c40..373dfd568 100644 --- a/drivers/gpu/nvgpu/vgpu/gr_vgpu.c +++ b/drivers/gpu/nvgpu/vgpu/gr_vgpu.c @@ -15,6 +15,7 @@ #include "vgpu/vgpu.h" #include "gk20a/hw_gr_gk20a.h" +#include "gk20a/dbg_gpu_gk20a.h" static int vgpu_gr_commit_inst(struct channel_gk20a *c, u64 gpu_va) { @@ -900,6 +901,9 @@ int vgpu_gr_isr(struct gk20a *g, struct tegra_vgpu_gr_intr_info *info) gk20a_set_error_notifier(ch, NVGPU_CHANNEL_GR_ERROR_SW_NOTIFY); break; + case TEGRA_VGPU_GR_INTR_SM_EXCEPTION: + gk20a_dbg_gpu_post_events(ch); + break; default: WARN_ON(1); break; diff --git a/include/linux/tegra_vgpu.h b/include/linux/tegra_vgpu.h index dbfa06d5a..4db3a16f1 100644 --- a/include/linux/tegra_vgpu.h +++ b/include/linux/tegra_vgpu.h @@ -317,7 +317,8 @@ enum { TEGRA_VGPU_FIFO_INTR_MMU_FAULT, TEGRA_VGPU_GR_NONSTALL_INTR_SEMAPHORE, TEGRA_VGPU_FIFO_NONSTALL_INTR_CHANNEL, - TEGRA_VGPU_CE2_NONSTALL_INTR_NONBLOCKPIPE + TEGRA_VGPU_CE2_NONSTALL_INTR_NONBLOCKPIPE, + TEGRA_VGPU_GR_INTR_SM_EXCEPTION }; struct tegra_vgpu_gr_intr_info {