diff options
author | Craig Stout <cstout@chromium.org> | 2016-02-18 16:50:03 -0800 |
---|---|---|
committer | Rob Clark <robdclark@gmail.com> | 2016-03-03 11:55:29 -0500 |
commit | 1e2c8e7a2f3f5b339a7bd972ad09c66ea52acea8 (patch) | |
tree | 01df85752cf950b7b32e9ebb997ff6e3dd599abc /drivers/gpu/drm/msm/adreno/a4xx_gpu.c | |
parent | 7d0c5ee9f07779ab29ac291748060a0a6f1d66db (diff) |
drm/msm/adreno: print details in case of a protect fault interrupt
Signed-off-by: Craig Stout <cstout@chromium.org>
Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm/adreno/a4xx_gpu.c')
-rw-r--r-- | drivers/gpu/drm/msm/adreno/a4xx_gpu.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/adreno/a4xx_gpu.c b/drivers/gpu/drm/msm/adreno/a4xx_gpu.c index c0d4c7ee94e6..3d07a5a1f338 100644 --- a/drivers/gpu/drm/msm/adreno/a4xx_gpu.c +++ b/drivers/gpu/drm/msm/adreno/a4xx_gpu.c @@ -348,6 +348,13 @@ static irqreturn_t a4xx_irq(struct msm_gpu *gpu) status = gpu_read(gpu, REG_A4XX_RBBM_INT_0_STATUS); DBG("%s: Int status %08x", gpu->name, status); + if (status & A4XX_INT0_CP_REG_PROTECT_FAULT) { + uint32_t reg = gpu_read(gpu, REG_A4XX_CP_PROTECT_STATUS); + printk("CP | Protected mode error| %s | addr=%x\n", + reg & (1 << 24) ? "WRITE" : "READ", + (reg & 0xFFFFF) >> 2); + } + gpu_write(gpu, REG_A4XX_RBBM_INT_CLEAR_CMD, status); msm_gpu_retire(gpu); |