When removing the UFS driver, disable_irq() is called and the IRQ is
not enabled again. Unfortunately, the IRQ is requested with IRQF_SHARED
and it can be shared among several devices. So disabling the IRQ in
this way is just breaking other devices which are sharing the IRQ.
Signed-off-by: Akinobu Mita <mita@fixstars.com>
Signed-off-by: Santosh Y <santoshsy@gmail.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
pm_runtime_forbid(&pdev->dev);
pm_runtime_get_noresume(&pdev->dev);
-
- disable_irq(pdev->irq);
ufshcd_remove(hba);
pci_set_drvdata(pdev, NULL);
}
struct ufs_hba *hba = platform_get_drvdata(pdev);
pm_runtime_get_sync(&(pdev)->dev);
-
- disable_irq(hba->irq);
ufshcd_remove(hba);
return 0;
}