EHCI on armv6 with Write-Back caches
Warner Losh
imp at bsdimp.com
Tue Dec 18 20:37:49 UTC 2012
On Dec 18, 2012, at 1:22 AM, Hans Petter Selasky wrote:
> On Tuesday 18 December 2012 08:49:31 Andrew Turner wrote:
>> Hello,
>>
>> Oleksandr and myself have been looking into why when we enable the
>> write-back cache on the PandaBoard there are kernel panics with USB. We
>> have tracked it down to an issue appending the ehci_qh_t to the list at
>> the end of ehci_setup_standard_chain().
>>
>> I have a patch at [1] that allows me to run sha256 on a 40MB file over
>> NSF using the built in smsc USB ethernet chip. The problem is I have
>> had to place a call to DELAY before EHCI_APPEND_QH. This is obviously
>> not the correct solution.
>>
>> Is anyone able to help me narrow down what is missing? It appears to be
>> a missing cache invalidate or flush somewhere but I haven't been able
>> to track down what cache function the DELAY is working around.
>>
>> Andrew
>>
>> [1] http://fubar.geek.nz/files/freebsd/ehci_4.diff
>
> Hi,
>
> Can you dump the DMA tag belonging to the QH via and check wether it is mapped
> coherent or not. Thes QH- and TD- structures should not be cache mapped. Else
> cache has not been disabled on those pages.
busdma doesn't work that way. The coherent flag is just a hint....
Warner
> qh->page_cache->tag
>
> --HPS
> _______________________________________________
> freebsd-usb at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-usb
> To unsubscribe, send any mail to "freebsd-usb-unsubscribe at freebsd.org"
More information about the freebsd-usb
mailing list