Re: [PATCH v2 3/3] USB: Disable LPM on WD19's Realtek Hub

From: Kai-Heng Feng
Date: Fri Jan 10 2020 - 10:52:15 EST


On Fri, Jan 10, 2020 at 11:40 PM Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
>
> On Fri, 10 Jan 2020, Kai-Heng Feng wrote:
>
> > Realtek Hub (0bda:0x0487) used in Dell Dock WD19 sometimes drops off the
> > bus when bringing underlying ports from U3 to U0.
> >
> > Disabling LPM on the hub during setting link state is not enough, so
> > let's disable LPM completely for this hub.
> >
> > Signed-off-by: Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx>
> > ---
> > drivers/usb/core/quirks.c | 3 +++
> > 1 file changed, 3 insertions(+)
> >
> > diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
> > index 6b6413073584..2fb7c1602280 100644
> > --- a/drivers/usb/core/quirks.c
> > +++ b/drivers/usb/core/quirks.c
> > @@ -371,6 +371,9 @@ static const struct usb_device_id usb_quirk_list[] = {
> > { USB_DEVICE(0x0b05, 0x17e0), .driver_info =
> > USB_QUIRK_IGNORE_REMOTE_WAKEUP },
> >
> > + /* Realtek hub in Dell WD19 (Type-C) */
> > + { USB_DEVICE(0x0bda, 0x0487), .driver_info = USB_QUIRK_NO_LPM },
> > +
> > /* Action Semiconductor flash disk */
> > { USB_DEVICE(0x10d6, 0x2200), .driver_info =
> > USB_QUIRK_STRING_FETCH_255 },
> >
>
> This is a very partial patch. There were four hunks in the original
> version but there's only one hunk in V2.

Because the original approach is insufficient, it significantly
reduced the fail rate but the issue is still there.
USB_QUIRK_NO_LPM is used instead so no other parts are needed.

Kai-Heng

>
> Alan Stern
>