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

From: Alan Stern
Date: Fri Jan 10 2020 - 11:36:45 EST


On Fri, 10 Jan 2020, Kai-Heng Feng wrote:

> 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.

Oh, all right. This change looks okay to me. Has AceLan Kao tested
it?

Alan Stern