add the shutdown function to release the resource.
v2: Remove the unnecessary unmap function.
Signed-off-by: Tian Tao tiantao6@hisilicon.com Reviewed-by: Sam Ravnborg sam@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, };
Hi
Am 16.04.20 um 03:02 schrieb Tian Tao:
add the shutdown function to release the resource.
Why is this necessary for hibmc? The other PCI drivers don't require a shutdown method.
v2: Remove the unnecessary unmap function.
Signed-off-by: Tian Tao tiantao6@hisilicon.com Reviewed-by: Sam Ravnborg sam@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);
This probably makes sense.
Best regards Thomas
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,
};
dri-devel@lists.freedesktop.org