fbdev: tridentfb: Fix missing pci_disable_device() in probe and remove
authorRuan Jinjie <ruanjinjie@huawei.com>
Thu, 22 Sep 2022 01:37:09 +0000 (09:37 +0800)
committerHelge Deller <deller@gmx.de>
Sat, 8 Oct 2022 13:20:09 +0000 (15:20 +0200)
Replace pci_enable_device() with pcim_enable_device(), pci_disable_device() and
pci_release_regions() will be called in release automatically.

Signed-off-by: ruanjinjie <ruanjinjie@huawei.com>
Signed-off-by: Helge Deller <deller@gmx.de>
drivers/video/fbdev/tridentfb.c

index 2154dd5..219ce72 100644 (file)
@@ -1470,7 +1470,7 @@ static int trident_pci_probe(struct pci_dev *dev,
        if (err)
                return err;
 
-       err = pci_enable_device(dev);
+       err = pcim_enable_device(dev);
        if (err)
                return err;
 
@@ -1710,12 +1710,10 @@ out_unmap2:
        kfree(info->pixmap.addr);
        if (info->screen_base)
                iounmap(info->screen_base);
-       release_mem_region(tridentfb_fix.smem_start, tridentfb_fix.smem_len);
        disable_mmio(info->par);
 out_unmap1:
        if (default_par->io_virt)
                iounmap(default_par->io_virt);
-       release_mem_region(tridentfb_fix.mmio_start, tridentfb_fix.mmio_len);
        framebuffer_release(info);
        return err;
 }
@@ -1730,8 +1728,6 @@ static void trident_pci_remove(struct pci_dev *dev)
                i2c_del_adapter(&par->ddc_adapter);
        iounmap(par->io_virt);
        iounmap(info->screen_base);
-       release_mem_region(tridentfb_fix.smem_start, tridentfb_fix.smem_len);
-       release_mem_region(tridentfb_fix.mmio_start, tridentfb_fix.mmio_len);
        kfree(info->pixmap.addr);
        fb_dealloc_cmap(&info->cmap);
        framebuffer_release(info);