summaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/udc/atmel_usba_udc.c
diff options
context:
space:
mode:
authorBo Shen2014-08-07 05:43:07 +0200
committerFelipe Balbi2014-08-19 16:24:41 +0200
commitbcabdc24dff2d65dcc5bec093f30302283e5fdf4 (patch)
tree4ff7778baae1956ebfc618db0cf1129aa07e0621 /drivers/usb/gadget/udc/atmel_usba_udc.c
parentusb: gadget: fix error return code (diff)
downloadkernel-qcow2-linux-bcabdc24dff2d65dcc5bec093f30302283e5fdf4.tar.gz
kernel-qcow2-linux-bcabdc24dff2d65dcc5bec093f30302283e5fdf4.tar.xz
kernel-qcow2-linux-bcabdc24dff2d65dcc5bec093f30302283e5fdf4.zip
usb: atmel_usba_udc: fix it to deal with final dma channel
As, the interrupt for DMA is counted from 1, so need to checked the USBA_NR_DMAS, in old way, it only check (USBA_NR_DMAS - 1), so fix it. Reported-by: Max Liao <liaops@embest-tech.com> Signed-off-by: Bo Shen <voice.shen@atmel.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/gadget/udc/atmel_usba_udc.c')
-rw-r--r--drivers/usb/gadget/udc/atmel_usba_udc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/gadget/udc/atmel_usba_udc.c b/drivers/usb/gadget/udc/atmel_usba_udc.c
index 906e65f0e4fa..c9fe67e29d35 100644
--- a/drivers/usb/gadget/udc/atmel_usba_udc.c
+++ b/drivers/usb/gadget/udc/atmel_usba_udc.c
@@ -1661,7 +1661,7 @@ static irqreturn_t usba_udc_irq(int irq, void *devid)
if (dma_status) {
int i;
- for (i = 1; i < USBA_NR_DMAS; i++)
+ for (i = 1; i <= USBA_NR_DMAS; i++)
if (dma_status & (1 << i))
usba_dma_irq(udc, &udc->usba_ep[i]);
}