Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e0f4b7c5 authored by Akinobu Mita's avatar Akinobu Mita Committed by James Bottomley
Browse files

[SCSI] ufs: don't disable_irq() if the IRQ can be shared among devices



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: default avatarAkinobu Mita <mita@fixstars.com>
Signed-off-by: default avatarSantosh Y <santoshsy@gmail.com>
Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
parent 36f4f3b6
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -131,8 +131,6 @@ static void ufshcd_pci_remove(struct pci_dev *pdev)

	pm_runtime_forbid(&pdev->dev);
	pm_runtime_get_noresume(&pdev->dev);

	disable_irq(pdev->irq);
	ufshcd_remove(hba);
	pci_set_drvdata(pdev, NULL);
}
+0 −2
Original line number Diff line number Diff line
@@ -188,8 +188,6 @@ static int ufshcd_pltfrm_remove(struct platform_device *pdev)
	struct ufs_hba *hba =  platform_get_drvdata(pdev);

	pm_runtime_get_sync(&(pdev)->dev);

	disable_irq(hba->irq);
	ufshcd_remove(hba);
	return 0;
}