31st address line sometimes not used on EHCI/UHCI/OHCI

Hans Petter Selasky hselasky at c2i.net
Mon May 28 06:53:30 UTC 2007


On Sunday 27 May 2007 23:53, John-Mark Gurney wrote:
> Hans Petter Selasky wrote this message on Sun, May 27, 2007 at 22:35 +0200:
> > I've got some reports back that some USB host controllers do not support
> > transferring memory from a location higher than 2GB.
> >
> > What should we do about this?
> >
> > Should we limit all USB DMA allocations to the lower 2GB of the memory?
>
> No, a quirk table should be setup and pass the restriction to bus_dma
> at tag initalization time when a broken controller is detected..

Yes, I can do that. But I am also thinking about a static quirk, like a sysctl 
you can set at boot time.

I hope that this is not a wide-spread problem.

And I am not surprised that hardware manufacturers are not specification 
compliant, which really makes me wonder if they support a true 64-bit address 
bus on the EHCI controller at all. I would maybe cost too much money? And 
therefore we should just stick with 32-bit addressing on 32-bit platforms 
aswell.

--HPS


More information about the freebsd-usb mailing list