From 2c2d9e66710e264d251c0019258eed1dc5bb38f2 Mon Sep 17 00:00:00 2001 From: seshendra Gadagottu Date: Mon, 9 Jul 2018 12:30:50 -0700 Subject: gpu: nvgpu: gv1xx: disable ltc_illegal_compstat interrupt Illegal compstat interrupt indicates an unexpected compression status given the kind. Since dirty tile mappings expected to have discrepancies in compbit state, so disabling illegal compstat interrupt. Bug 2099406 Change-Id: I90207c6bc8a8cfa656ea9a0b4f5605106751c12e Signed-off-by: seshendra Gadagottu Reviewed-on: https://git-master.nvidia.com/r/1774572 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/gv11b/ltc_gv11b.c | 1 + drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_ltc_gv100.h | 14 +++++++++++++- drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_ltc_gv11b.h | 14 +++++++++++++- 3 files changed, 27 insertions(+), 2 deletions(-) (limited to 'drivers') diff --git a/drivers/gpu/nvgpu/gv11b/ltc_gv11b.c b/drivers/gpu/nvgpu/gv11b/ltc_gv11b.c index db797bde..3cea4cd4 100644 --- a/drivers/gpu/nvgpu/gv11b/ltc_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/ltc_gv11b.c @@ -70,6 +70,7 @@ void gv11b_ltc_init_fs_state(struct gk20a *g) /* Disable LTC interrupts */ reg = gk20a_readl(g, ltc_ltcs_ltss_intr_r()); reg &= ~ltc_ltcs_ltss_intr_en_evicted_cb_m(); + reg &= ~ltc_ltcs_ltss_intr_en_illegal_compstat_m(); reg &= ~ltc_ltcs_ltss_intr_en_illegal_compstat_access_m(); nvgpu_writel_check(g, ltc_ltcs_ltss_intr_r(), reg); diff --git a/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_ltc_gv100.h b/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_ltc_gv100.h index 3543f0b7..042cb7d1 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_ltc_gv100.h +++ b/drivers/gpu/nvgpu/include/nvgpu/hw/gv100/hw_ltc_gv100.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved. + * Copyright (c) 2017-2018, NVIDIA CORPORATION. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -364,6 +364,18 @@ static inline u32 ltc_ltcs_ltss_intr_en_evicted_cb_m(void) { return 0x1U << 20U; } +static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_m(void) +{ + return 0x1U << 21U; +} +static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_enabled_f(void) +{ + return 0x200000U; +} +static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_disabled_f(void) +{ + return 0x0U; +} static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_access_m(void) { return 0x1U << 30U; diff --git a/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_ltc_gv11b.h b/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_ltc_gv11b.h index 769bcf0c..342f90da 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_ltc_gv11b.h +++ b/drivers/gpu/nvgpu/include/nvgpu/hw/gv11b/hw_ltc_gv11b.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2017, NVIDIA CORPORATION. All rights reserved. + * Copyright (c) 2016-2018, NVIDIA CORPORATION. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -364,6 +364,18 @@ static inline u32 ltc_ltcs_ltss_intr_en_evicted_cb_m(void) { return 0x1U << 20U; } +static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_m(void) +{ + return 0x1U << 21U; +} +static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_enabled_f(void) +{ + return 0x200000U; +} +static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_disabled_f(void) +{ + return 0x0U; +} static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_access_m(void) { return 0x1U << 30U; -- cgit v1.2.2