cvs commit: src/sys/dev/usb ehci.c ehci_pci.c ehcivar.h
peterjeremy at optushome.com.au
Tue Jan 31 22:33:01 PST 2006
On Tue, 2006-Jan-31 22:00:21 +0000, Ian Dowse wrote:
>In the case of USB, there is actually no need for it to perform
>large contiguous allocations because the host controllers all support
>some limited scatter-gather functionality so they can mostly access
>the caller's memory buffer directly via bus_dmamap_load(). This is
>something I implemented a year or to ago but I haven't got around
>to finishing the last few details of the patch yet.
I'd looked into the specs far enough to determine that this was
possible but haven't looked at how difficult it would be to implement
it. I think this is a preferable solution and would be interested in
helping you finish your patch.
Whilst it's desirable that contigmalloc() not panic, making
contigmalloc() return NULL when asked to allocate a large block of
memory without waiting doesn't actually help get the data from the
physical device into the driver.
More information about the freebsd-usb