Hi, On Fri, Sep 30, 2011 at 12:10:06PM -0700, Paul Zimmerman wrote: > The Synopsys USB device controller requires all OUT transfer request > lengths to be aligned to max packet size. The mass storage gadgets do > not meet this requirement for Super Speed. The gadgets already have a > function which performs this alignment for CBW packets, so use it for > data packets too. > > The alternative would be to implement bounce buffers in the DWC3 > driver, but that could have a significant impact on performance. > > Signed-off-by: Paul Zimmerman <paulz@xxxxxxxxxxxx> > --- > Alan, Felipe, > > I remeber there was a lot of discussion on the list around this > or a similar issue, was a conclusion ever reached? Is this patch > acceptable? This is actually a good point. We can't simply roundup request length on UDC driver because we don't know if gadget driver has allocated enough space should host send more data. OTOH, if we don't roundup request->lenght, driver won't work *always* on SuperSpeed. From DWC3 point this patch should be acceptable, but there could be another controller with a different quirk where DMA wouldn't complete unless we pass correct size, dunno. Alan ? -- balbi
Attachment:
signature.asc
Description: Digital signature