CPU Cache and busdma usage in USB

Rafal Jaworowski raj at semihalf.com
Tue Jul 14 09:21:42 UTC 2009


On 2009-07-14, at 10:36, Hans Petter Selasky wrote:

> On Tuesday 14 July 2009 10:31:10 Piotr Zięcik wrote:
>>> 1) My analysis: Only the data areas are being flushed/invalidated.  
>>> No
>>> transfer descriptors are flushed/invalidated. I see no cache  
>>> operations
>>> happening on any DMA control structures, even though there are  
>>> calls from
>>> EHCI to xxx_pc_flush() and xxx_pc_invalidate().
>>
>
>> Probaby you see more on your AT91 device as you know USB stack  
>> internals.
>> Have you tried to bring up OHCI on you ARM board ?
>
> Not yet. I'm terribly busy with some LibUSB stuff headed for the 8- 
> current
> release. As soon as I find time I will fire off a build and debug.

Please note these problems should be considered as a showstopper for  
the release since USB is currently broken on at least three ARM  
platforms in the tree (Marvell).

> BTW: Has pmap been fixed for ARM in 8-current?

Seems like the most critical problems (panics) are resolved and will  
be pushed into SVN shortly. In case you'd like to apply the fix  
directly, see: http://people.freebsd.org/~raj/patches/arm/pmap-fixes.diff

Rafal



More information about the freebsd-usb mailing list