]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.9-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 16 Jun 2019 09:51:17 +0000 (11:51 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 16 Jun 2019 09:51:17 +0000 (11:51 +0200)
added patches:
usb-dwc2-fix-dma-cache-alignment-issues.patch
usb-fix-chipmunk-like-voice-when-using-logitech-c270-for-recording-audio.patch
usb-serial-option-add-support-for-simcom-sim7500-sim7600-rndis-mode.patch
usb-serial-option-add-telit-0x1260-and-0x1261-compositions.patch
usb-serial-pl2303-add-allied-telesis-vt-kit3.patch
usb-usb-storage-add-new-id-to-ums-realtek.patch

queue-4.9/series
queue-4.9/usb-dwc2-fix-dma-cache-alignment-issues.patch [new file with mode: 0644]
queue-4.9/usb-fix-chipmunk-like-voice-when-using-logitech-c270-for-recording-audio.patch [new file with mode: 0644]
queue-4.9/usb-serial-option-add-support-for-simcom-sim7500-sim7600-rndis-mode.patch [new file with mode: 0644]
queue-4.9/usb-serial-option-add-telit-0x1260-and-0x1261-compositions.patch [new file with mode: 0644]
queue-4.9/usb-serial-pl2303-add-allied-telesis-vt-kit3.patch [new file with mode: 0644]
queue-4.9/usb-usb-storage-add-new-id-to-ums-realtek.patch [new file with mode: 0644]

index c6533b147d4f5747af74122fb769d81776328560..eb1d67d3454e4961d98195365e165ea5a254b338 100644 (file)
@@ -80,3 +80,9 @@ kvm-x86-pmu-do-not-mask-the-value-that-is-written-to.patch
 kvm-s390-fix-memory-slot-handling-for-kvm_set_user_m.patch
 drm-vmwgfx-integer-underflow-in-vmw_cmd_dx_set_shader-leading-to-an-invalid-read.patch
 drm-vmwgfx-null-pointer-dereference-from-vmw_cmd_dx_view_define.patch
+usb-dwc2-fix-dma-cache-alignment-issues.patch
+usb-fix-chipmunk-like-voice-when-using-logitech-c270-for-recording-audio.patch
+usb-usb-storage-add-new-id-to-ums-realtek.patch
+usb-serial-pl2303-add-allied-telesis-vt-kit3.patch
+usb-serial-option-add-support-for-simcom-sim7500-sim7600-rndis-mode.patch
+usb-serial-option-add-telit-0x1260-and-0x1261-compositions.patch
diff --git a/queue-4.9/usb-dwc2-fix-dma-cache-alignment-issues.patch b/queue-4.9/usb-dwc2-fix-dma-cache-alignment-issues.patch
new file mode 100644 (file)
index 0000000..3977718
--- /dev/null
@@ -0,0 +1,62 @@
+From 4a4863bf2e7932e584a3a462d3c6daf891142ddc Mon Sep 17 00:00:00 2001
+From: Martin Schiller <ms@dev.tdt.de>
+Date: Mon, 18 Feb 2019 07:37:30 +0100
+Subject: usb: dwc2: Fix DMA cache alignment issues
+
+From: Martin Schiller <ms@dev.tdt.de>
+
+commit 4a4863bf2e7932e584a3a462d3c6daf891142ddc upstream.
+
+Insert a padding between data and the stored_xfer_buffer pointer to
+ensure they are not on the same cache line.
+
+Otherwise, the stored_xfer_buffer gets corrupted for IN URBs on
+non-cache-coherent systems. (In my case: Lantiq xRX200 MIPS)
+
+Fixes: 3bc04e28a030 ("usb: dwc2: host: Get aligned DMA in a more supported way")
+Fixes: 56406e017a88 ("usb: dwc2: Fix DMA alignment to start at allocated boundary")
+Cc: <stable@vger.kernel.org>
+Tested-by: Douglas Anderson <dianders@chromium.org>
+Reviewed-by: Douglas Anderson <dianders@chromium.org>
+Acked-by: Minas Harutyunyan <hminas@synopsys.com>
+Signed-off-by: Martin Schiller <ms@dev.tdt.de>
+Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/dwc2/hcd.c |   10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+--- a/drivers/usb/dwc2/hcd.c
++++ b/drivers/usb/dwc2/hcd.c
+@@ -2552,8 +2552,10 @@ static void dwc2_free_dma_aligned_buffer
+               return;
+       /* Restore urb->transfer_buffer from the end of the allocated area */
+-      memcpy(&stored_xfer_buffer, urb->transfer_buffer +
+-             urb->transfer_buffer_length, sizeof(urb->transfer_buffer));
++      memcpy(&stored_xfer_buffer,
++             PTR_ALIGN(urb->transfer_buffer + urb->transfer_buffer_length,
++                       dma_get_cache_alignment()),
++             sizeof(urb->transfer_buffer));
+       if (usb_urb_dir_in(urb))
+               memcpy(stored_xfer_buffer, urb->transfer_buffer,
+@@ -2580,6 +2582,7 @@ static int dwc2_alloc_dma_aligned_buffer
+        * DMA
+        */
+       kmalloc_size = urb->transfer_buffer_length +
++              (dma_get_cache_alignment() - 1) +
+               sizeof(urb->transfer_buffer);
+       kmalloc_ptr = kmalloc(kmalloc_size, mem_flags);
+@@ -2590,7 +2593,8 @@ static int dwc2_alloc_dma_aligned_buffer
+        * Position value of original urb->transfer_buffer pointer to the end
+        * of allocation for later referencing
+        */
+-      memcpy(kmalloc_ptr + urb->transfer_buffer_length,
++      memcpy(PTR_ALIGN(kmalloc_ptr + urb->transfer_buffer_length,
++                       dma_get_cache_alignment()),
+              &urb->transfer_buffer, sizeof(urb->transfer_buffer));
+       if (usb_urb_dir_out(urb))
diff --git a/queue-4.9/usb-fix-chipmunk-like-voice-when-using-logitech-c270-for-recording-audio.patch b/queue-4.9/usb-fix-chipmunk-like-voice-when-using-logitech-c270-for-recording-audio.patch
new file mode 100644 (file)
index 0000000..a443fef
--- /dev/null
@@ -0,0 +1,37 @@
+From bd21f0222adab64974b7d1b4b8c7ce6b23e9ea4d Mon Sep 17 00:00:00 2001
+From: Marco Zatta <marco@zatta.me>
+Date: Sat, 1 Jun 2019 09:52:57 +0200
+Subject: USB: Fix chipmunk-like voice when using Logitech C270 for recording audio.
+
+From: Marco Zatta <marco@zatta.me>
+
+commit bd21f0222adab64974b7d1b4b8c7ce6b23e9ea4d upstream.
+
+This patch fixes the chipmunk-like voice that manifets randomly when
+using the integrated mic of the Logitech Webcam HD C270.
+
+The issue was solved initially for this device by commit 2394d67e446b
+("USB: add RESET_RESUME for webcams shown to be quirky") but it was then
+reintroduced by e387ef5c47dd ("usb: Add USB_QUIRK_RESET_RESUME for all
+Logitech UVC webcams"). This patch is to have the fix back.
+
+Signed-off-by: Marco Zatta <marco@zatta.me>
+Cc: stable <stable@vger.kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/core/quirks.c |    3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -70,6 +70,9 @@ static const struct usb_device_id usb_qu
+       /* Cherry Stream G230 2.0 (G85-231) and 3.0 (G85-232) */
+       { USB_DEVICE(0x046a, 0x0023), .driver_info = USB_QUIRK_RESET_RESUME },
++      /* Logitech HD Webcam C270 */
++      { USB_DEVICE(0x046d, 0x0825), .driver_info = USB_QUIRK_RESET_RESUME },
++
+       /* Logitech HD Pro Webcams C920, C920-C, C925e and C930e */
+       { USB_DEVICE(0x046d, 0x082d), .driver_info = USB_QUIRK_DELAY_INIT },
+       { USB_DEVICE(0x046d, 0x0841), .driver_info = USB_QUIRK_DELAY_INIT },
diff --git a/queue-4.9/usb-serial-option-add-support-for-simcom-sim7500-sim7600-rndis-mode.patch b/queue-4.9/usb-serial-option-add-support-for-simcom-sim7500-sim7600-rndis-mode.patch
new file mode 100644 (file)
index 0000000..2c78e57
--- /dev/null
@@ -0,0 +1,51 @@
+From 5417a7e482962952e622eabd60cd3600dd65dedf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rgen=20Storvist?= <jorgen.storvist@gmail.com>
+Date: Mon, 13 May 2019 18:37:52 +0200
+Subject: USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Jörgen Storvist <jorgen.storvist@gmail.com>
+
+commit 5417a7e482962952e622eabd60cd3600dd65dedf upstream.
+
+Added IDs for Simcom SIM7500/SIM7600 series cellular module in RNDIS
+mode. Reserved the interface for ADB.
+
+T:  Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  7 Spd=480 MxCh= 0
+D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
+P:  Vendor=1e0e ProdID=9011 Rev=03.18
+S:  Manufacturer=SimTech, Incorporated
+S:  Product=SimTech, Incorporated
+S:  SerialNumber=0123456789ABCDEF
+C:  #Ifs= 8 Cfg#= 1 Atr=a0 MxPwr=500mA
+I:  If#=0x0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=ff Driver=rndis_host
+I:  If#=0x1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=rndis_host
+I:  If#=0x2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
+I:  If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
+I:  If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
+I:  If#=0x5 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
+I:  If#=0x6 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
+I:  If#=0x7 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=42 Prot=01 Driver=(none)
+
+Signed-off-by: Jörgen Storvist <jorgen.storvist@gmail.com>
+Cc: stable <stable@vger.kernel.org>
+Signed-off-by: Johan Hovold <johan@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/serial/option.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/usb/serial/option.c
++++ b/drivers/usb/serial/option.c
+@@ -1767,6 +1767,8 @@ static const struct usb_device_id option
+       { USB_DEVICE(ALINK_VENDOR_ID, SIMCOM_PRODUCT_SIM7100E),
+         .driver_info = RSVD(5) | RSVD(6) },
+       { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9003, 0xff) },   /* Simcom SIM7500/SIM7600 MBIM mode */
++      { USB_DEVICE_INTERFACE_CLASS(0x1e0e, 0x9011, 0xff),     /* Simcom SIM7500/SIM7600 RNDIS mode */
++        .driver_info = RSVD(7) },
+       { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_X060S_X200),
+         .driver_info = NCTRL(0) | NCTRL(1) | RSVD(4) },
+       { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_X220_X500D),
diff --git a/queue-4.9/usb-serial-option-add-telit-0x1260-and-0x1261-compositions.patch b/queue-4.9/usb-serial-option-add-telit-0x1260-and-0x1261-compositions.patch
new file mode 100644 (file)
index 0000000..4f7a1d9
--- /dev/null
@@ -0,0 +1,33 @@
+From f3dfd4072c3ee6e287f501a18b5718b185d6a940 Mon Sep 17 00:00:00 2001
+From: Daniele Palmas <dnlplm@gmail.com>
+Date: Wed, 15 May 2019 17:27:49 +0200
+Subject: USB: serial: option: add Telit 0x1260 and 0x1261 compositions
+
+From: Daniele Palmas <dnlplm@gmail.com>
+
+commit f3dfd4072c3ee6e287f501a18b5718b185d6a940 upstream.
+
+Added support for Telit LE910Cx 0x1260 and 0x1261 compositions.
+
+Signed-off-by: Daniele Palmas <dnlplm@gmail.com>
+Cc: stable <stable@vger.kernel.org>
+Signed-off-by: Johan Hovold <johan@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/serial/option.c |    4 ++++
+ 1 file changed, 4 insertions(+)
+
+--- a/drivers/usb/serial/option.c
++++ b/drivers/usb/serial/option.c
+@@ -1166,6 +1166,10 @@ static const struct usb_device_id option
+       { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, TELIT_PRODUCT_LE920A4_1213, 0xff) },
+       { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE920A4_1214),
+         .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) | RSVD(3) },
++      { USB_DEVICE(TELIT_VENDOR_ID, 0x1260),
++        .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) },
++      { USB_DEVICE(TELIT_VENDOR_ID, 0x1261),
++        .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) },
+       { USB_DEVICE(TELIT_VENDOR_ID, 0x1900),                          /* Telit LN940 (QMI) */
+         .driver_info = NCTRL(0) | RSVD(1) },
+       { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1901, 0xff),    /* Telit LN940 (MBIM) */
diff --git a/queue-4.9/usb-serial-pl2303-add-allied-telesis-vt-kit3.patch b/queue-4.9/usb-serial-pl2303-add-allied-telesis-vt-kit3.patch
new file mode 100644 (file)
index 0000000..9bb40b5
--- /dev/null
@@ -0,0 +1,41 @@
+From c5f81656a18b271976a86724dadd8344e54de74e Mon Sep 17 00:00:00 2001
+From: Chris Packham <chris.packham@alliedtelesis.co.nz>
+Date: Tue, 14 May 2019 17:35:42 +1200
+Subject: USB: serial: pl2303: add Allied Telesis VT-Kit3
+
+From: Chris Packham <chris.packham@alliedtelesis.co.nz>
+
+commit c5f81656a18b271976a86724dadd8344e54de74e upstream.
+
+This is adds the vendor and device id for the AT-VT-Kit3 which is a
+pl2303-based device.
+
+Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
+Cc: stable <stable@vger.kernel.org>
+Signed-off-by: Johan Hovold <johan@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/serial/pl2303.c |    1 +
+ drivers/usb/serial/pl2303.h |    3 +++
+ 2 files changed, 4 insertions(+)
+
+--- a/drivers/usb/serial/pl2303.c
++++ b/drivers/usb/serial/pl2303.c
+@@ -101,6 +101,7 @@ static const struct usb_device_id id_tab
+       { USB_DEVICE(SANWA_VENDOR_ID, SANWA_PRODUCT_ID) },
+       { USB_DEVICE(ADLINK_VENDOR_ID, ADLINK_ND6530_PRODUCT_ID) },
+       { USB_DEVICE(SMART_VENDOR_ID, SMART_PRODUCT_ID) },
++      { USB_DEVICE(AT_VENDOR_ID, AT_VTKIT3_PRODUCT_ID) },
+       { }                                     /* Terminating entry */
+ };
+--- a/drivers/usb/serial/pl2303.h
++++ b/drivers/usb/serial/pl2303.h
+@@ -159,3 +159,6 @@
+ #define SMART_VENDOR_ID       0x0b8c
+ #define SMART_PRODUCT_ID      0x2303
++/* Allied Telesis VT-Kit3 */
++#define AT_VENDOR_ID          0x0caa
++#define AT_VTKIT3_PRODUCT_ID  0x3001
diff --git a/queue-4.9/usb-usb-storage-add-new-id-to-ums-realtek.patch b/queue-4.9/usb-usb-storage-add-new-id-to-ums-realtek.patch
new file mode 100644 (file)
index 0000000..b240130
--- /dev/null
@@ -0,0 +1,36 @@
+From 1a6dd3fea131276a4fc44ae77b0f471b0b473577 Mon Sep 17 00:00:00 2001
+From: Kai-Heng Feng <kai.heng.feng@canonical.com>
+Date: Tue, 4 Jun 2019 00:20:49 +0800
+Subject: USB: usb-storage: Add new ID to ums-realtek
+
+From: Kai-Heng Feng <kai.heng.feng@canonical.com>
+
+commit 1a6dd3fea131276a4fc44ae77b0f471b0b473577 upstream.
+
+There is one more Realtek card reader requires ums-realtek to work
+correctly.
+
+Add the device ID to support it.
+
+Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
+Cc: stable <stable@vger.kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/storage/unusual_realtek.h |    5 +++++
+ 1 file changed, 5 insertions(+)
+
+--- a/drivers/usb/storage/unusual_realtek.h
++++ b/drivers/usb/storage/unusual_realtek.h
+@@ -29,6 +29,11 @@ UNUSUAL_DEV(0x0bda, 0x0138, 0x0000, 0x99
+               "USB Card Reader",
+               USB_SC_DEVICE, USB_PR_DEVICE, init_realtek_cr, 0),
++UNUSUAL_DEV(0x0bda, 0x0153, 0x0000, 0x9999,
++              "Realtek",
++              "USB Card Reader",
++              USB_SC_DEVICE, USB_PR_DEVICE, init_realtek_cr, 0),
++
+ UNUSUAL_DEV(0x0bda, 0x0158, 0x0000, 0x9999,
+               "Realtek",
+               "USB Card Reader",