Re: [PATCH] usb: musb: Double buffering issues in host mode TX

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jan 17, 2013 at 12:32:12PM +0100, Supriya  s KARANTH wrote:
> Hi Felipe,
> 
> > -----Original Message-----
> > From: Felipe Balbi [mailto:balbi@xxxxxx]
> > Subject: Re: [PATCH] usb: musb: Double buffering issues in host mode TX
> > > From: supriya karanth <supriya.karanth@xxxxxxxxxxxxxx>
> > > Whenever an URB is programmed for transfer, the TXFIFO is flushed.
> > > This results in valid packets of the previous transfer to get flushed
> > > when double buffering is enabled (The MUSB_TXCSR_FIFONOTEMPTY bit
> > in
> > > TXCSR is set indicating that a packet in the FIFO is yet to be sent)
> > > For ex:- In Host mode Audio, noise is heard in the headset when double
> > > buffering is enabled on the ISO endpoint.
> > > The fifo flush is removed for double buffering case.
> > > The fifo is now flushed only in cases of error or when aborting a
> > > transfer.
> > > Also, In Host MSC case, data toggle errors are seen when double
> > > buffering is enabled on the bulk endpoint. Whenever an URB is
> > > programmed for transfer, the data toggle is set manually resulting in
> > > data toggle errors on the bus. Leave the data toggle handling upto the
> > > hardware in the double buffering case.
> > 
> > how was this one tested ?
> We noticed audio noise in the headset when double buffering was enabled on 
> the ISO endpoint. In the bus traces we see that for every few frames there is a 
> packet missing between 2 SOFs because the packet is getting flushed.
> With the patch we have confirmed that there is no noise in the headset and 
> the behavior of packets missing between SOFs is not seen in the bus trace.
> 
> For the MSC case we have observed in the bus trace that sometimes there is a 
> toggle mismatch in the BULK OUT transaction. With the patch this issue is not 
> observed.

Cool, thank you :-)

-- 
balbi

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux