diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2016-03-11 10:55:30 -0500 |
---|---|---|
committer | Terje Bergstrom <tbergstrom@nvidia.com> | 2016-03-22 13:02:29 -0400 |
commit | a13a4124c7de56d7c38cce106e16f88c429292f8 (patch) | |
tree | f33dffbcf207227126da85ec86c9e4a82167a13a /drivers/gpu/nvgpu/gk20a | |
parent | a9b9597a108f8dacb01696c5e0f1c7a2e9f52def (diff) |
gpu: nvgpu: Disable illegal comptag interrupt
Illegal comptag interrupt is triggered when a page is mapped with
two different kinds with incompatible compression status. This can
be intentional, so disable the interrupt.
Change-Id: I84a212beac147991d09d2d381a9e770b1364f4d8
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: http://git-master/r/1029663
(cherry picked from commit 819607a768f9fccdd0b233d58bcf88b9eee4ee19)
Reviewed-on: http://git-master/r/1031010
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/hw_ltc_gk20a.h | 6 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/ltc_gk20a.c | 14 |
2 files changed, 15 insertions, 5 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/hw_ltc_gk20a.h b/drivers/gpu/nvgpu/gk20a/hw_ltc_gk20a.h index 6db5654b..94770431 100644 --- a/drivers/gpu/nvgpu/gk20a/hw_ltc_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/hw_ltc_gk20a.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) 2012-2014, NVIDIA CORPORATION. All rights reserved. | 2 | * Copyright (c) 2012-2016, NVIDIA CORPORATION. All rights reserved. |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or modify it | 4 | * This program is free software; you can redistribute it and/or modify it |
5 | * under the terms and conditions of the GNU General Public License, | 5 | * under the terms and conditions of the GNU General Public License, |
@@ -258,6 +258,10 @@ static inline u32 ltc_ltcs_ltss_intr_en_evicted_cb_m(void) | |||
258 | { | 258 | { |
259 | return 0x1 << 20; | 259 | return 0x1 << 20; |
260 | } | 260 | } |
261 | static inline u32 ltc_ltcs_ltss_intr_en_illegal_compstat_m(void) | ||
262 | { | ||
263 | return 0x1 << 21; | ||
264 | } | ||
261 | static inline u32 ltc_ltc0_lts0_intr_r(void) | 265 | static inline u32 ltc_ltc0_lts0_intr_r(void) |
262 | { | 266 | { |
263 | return 0x00141020; | 267 | return 0x00141020; |
diff --git a/drivers/gpu/nvgpu/gk20a/ltc_gk20a.c b/drivers/gpu/nvgpu/gk20a/ltc_gk20a.c index c6ff07da..0d9a98b4 100644 --- a/drivers/gpu/nvgpu/gk20a/ltc_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/ltc_gk20a.c | |||
@@ -1,9 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * drivers/video/tegra/host/gk20a/ltc_gk20a.c | 2 | * GK20A L2 |
3 | * | 3 | * |
4 | * GK20A Graphics | 4 | * Copyright (c) 2011-2016, NVIDIA CORPORATION. All rights reserved. |
5 | * | ||
6 | * Copyright (c) 2011-2015, NVIDIA CORPORATION. All rights reserved. | ||
7 | * | 5 | * |
8 | * This program is free software; you can redistribute it and/or modify it | 6 | * This program is free software; you can redistribute it and/or modify it |
9 | * under the terms and conditions of the GNU General Public License, | 7 | * under the terms and conditions of the GNU General Public License, |
@@ -173,9 +171,17 @@ out: | |||
173 | 171 | ||
174 | static void gk20a_ltc_init_fs_state(struct gk20a *g) | 172 | static void gk20a_ltc_init_fs_state(struct gk20a *g) |
175 | { | 173 | { |
174 | u32 reg; | ||
175 | |||
176 | gk20a_dbg_info("initialize gk20a L2"); | 176 | gk20a_dbg_info("initialize gk20a L2"); |
177 | 177 | ||
178 | g->max_ltc_count = g->ltc_count = 1; | 178 | g->max_ltc_count = g->ltc_count = 1; |
179 | |||
180 | /* Disable LTC interrupts */ | ||
181 | reg = gk20a_readl(g, ltc_ltcs_ltss_intr_r()); | ||
182 | reg &= ~ltc_ltcs_ltss_intr_en_evicted_cb_m(); | ||
183 | reg &= ~ltc_ltcs_ltss_intr_en_illegal_compstat_m(); | ||
184 | gk20a_writel(g, ltc_ltcs_ltss_intr_r(), reg); | ||
179 | } | 185 | } |
180 | 186 | ||
181 | static void gk20a_ltc_isr(struct gk20a *g) | 187 | static void gk20a_ltc_isr(struct gk20a *g) |