usb: musb: host: remove duplicate check in musb_ep_program()
authorSergei Shtylyov <sshtylyov@ru.mvista.com>
Sat, 7 May 2011 15:44:13 +0000 (19:44 +0400)
committerFelipe Balbi <balbi@ti.com>
Fri, 13 May 2011 11:34:07 +0000 (14:34 +0300)
musb_ep_program() contains obviously duplicate check for 'dma_channel' in its
IN/receive path -- removing it allows to save one level of indentation. While
at it, improve the comment style...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/musb/musb_host.c

index 75aa01e0036d5e6449ef8a0ca2bbbf3224813ad4..7295e316bdfcf82e2af402118ce93e5af2dec465 100644 (file)
@@ -837,33 +837,28 @@ static void musb_ep_program(struct musb *musb, u8 epnum,
                /* kick things off */
 
                if ((is_cppi_enabled() || tusb_dma_omap()) && dma_channel) {
-                       /* candidate for DMA */
-                       if (dma_channel) {
-                               dma_channel->actual_len = 0L;
-                               qh->segsize = len;
-
-                               /* AUTOREQ is in a DMA register */
-                               musb_writew(hw_ep->regs, MUSB_RXCSR, csr);
-                               csr = musb_readw(hw_ep->regs,
-                                               MUSB_RXCSR);
-
-                               /* unless caller treats short rx transfers as
-                                * errors, we dare not queue multiple transfers.
-                                */
-                               dma_ok = dma_controller->channel_program(
-                                               dma_channel, packet_sz,
-                                               !(urb->transfer_flags
-                                                       & URB_SHORT_NOT_OK),
-                                               urb->transfer_dma + offset,
-                                               qh->segsize);
-                               if (!dma_ok) {
-                                       dma_controller->channel_release(
-                                                       dma_channel);
-                                       hw_ep->rx_channel = NULL;
-                                       dma_channel = NULL;
-                               } else
-                                       csr |= MUSB_RXCSR_DMAENAB;
-                       }
+                       /* Candidate for DMA */
+                       dma_channel->actual_len = 0L;
+                       qh->segsize = len;
+
+                       /* AUTOREQ is in a DMA register */
+                       musb_writew(hw_ep->regs, MUSB_RXCSR, csr);
+                       csr = musb_readw(hw_ep->regs, MUSB_RXCSR);
+
+                       /*
+                        * Unless caller treats short RX transfers as
+                        * errors, we dare not queue multiple transfers.
+                        */
+                       dma_ok = dma_controller->channel_program(dma_channel,
+                                       packet_sz, !(urb->transfer_flags &
+                                                    URB_SHORT_NOT_OK),
+                                       urb->transfer_dma + offset,
+                                       qh->segsize);
+                       if (!dma_ok) {
+                               dma_controller->channel_release(dma_channel);
+                               hw_ep->rx_channel = dma_channel = NULL;
+                       } else
+                               csr |= MUSB_RXCSR_DMAENAB;
                }
 
                csr |= MUSB_RXCSR_H_REQPKT;