aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/usbdevice_fs.h
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2012-07-04 03:18:03 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-07-06 13:53:20 -0400
commit3d97ff63f8997761f12c8fbe8082996c6eeaba1a (patch)
treea32cd04584cf59dac78be5b2f69bb9865b69f6ea /include/linux/usbdevice_fs.h
parent19181bc50e1b8e92a7a3b3d78637c6dc5c0b5a1b (diff)
usbdevfs: Use scatter-gather lists for large bulk transfers
When using urb->transfer_buffer we need to allocate physical contiguous buffers for the entire transfer, which is pretty much guaranteed to fail with large transfers. Currently userspace works around this by breaking large transfers into multiple urbs. For large bulk transfers this leads to all kind of complications. This patch makes it possible for userspace to reliable submit large bulk transfers to scatter-gather capable host controllers in one go, by using a scatterlist to break the transfer up in managable chunks. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/usbdevice_fs.h')
-rw-r--r--include/linux/usbdevice_fs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/usbdevice_fs.h b/include/linux/usbdevice_fs.h
index 07b2ceaaad70..3b74666be027 100644
--- a/include/linux/usbdevice_fs.h
+++ b/include/linux/usbdevice_fs.h
@@ -129,6 +129,7 @@ struct usbdevfs_hub_portinfo {
129#define USBDEVFS_CAP_ZERO_PACKET 0x01 129#define USBDEVFS_CAP_ZERO_PACKET 0x01
130#define USBDEVFS_CAP_BULK_CONTINUATION 0x02 130#define USBDEVFS_CAP_BULK_CONTINUATION 0x02
131#define USBDEVFS_CAP_NO_PACKET_SIZE_LIM 0x04 131#define USBDEVFS_CAP_NO_PACKET_SIZE_LIM 0x04
132#define USBDEVFS_CAP_BULK_SCATTER_GATHER 0x08
132 133
133#ifdef __KERNEL__ 134#ifdef __KERNEL__
134#ifdef CONFIG_COMPAT 135#ifdef CONFIG_COMPAT