CPU Cache and busdma usage in USB

Hans Petter Selasky hselasky at c2i.net
Tue Jul 7 16:47:08 UTC 2009


On Tuesday 07 July 2009 15:50:28 Piotr Zięcik wrote:
> > I did not find time yet to test on my AT91RM9200 board. I hope to do a
> > test this week. Did you at semihalf find anything?
>

Hi,

> I had Checked USB behaviour on PowerPC without hardware cache coherency.
> The problem also exists here and patch helps.

In my source code view the busdma sync function is empty for power-pc. Your 
patch should have no effect at all for sync operations?

>
> I also generated some logs which you asked for:

Thanks. I will try to make a build for AT91RM9200 tonight.

Did you test my suggested patch:

> Try adding:
>
>                 cpu_dcache_wb_range((vm_offset_t)buf, len);
>                 cpu_l2cache_wb_range((vm_offset_t)buf, len);
>
> Before:
>
>                         cpu_dcache_wbinv_range((vm_offset_t)buf, len);
>                         cpu_l2cache_wbinv_range((vm_offset_t)buf, len);
>
> In: sys/arm/arm/busdma_machdep.c

Or have you got any comments on that?

--HPS



More information about the freebsd-usb mailing list