Re: [PATCH] USB: quirks: add NO_LPM quirk for Logitech Flare|Meetup|Brio|Rally

From: Mathias Nyman
Date: Mon Dec 10 2018 - 08:46:29 EST


On 08.12.2018 00:18, Kyle Williams wrote:
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

I recently found a cause for the "not enough bandwidth for new device state" error.
Patch just got applied to v4.20-rc6
0472bf0 xhci: Prevent U1/U2 link pm states if exit latency is too long

Does it work for your Logitech devices?

-Mathias