drm/nouveau/fifo/gk104: submit NOP after all PBDMA_INTR_0, not just DEVICE
authorBen Skeggs <bskeggs@redhat.com>
Fri, 11 Mar 2016 03:09:28 +0000 (13:09 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Mon, 14 Mar 2016 00:13:47 +0000 (10:13 +1000)
Prevents the same interrupt from re-triggering forever.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c

index a1b30133ae192ef5cb4471628d14bb0f622abd50..68acb36b3e6d1ea31325ad36588331c8b0bfb0f5 100644 (file)
@@ -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);