drm/hisilicon: Use the new api devm_drm_irq_install
authorTian Tao <tiantao6@hisilicon.com>
Wed, 2 Dec 2020 09:26:52 +0000 (17:26 +0800)
committerTian Tao <tiantao6@hisilicon.com>
Thu, 3 Dec 2020 08:57:49 +0000 (03:57 -0500)
Use devm_drm_irq_install to register interrupts so that
drm_irq_uninstall is not called when hibmc is removed.

Signed-off-by: Tian Tao <tiantao6@hisilicon.com>
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/1606901212-8214-4-git-send-email-tiantao6@hisilicon.com
drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c

index 13e8a287f54b99f1b4c8f1d53a5e7a309c8514bf..8020604188684d122f600542d9f8405e5dc80190 100644 (file)
@@ -247,9 +247,6 @@ static int hibmc_unload(struct drm_device *dev)
 
        drm_atomic_helper_shutdown(dev);
 
-       if (dev->irq_enabled)
-               drm_irq_uninstall(dev);
-
        pci_disable_msi(dev->pdev);
        hibmc_kms_fini(priv);
        hibmc_mm_fini(priv);
@@ -284,7 +281,7 @@ static int hibmc_load(struct drm_device *dev)
        if (ret) {
                drm_warn(dev, "enabling MSI failed: %d\n", ret);
        } else {
-               ret = drm_irq_install(dev, dev->pdev->irq);
+               ret = devm_drm_irq_install(dev, dev->pdev->irq);
                if (ret)
                        drm_warn(dev, "install irq failed: %d\n", ret);
        }