]> git.hungrycats.org Git - linux/commitdiff
usb: renesas_usbhs: disable TX IRQ before starting TX DMAC transfer
authorYoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Thu, 10 Mar 2016 02:30:15 +0000 (11:30 +0900)
committerSasha Levin <sasha.levin@oracle.com>
Wed, 20 Apr 2016 05:20:13 +0000 (01:20 -0400)
[ Upstream commit 6490865c67825277b29638e839850882600b48ec ]

This patch adds a code to surely disable TX IRQ of the pipe before
starting TX DMAC transfer. Otherwise, a lot of unnecessary TX IRQs
may happen in rare cases when DMAC is used.

Fixes: e73a989 ("usb: renesas_usbhs: add DMAEngine support")
Cc: <stable@vger.kernel.org> # v3.1+
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
drivers/usb/renesas_usbhs/fifo.c

index 67136240e400b8802834d8f5bbb310a905165c1f..e5f429ee7a895aba02b7f74517c1e9722733feca 100644 (file)
@@ -907,6 +907,7 @@ static int usbhsf_dma_prepare_push(struct usbhs_pkt *pkt, int *is_done)
 
        pkt->trans = len;
 
+       usbhsf_tx_irq_ctrl(pipe, 0);
        INIT_WORK(&pkt->work, xfer_work);
        schedule_work(&pkt->work);