Re: [PATCH 10/43] USB: musb: blackfin: work around anomaly 05000450

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

 



On Wed, Apr 20, 2011 at 02:30:50PM +0400, Sergei Shtylyov wrote:
> Hello.
> 
> On 16-04-2011 4:05, Greg Kroah-Hartman wrote:
> 
> >From: Mike Frysinger<vapier@xxxxxxxxxx>
> 
> >DMA mode 1 data corruption anomaly on Blackfin systems.  This issue is
> >specific to the Blackfin silicon as the bug appears to be related to the
> >connection of the musb ip to the bus/dma fabric.
> 
> >Data corruption when using USB DMA mode 1. (Issue manager 17-01-0105)
> >DMA mode 1 allows large size transfers to generate a single interrupt
> >at the end of the entire transfer.  The transfer is split up in packets
> >of length specified in the Maximum Packet Size field for that endpoint.
> >If the transfer size is not an integer multiple of the Maximum Packet
> >Size, a short packet will be present at the end of the transfer.
> 
> >Under certain conditions this packet may be corrupted in the USB FIFO.
> 
> >Workaround:
> >Use DMA mode 1 to transfer (n* Maximum Packet Size) and schedule DMA
> >mode 0 to transfer the short packet.
> 
> >As an example if your transfer size is 33168 bytes and Maximum Packet
> >Size equals 512, schedule [33168 - (33168 mod 512)] in DMA mode 1 and
> >the remainder (33168 mod 512) in DMA mode 0.
> 
> >Signed-off-by: Mike Frysinger<vapier@xxxxxxxxxx>
> >Signed-off-by: Felipe Balbi<balbi@xxxxxx>
> [...]
> 
> >diff --git a/drivers/usb/musb/musb_core.h b/drivers/usb/musb/musb_core.h
> >index 4bd9e21..0e053b5 100644
> >--- a/drivers/usb/musb/musb_core.h
> >+++ b/drivers/usb/musb/musb_core.h
> >@@ -261,6 +261,7 @@ enum musb_g_ep0_state {
> >   * @try_ilde:	tries to idle the IP
> >   * @vbus_status: returns vbus status if possible
> >   * @set_vbus:	forces vbus status
> >+ * @channel_program: pre check for standard dma channel_program func
> 
>    Didn't notice this before: kerneldoc doesn't match the code here.

a bit late, patches for next merge window fixing it are accepted though.

-- 
balbi
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

  Powered by Linux