summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRobert Morell <rmorell@nvidia.com>2010-12-15 14:57:16 -0800
committerJanne Hellsten <jhellsten@nvidia.com>2010-12-17 11:51:52 -0800
commit1acea7081799e0d64a00cc982bc9f8dd97432f49 (patch)
treee888c2263289646a5a3b510b0ae0c713e8342b53 /include
parentbaa6624fecd5fa340e3773a2329b354e45c89f79 (diff)
USB: ehci: tegra: Align DMA transfers to 32 bytes
The Tegra2 USB controller doesn't properly deal with misaligned DMA buffers, causing corruption. This is especially prevalent with USB network adapters, where skbuff alignment is often in the middle of a 4-byte dword. To avoid this, allocate a temporary buffer for the DMA if the provided buffer isn't sufficiently aligned. Change-Id: Ica56c52c3b2152e3ba2b96506cf15105462a0602 Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-on: http://git-master/r/13382 Reviewed-by: Scott Williams <scwilliams@nvidia.com> Reviewed-by: Janne Hellsten <jhellsten@nvidia.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/usb.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/usb.h b/include/linux/usb.h
index 35fe6ab222bb..cd07173c1bc0 100644
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
@@ -975,6 +975,7 @@ extern int usb_disabled(void);
#define URB_SETUP_MAP_SINGLE 0x00100000 /* Setup packet DMA mapped */
#define URB_SETUP_MAP_LOCAL 0x00200000 /* HCD-local setup packet */
#define URB_DMA_SG_COMBINED 0x00400000 /* S-G entries were combined */
+#define URB_DRIVER_PRIVATE 0x80000000 /* For driver-private use */
struct usb_iso_packet_descriptor {
unsigned int offset;