]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/4.14.44/media-em28xx-usb-bulk-packet-size-fix.patch
4.9-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 4.14.44 / media-em28xx-usb-bulk-packet-size-fix.patch
CommitLineData
06e23a17
GKH
1From foo@baz Thu May 24 11:09:34 CEST 2018
2From: Brad Love <brad@nextdimension.cc>
3Date: Thu, 4 Jan 2018 19:04:13 -0500
4Subject: media: em28xx: USB bulk packet size fix
5
6From: Brad Love <brad@nextdimension.cc>
7
8[ Upstream commit c7c7e8d7803406daa21e96d00c357de8b77b6764 ]
9
10Hauppauge em28xx bulk devices exhibit continuity errors and corrupted
11packets, when run in VMWare virtual machines. Unknown if other
12manufacturers bulk models exhibit the same issue. KVM/Qemu is unaffected.
13
14According to documentation the maximum packet multiplier for em28xx in bulk
15transfer mode is 256 * 188 bytes. This changes the size of bulk transfers
16to maximum supported value and have a bonus beneficial alignment.
17
18Before:
19
20After:
21
22This sets up USB to expect just as many bytes as the em28xx is set to emit.
23
24Successful usage under load afterwards natively and in both VMWare
25and KVM/Qemu virtual machines.
26
27Signed-off-by: Brad Love <brad@nextdimension.cc>
28Reviewed-by: Michael Ira Krufky <mkrufky@linuxtv.org>
29Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
30Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
31Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
32---
33 drivers/media/usb/em28xx/em28xx.h | 2 +-
34 1 file changed, 1 insertion(+), 1 deletion(-)
35
36--- a/drivers/media/usb/em28xx/em28xx.h
37+++ b/drivers/media/usb/em28xx/em28xx.h
38@@ -191,7 +191,7 @@
39 USB 2.0 spec says bulk packet size is always 512 bytes
40 */
41 #define EM28XX_BULK_PACKET_MULTIPLIER 384
42-#define EM28XX_DVB_BULK_PACKET_MULTIPLIER 384
43+#define EM28XX_DVB_BULK_PACKET_MULTIPLIER 94
44
45 #define EM28XX_INTERLACED_DEFAULT 1
46