diff options
author | Per Forlin <per.forlin@linaro.org> | 2011-08-02 17:33:39 +0200 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2011-08-12 11:52:45 +0300 |
commit | d366d39bab562545ccb4a5931d62d0fd9e6a8ffc (patch) | |
tree | ac33c6766924ab314e2c9ca62a2a79d68890c712 | |
parent | 93e098a8fc02c579875e64001f7a511b7e75a16c (diff) | |
download | op-kernel-dev-d366d39bab562545ccb4a5931d62d0fd9e6a8ffc.zip op-kernel-dev-d366d39bab562545ccb4a5931d62d0fd9e6a8ffc.tar.gz |
usb: musb: ux500: set dma config for both src and dst
The dma driver requires both src and dst to be set.
This fix is needed in order to run gadget mass storage.
Patch is verified on snowball.
Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Felipe Balbi <balbi@ti.com>
-rw-r--r-- | drivers/usb/musb/ux500_dma.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/drivers/usb/musb/ux500_dma.c b/drivers/usb/musb/ux500_dma.c index cecace4..2313475 100644 --- a/drivers/usb/musb/ux500_dma.c +++ b/drivers/usb/musb/ux500_dma.c @@ -133,15 +133,13 @@ static bool ux500_configure_channel(struct dma_channel *channel, DMA_SLAVE_BUSWIDTH_4_BYTES; slave_conf.direction = direction; - if (direction == DMA_FROM_DEVICE) { - slave_conf.src_addr = usb_fifo_addr; - slave_conf.src_addr_width = addr_width; - slave_conf.src_maxburst = 16; - } else { - slave_conf.dst_addr = usb_fifo_addr; - slave_conf.dst_addr_width = addr_width; - slave_conf.dst_maxburst = 16; - } + slave_conf.src_addr = usb_fifo_addr; + slave_conf.src_addr_width = addr_width; + slave_conf.src_maxburst = 16; + slave_conf.dst_addr = usb_fifo_addr; + slave_conf.dst_addr_width = addr_width; + slave_conf.dst_maxburst = 16; + dma_chan->device->device_control(dma_chan, DMA_SLAVE_CONFIG, (unsigned long) &slave_conf); |