Re: [PATCH] USB: quirks: add NO_LPM quirk for Logitech Flare|Meetup|Brio|Rally
From: Kyle Williams
Date: Fri Dec 07 2018 - 17:18:50 EST
On Tue, Dec 04, 2018 at 04:36:18PM -0500, Alan Stern wrote:
> On Tue, 4 Dec 2018, Kyle Williams wrote:
>
> > Description: Some USB device / host controller combinations seem to have
> > problems with Link Power management. In particular it is described that
> > the combination of certain Logitech devices and other powered media
> > devices such as the Atrus device causes 'not enough bandwidth for
> > new device state'error.
> >
> > This patch creates quirk entries for the tested Logitech device
> > indicating LPM should remain disabled for the device.
> >
> > Signed-off-by: Kyle Williams <kdgwill@xxxxxxxxxxxx>
> > ---
> > drivers/usb/core/quirks.c | 16 ++++++++++++++++
> > 1 file changed, 16 insertions(+)
> >
> > diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
> > index 0690fcff0ea2..9403edee4797 100644
> > --- a/drivers/usb/core/quirks.c
> > +++ b/drivers/usb/core/quirks.c
> > @@ -246,6 +246,22 @@ static const struct usb_device_id usb_quirk_list[] = {
> > /* Logitech Harmony 700-series */
> > { USB_DEVICE(0x046d, 0xc122), .driver_info = USB_QUIRK_DELAY_INIT },
> >
> > + /* Logitech Flare */
> > + { USB_DEVICE(0x046d, 0x0876), .driver_info = USB_QUIRK_NO_LPM },
>
> This entry is out of order with the preceding entry. And some of the
> new entries below are out of order with each other (entries are
> supposed to be sorted by Vendor ID, then Product ID).
>
> Also, perhaps instead of adding all these new entries, we should set
> the NO_LPM quirk flag for all Logitech devices?
>
> Alan Stern
Setting USB_QUIRK_NO_LPM for all Logitech devices instead of specific
ones seem to be a better solution as there are a lot of other devices
that have the issue as well
Kyle Williams
>
> > +
> > + /* Logitech Rally Camera */
> > + { USB_DEVICE(0x046d, 0x0881), .driver_info = USB_QUIRK_NO_LPM },
> > + { USB_DEVICE(0x046d, 0x0888), .driver_info = USB_QUIRK_NO_LPM },
> > + { USB_DEVICE(0x046d, 0x0889), .driver_info = USB_QUIRK_NO_LPM },
> > +
> > + /* Logitech Meetup */
> > + { USB_DEVICE(0x046d, 0x0867), .driver_info = USB_QUIRK_NO_LPM },
> > + { USB_DEVICE(0x046d, 0x0866), .driver_info = USB_QUIRK_NO_LPM },
> > + { USB_DEVICE(0x046d, 0x086a), .driver_info = USB_QUIRK_NO_LPM },
> > +
> > + /* Logitech Brio */
> > + { USB_DEVICE(0x046d, 0x085e), .driver_info = USB_QUIRK_NO_LPM },
> > +
> > /* Philips PSC805 audio device */
> > { USB_DEVICE(0x0471, 0x0155), .driver_info = USB_QUIRK_RESET_RESUME
> > },
> >
> >
>