From: Jiri Slaby <jirislaby@gmail.com>
Date: Fri, 19 Oct 2007 06:40:23 +0000 (-0700)
Subject: Misc: phantom, synchronize_irq() on suspend
X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=aee8447cb5d497cc90ebe171bf70d9e68787e988;p=GitHub%2FLineageOS%2Fandroid_kernel_samsung_universal7580.git

Misc: phantom, synchronize_irq() on suspend

Wait after disabling device's interrupt until the handler finishes its work if
still in progress.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
---

diff --git a/drivers/misc/phantom.c b/drivers/misc/phantom.c
index 5108b7c576d..6e61a79de24 100644
--- a/drivers/misc/phantom.c
+++ b/drivers/misc/phantom.c
@@ -378,6 +378,8 @@ static int phantom_suspend(struct pci_dev *pdev, pm_message_t state)
 	iowrite32(0, dev->caddr + PHN_IRQCTL);
 	ioread32(dev->caddr + PHN_IRQCTL); /* PCI posting */
 
+	synchronize_irq(pdev->irq);
+
 	return 0;
 }