Patch "usb: add quirks for Lenovo OneLink+ Dock" has been added to the 5.4-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    usb: add quirks for Lenovo OneLink+ Dock

to the 5.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     usb-add-quirks-for-lenovo-onelink-dock.patch
and it can be found in the queue-5.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 64dfc9ba86f21d2bf83bf7f04c8a3459afbc075c
Author: Jean-Francois Le Fillatre <jflf_kernel@xxxxxxx>
Date:   Wed Aug 24 21:13:21 2022 +0200

    usb: add quirks for Lenovo OneLink+ Dock
    
    [ Upstream commit 3d5f70949f1b1168fbb17d06eb5c57e984c56c58 ]
    
    The Lenovo OneLink+ Dock contains two VL812 USB3.0 controllers:
    17ef:1018 upstream
    17ef:1019 downstream
    
    Those two controllers both have problems with some USB3.0 devices,
    particularly self-powered ones. Typical error messages include:
    
      Timeout while waiting for setup device command
      device not accepting address X, error -62
      unable to enumerate USB device
    
    By process of elimination the controllers themselves were identified as
    the cause of the problem. Through trial and error the issue was solved
    by using USB_QUIRK_RESET_RESUME for both chips.
    
    Signed-off-by: Jean-Francois Le Fillatre <jflf_kernel@xxxxxxx>
    Cc: stable <stable@xxxxxxxxxx>
    Link: https://lore.kernel.org/r/20220824191320.17883-1-jflf_kernel@xxxxxxx
    Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
index f8f2de7899a9..dd7947547054 100644
--- a/drivers/usb/core/quirks.c
+++ b/drivers/usb/core/quirks.c
@@ -438,6 +438,10 @@ static const struct usb_device_id usb_quirk_list[] = {
 	{ USB_DEVICE(0x1532, 0x0116), .driver_info =
 			USB_QUIRK_LINEAR_UFRAME_INTR_BINTERVAL },
 
+	/* Lenovo ThinkPad OneLink+ Dock twin hub controllers (VIA Labs VL812) */
+	{ USB_DEVICE(0x17ef, 0x1018), .driver_info = USB_QUIRK_RESET_RESUME },
+	{ USB_DEVICE(0x17ef, 0x1019), .driver_info = USB_QUIRK_RESET_RESUME },
+
 	/* Lenovo USB-C to Ethernet Adapter RTL8153-04 */
 	{ USB_DEVICE(0x17ef, 0x720c), .driver_info = USB_QUIRK_NO_LPM },
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux