[Patch] Increase USBFS Bulk Transfer size

Markus Rechberger
2011-10-12T12:37:01Z

[-- Attachment #1: Type: text/plain, Size: 993 bytes --]

We have 2 products which can perform better with increased Bulk transfers

Device No. 1:
According to the hardware spec of on of our product
Available Bulk Transfer Size are:
- 188 * n bytes, where n = 1 ~ 256.

Although we can drive that one with 15K as well when setting the HW
register down to it.

Device No. 2
only creates jitter video with Bulk transfer sizes which are below
24064 bytes, no such chipfeature is available
to decrease the bulk transfer size.
http://sundtek.de/images/dtvjitter2.jpg
with transfer size of 24064:
http://sundtek.de/images/gooddata.jpg

The patch takes the features of Device No. 1 into account allowing a
maximum buffer of 48128 bytes.

Those issues have been evaluated with MacOSX and a customized patched
Linux version.
Device No. 2 also corrupts on MacOSX with too small packet sizes,
Windows and Mac are using 24064 bytes.

Default Bulk Transfersize of device No. 1 is around 1-2k which leads
to very high cpu usage, updating it to 15k lowers that one.

[-- Attachment #2: devio.c.diff --]
[-- Type: text/x-patch, Size: 336 bytes --]

--- ./drivers/usb/core/devio.c_old 2011-10-12 14:23:34.000000000 +0200
+++ ./drivers/usb/core/devio.c 2011-10-12 14:25:30.000000000 +0200
@@ -107,7 +107,7 @@

#define USB_DEVICE_DEV MKDEV(USB_DEVICE_MAJOR, 0)

-#define MAX_USBFS_BUFFER_SIZE 16384
+#define MAX_USBFS_BUFFER_SIZE 48128

static int connected(struct dev_state *ps)