diff options
-rw-r--r-- | drivers/scsi/ufs/ufshcd-pltfrm.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/scsi/ufs/ufshcd-pltfrm.c b/drivers/scsi/ufs/ufshcd-pltfrm.c index 001dd8df92d7..d80e837bfb88 100644 --- a/drivers/scsi/ufs/ufshcd-pltfrm.c +++ b/drivers/scsi/ufs/ufshcd-pltfrm.c @@ -378,8 +378,6 @@ int ufshcd_pltfrm_init(struct platform_device *pdev, ufshcd_parse_pm_qos(hba, irq); ufshcd_parse_pm_levels(hba); - pm_runtime_set_active(&pdev->dev); - pm_runtime_enable(&pdev->dev); if (!dev->dma_mask) dev->dma_mask = &dev->coherent_dma_mask; @@ -387,16 +385,15 @@ int ufshcd_pltfrm_init(struct platform_device *pdev, err = ufshcd_init(hba, mmio_base, irq); if (err) { dev_err(dev, "Intialization failed\n"); - goto out_disable_rpm; + goto dealloc_host; } platform_set_drvdata(pdev, hba); - return 0; + pm_runtime_set_active(&pdev->dev); + pm_runtime_enable(&pdev->dev); -out_disable_rpm: - pm_runtime_disable(&pdev->dev); - pm_runtime_set_suspended(&pdev->dev); + return 0; dealloc_host: ufshcd_dealloc_host(hba); out: |