Devm_ functions allocate memory that is released when a driver
detaches.
Replace pci_enable_device with the managed pcim_enable_device
and remove corresponding pci_disable_device from probe and
suspend functions of a pci_dev.
Also, an unnecessary label has been removed by replacing it
with a direct return statement.
Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
                        return ret;
                }
 
-               pci_disable_device(pdev);
                ret = pci_set_power_state(pdev, pci_choose_state(pdev, mesg));
                if (ret) {
                        pr_err("error:%d occurred in pci_set_power_state\n", ret);
        int err;
 
        /* enable device */
-       err = pci_enable_device(pdev);
+       err = pcim_enable_device(pdev);
        if (err)
                return err;
 
        err = -ENOMEM;
        sm750_dev = devm_kzalloc(&pdev->dev, sizeof(*sm750_dev), GFP_KERNEL);
        if (!sm750_dev)
-               goto disable_pci;
+               return err;
 
        sm750_dev->fbinfo[0] = sm750_dev->fbinfo[1] = NULL;
        sm750_dev->devid = pdev->device;
 
 release_fb:
        sm750fb_frambuffer_release(sm750_dev);
-disable_pci:
-       pci_disable_device(pdev);
        return err;
 }