diff options
author | n_hibma <n_hibma@FreeBSD.org> | 2000-02-10 18:50:19 +0000 |
---|---|---|
committer | n_hibma <n_hibma@FreeBSD.org> | 2000-02-10 18:50:19 +0000 |
commit | e8b624173afd0d3abbffcee785b504b298ae4b4b (patch) | |
tree | f52d0cdd18364528cfc25ca3ccdb2c2656d5aff8 /sys/dev/usb/usb_port.h | |
parent | ca6bc8a505ef28bf23c51720be7efccdec424c56 (diff) | |
download | FreeBSD-src-e8b624173afd0d3abbffcee785b504b298ae4b4b.zip FreeBSD-src-e8b624173afd0d3abbffcee785b504b298ae4b4b.tar.gz |
Correctly handle the conversion from virtual to physical addresses. The
problem was basically (for offset > 4096):
vtophys(addr) + offset != vtophys(addr + offset)
Also, use TD's with a maximum size of 4k instead of 8kb for OHCI
controllers.
This problem occurs in drivers that use large transfer sizes:
umass, host2host and ethernet with jumbo frames.
Diffstat (limited to 'sys/dev/usb/usb_port.h')
-rw-r--r-- | sys/dev/usb/usb_port.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/usb/usb_port.h b/sys/dev/usb/usb_port.h index 8ab7c31..2e86338 100644 --- a/sys/dev/usb/usb_port.h +++ b/sys/dev/usb/usb_port.h @@ -275,7 +275,7 @@ __CONCAT(dname,_detach)(self, flags) \ #define USBDEVPTRNAME(bdev) device_get_nameunit(bdev) #define USBDEVUNIT(bdev) device_get_unit(bdev) -#define DECLARE_USB_DMA_T typedef void * usb_dma_t +#define DECLARE_USB_DMA_T typedef char * usb_dma_t /* XXX Change this when FreeBSD has memset */ #define memcpy(d, s, l) bcopy((s),(d),(l)) |