summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@suse.de>2011-04-14 20:37:07 (GMT)
committerGreg Kroah-Hartman <gregkh@suse.de>2011-04-14 20:37:07 (GMT)
commit753d8534cc190ed144caebc2ea49ab7a43dca662 (patch)
tree58f927b3a12dd3e8f598d80aeb38ec026c6b8024
parentc41136b05d3fb213a192f76a5688ff83687c1136 (diff)
downloadlinux-fsl-qoriq-753d8534cc190ed144caebc2ea49ab7a43dca662.tar.xz
Revert "USB: isp1760-hcd: move imask clear after pending work is done"
This reverts commit 5808544690300071f09eef9ab83a0fb1f60cf1cd. To quote Richard: I don't think this should be mainlined. It was a misunderstanding on my part. If you see all the other hdc drivers in the same location, they all do the same thing (i.e. clear the interrupt status first, then do the work) that "glitch" I think I saw was actually two back-to-back interrupts. Sebastian (the original author of isp1760) explained it to me a few days after my submission. sorry for the confusion Cc: Richard Retanubun <RichardRetanubun@ruggedcom.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/usb/host/isp1760-hcd.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/usb/host/isp1760-hcd.c b/drivers/usb/host/isp1760-hcd.c
index 564b033..795345a 100644
--- a/drivers/usb/host/isp1760-hcd.c
+++ b/drivers/usb/host/isp1760-hcd.c
@@ -1676,15 +1676,13 @@ static irqreturn_t isp1760_irq(struct usb_hcd *hcd)
if (unlikely(!imask))
goto leave;
+ reg_write32(hcd->regs, HC_INTERRUPT_REG, imask);
if (imask & (HC_ATL_INT | HC_SOT_INT))
do_atl_int(hcd);
if (imask & HC_INTL_INT)
do_intl_int(hcd);
- /* Clear interrupt mask on device after the work is done */
- reg_write32(hcd->regs, HC_INTERRUPT_REG, imask);
-
irqret = IRQ_HANDLED;
leave:
spin_unlock(&priv->lock);