add the shutdown function to release the resource.

v2:
Remove the unnecessary unmap function.

Signed-off-by: Tian Tao <tiant...@hisilicon.com>
Reviewed-by: Sam Ravnborg <s...@ravnborg.org>
---
 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c 
b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
index a6fd0c2..0250a10 100644
--- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
+++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
@@ -337,7 +337,7 @@ static int hibmc_pci_probe(struct pci_dev *pdev,
        dev->pdev = pdev;
        pci_set_drvdata(pdev, dev);
 
-       ret = pci_enable_device(pdev);
+       ret = pcim_enable_device(pdev);
        if (ret) {
                DRM_ERROR("failed to enable pci device: %d\n", ret);
                goto err_free;
@@ -376,6 +376,11 @@ static void hibmc_pci_remove(struct pci_dev *pdev)
        drm_dev_put(dev);
 }
 
+static void hibmc_pci_shutdown(struct pci_dev *pdev)
+{
+       hibmc_pci_remove(pdev);
+}
+
 static struct pci_device_id hibmc_pci_table[] = {
        { PCI_VDEVICE(HUAWEI, 0x1711) },
        {0,}
@@ -386,6 +391,7 @@ static struct pci_driver hibmc_pci_driver = {
        .id_table =     hibmc_pci_table,
        .probe =        hibmc_pci_probe,
        .remove =       hibmc_pci_remove,
+       .shutdown =     hibmc_pci_shutdown,
        .driver.pm =    &hibmc_pm_ops,
 };
 
-- 
2.7.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to