OSDN Git Service

drm/nouveau/mc/tu102: Remove Turing interrupt hack
authorAlistair Popple <apopple@nvidia.com>
Fri, 30 Oct 2020 02:36:42 +0000 (13:36 +1100)
committerBen Skeggs <bskeggs@redhat.com>
Fri, 29 Jan 2021 06:49:12 +0000 (16:49 +1000)
This is no longer needed now that tu102_mc_intr_stat has been updated to
look at the correct top-level interrupt bits.

Signed-off-by: Alistair Popple <apopple@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nvkm/subdev/mc/base.c
drivers/gpu/drm/nouveau/nvkm/subdev/mc/priv.h
drivers/gpu/drm/nouveau/nvkm/subdev/mc/tu102.c

index 0e57ab2..09f669a 100644 (file)
@@ -108,9 +108,6 @@ nvkm_mc_intr(struct nvkm_device *device, bool *handled)
        if (stat)
                nvkm_error(&mc->subdev, "intr %08x\n", stat);
        *handled = intr != 0;
-
-       if (mc->func->intr_hack)
-               mc->func->intr_hack(mc, handled);
 }
 
 static u32
index 4aab753..0d01b2c 100644 (file)
@@ -26,7 +26,6 @@ struct nvkm_mc_func {
        void (*intr_mask)(struct nvkm_mc *, u32 mask, u32 stat);
        /* retrieve pending interrupt mask (NV_PMC_INTR) */
        u32 (*intr_stat)(struct nvkm_mc *);
-       void (*intr_hack)(struct nvkm_mc *, bool *handled);
        const struct nvkm_mc_map *reset;
        void (*unk260)(struct nvkm_mc *, u32);
 };
index cda924d..af0afd1 100644 (file)
@@ -100,21 +100,6 @@ tu102_mc_intr_stat(struct nvkm_mc *mc)
        return intr0 | intr1;
 }
 
-static void
-tu102_mc_intr_hack(struct nvkm_mc *mc, bool *handled)
-{
-       struct nvkm_device *device = mc->subdev.device;
-       u32 stat = nvkm_rd32(device, 0xb81010);
-
-       if (stat & 0x00000050) {
-               struct nvkm_subdev *subdev =
-                       nvkm_device_subdev(device, NVKM_SUBDEV_FAULT);
-               nvkm_wr32(device, 0xb81010, stat & 0x00000050);
-               if (subdev)
-                       nvkm_subdev_intr(subdev);
-               *handled = true;
-       }
-}
 
 static const struct nvkm_mc_func
 tu102_mc = {
@@ -124,7 +109,6 @@ tu102_mc = {
        .intr_rearm = tu102_mc_intr_rearm,
        .intr_mask = tu102_mc_intr_mask,
        .intr_stat = tu102_mc_intr_stat,
-       .intr_hack = tu102_mc_intr_hack,
        .reset = gk104_mc_reset,
 };