Let the kernel know if hibmc did not handle an interrupt. Allows
the kernel to detect spurious interrupts and maintain diagnostics.

Signed-off-by: Thomas Zimmermann <[email protected]>
---
  drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 5 +++--
  1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c 
b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
index 4d85c89f3f88..602930964e93 100644
--- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
+++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
@@ -49,9 +49,10 @@ static irqreturn_t hibmc_interrupt(int irq, void *arg)
                writel(HIBMC_RAW_INTERRUPT_VBLANK(1),
                       priv->mmio + HIBMC_RAW_INTERRUPT);
                drm_handle_vblank(dev, 0);
+               return IRQ_HANDLED;
        }
- return IRQ_HANDLED;
+       return IRQ_NONE;
  }
static irqreturn_t hibmc_dp_interrupt(int irq, void *arg)
@@ -67,7 +68,7 @@ static irqreturn_t hibmc_dp_interrupt(int irq, void *arg)
                return IRQ_WAKE_THREAD;
        }
- return IRQ_HANDLED;
+       return IRQ_NONE;
  }
static int hibmc_dumb_create(struct drm_file *file, struct drm_device *dev,

Reviewed-by: Yongbang Shi <[email protected]>

Reply via email to