Re: [PATCH 1/3] usb: musb: musb_host: Enable ISOCH IN handling forAM335x host

From: Sergei Shtylyov
Date: Fri Jan 24 2014 - 12:43:36 EST


Hello.

On 24-01-2014 18:14, George Cherian wrote:

Enable the isochrounous IN handling for AM335x HOST.
Reprogram CPPI to receive consecutive ISOCH frames in the same URB.

Sigh, I knew CPPI ISO path was broken for years but didn't have time to fix it. :-(

Signed-off-by: George Cherian <george.cherian@xxxxxx>
---
drivers/usb/musb/musb_host.c | 29 ++++++++++++++++++++++++++---
1 file changed, 26 insertions(+), 3 deletions(-)

diff --git a/drivers/usb/musb/musb_host.c b/drivers/usb/musb/musb_host.c
index ed45572..5b6482c 100644
--- a/drivers/usb/musb/musb_host.c
+++ b/drivers/usb/musb/musb_host.c
@@ -1689,9 +1689,11 @@ void musb_host_rx(struct musb *musb, u8 epnum)
| MUSB_RXCSR_H_AUTOREQ
| MUSB_RXCSR_AUTOCLEAR
| MUSB_RXCSR_RXPKTRDY);
+

Not needed.

musb_writew(hw_ep->regs, MUSB_RXCSR, val);

-#if defined(CONFIG_USB_INVENTRA_DMA) || defined(CONFIG_USB_UX500_DMA)
+#if defined(CONFIG_USB_INVENTRA_DMA) || defined(CONFIG_USB_UX500_DMA) || \
+ defined(CONFIG_USB_TI_CPPI41_DMA)

The DaVinci CPPI 3.0 should probably also be included here...

if (usb_pipeisoc(pipe)) {
struct usb_iso_packet_descriptor *d;

@@ -1706,8 +1708,28 @@ void musb_host_rx(struct musb *musb, u8 epnum)

if (++qh->iso_idx >= urb->number_of_packets)
done = true;
- else
+ else {

If you're making the *else* arm use {}, you should make all the other arms of *if* statement also have them -- see Documentation/CodingStyle.

WBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/