summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Skeggs2016-03-11 04:09:28 +0100
committerBen Skeggs2016-03-14 01:13:47 +0100
commitb4c5fc4b853a1d508cbd3133f5d363037bfd5844 (patch)
tree1bc4678c3f59ddd01f769c3dfba9e916a6f2eb6d
parentdrm/nouveau/fifo/gk104: add vic plumbing (diff)
downloadkernel-qcow2-linux-b4c5fc4b853a1d508cbd3133f5d363037bfd5844.tar.gz
kernel-qcow2-linux-b4c5fc4b853a1d508cbd3133f5d363037bfd5844.tar.xz
kernel-qcow2-linux-b4c5fc4b853a1d508cbd3133f5d363037bfd5844.zip
drm/nouveau/fifo/gk104: submit NOP after all PBDMA_INTR_0, not just DEVICE
Prevents the same interrupt from re-triggering forever. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r--drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c
index a1b30133ae19..68acb36b3e6d 100644
--- a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c
+++ b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c
@@ -490,9 +490,10 @@ gk104_fifo_intr_pbdma_0(struct gk104_fifo *fifo, int unit)
if (nvkm_sw_mthd(device->sw, chid, subc, mthd, data))
show &= ~0x00800000;
}
- nvkm_wr32(device, 0x0400c0 + (unit * 0x2000), 0x80600008);
}
+ nvkm_wr32(device, 0x0400c0 + (unit * 0x2000), 0x80600008);
+
if (show) {
nvkm_snprintbf(msg, sizeof(msg), gk104_fifo_pbdma_intr_0, show);
chan = nvkm_fifo_chan_chid(&fifo->base, chid, &flags);