I've been trying to use the musb host controller for devices other
than USB mass storage like Wifi-Sticks and USB audio cards, and ran
into a larger number of nasty issues. After staring at hexdumps for
the better part of the last couple of days, I finally fixed all of
them. I used an external hardware USB analyzer to track down lost
packets, data toggle mismatches and stream starvation.
Here are 7 patches to fix the issues I've seen. Most of them affect
the musb <-> cppi41 glue layer, and #1 is for the cppi41 DMA driver.
Vinod, you can safely merge this one through your tree, as there's no
dependency to any other patch, and it's clearly fixing a bug.
Also, I'd actually say that all but #2 are candidates for stable@, but
I leave it to Felipe to decide that :)
Please have a look. More tests on AM335x are very welcome, and so are
regression tests for any other platform.
Thank,
Daniel
Daniel Mack (7):
dma: cppi41: handle 0-length packets
usb: musb: remove unnecessary (void) prefix at function calls
usb: musb: use is_host_active() to distinguish between host and gadget
mode
usb: musb: fix bit masks for CSR in musb_h_tx_flush_fifo()
usb: musb: introduce dma_channel.packet_done
usb: musb/cppi41: call musb_ep_select() before accessing an endpoint's
CSR
usb: musb/cppi41: read data toggle from right endpoint
drivers/dma/cppi41.c | 13 ++++++++++---
drivers/usb/musb/musb_core.c | 16 +++++++---------
drivers/usb/musb/musb_cppi41.c | 15 ++++++++++++---
drivers/usb/musb/musb_dma.h | 1 +
drivers/usb/musb/musb_host.c | 12 +++++++-----
5 files changed, 37 insertions(+), 20 deletions(-)
--
1.9.0
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html