[U-Boot] [PATCH v5 02/19] usb: dwc2: Use separate input and output buffers

Marek Vasut marex at denx.de
Sun Apr 2 03:01:41 UTC 2017


On 04/02/2017 01:40 AM, Simon Glass wrote:
> Hi Marek,
> 
> On 1 April 2017 at 14:15, Marek Vasut <marex at denx.de> wrote:
>> On 04/01/2017 08:05 PM, Simon Glass wrote:
>>> On Raspberry Pi 2 and 3 a problem was noticed when enabling driver model
>>> for USB: the cache invalidate after an incoming transfer does not seem to
>>> work correctly.
>>>
>>> This may be a problem with the underlying caching implementation on armv7
>>> and armv8 but this seems very unlikely. As a work-around, use separate
>>> buffers for input and output. This ensures that the input buffer will not
>>> hold dirty cache data.
>>
>> What do you think of this patch:
>> [U-Boot] usb: dwc2: invalidate the dcache before starting the DMA
> 
> Yes that matches what I did as a hack. I didn't realise that the DMA
> would go through the cache. Thanks for the pointer.

DMA should not go through the cache. I have yet to review that patch,
but IMO it's relevant to this problem you observe.

-- 
Best regards,
Marek Vasut


More information about the U-Boot mailing list