Message ID | 20181108074849.29070-2-kai.heng.feng@canonical.com |
---|---|
State | New |
Headers | show |
Series | Disable LPM for Raydium Touchscreens | expand |
On Thu, Nov 08, 2018 at 07:48:48AM +0000, Kai-Heng Feng wrote: > BugLink: https://bugs.launchpad.net/bugs/1802248 > > Raydium USB touchscreen fails to set config if LPM is enabled: > [ 2.030658] usb 1-8: New USB device found, idVendor=2386, idProduct=3119 > [ 2.030659] usb 1-8: New USB device strings: Mfr=1, Product=2, SerialNumber=0 > [ 2.030660] usb 1-8: Product: Raydium Touch System > [ 2.030661] usb 1-8: Manufacturer: Raydium Corporation > [ 7.132209] usb 1-8: can't set config #1, error -110 > > Same behavior can be observed on 2386:3114. > > Raydium claims the touchscreen supports LPM under Windows, so I used > Microsoft USB Test Tools (MUTT) [1] to check its LPM status. MUTT shows > that the LPM doesn't work under Windows, either. So let's just disable LPM > for Raydium touchscreens. > > [1] https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/usb-test-tools > > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > Cc: stable <stable@vger.kernel.org> > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > (backported from commit deefd24228a172d1b27d4a9adbfd2cdacd60ae64 linux-next) > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > --- > drivers/usb/core/quirks.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c > index 7909262a715d..51f962d5a113 100644 > --- a/drivers/usb/core/quirks.c > +++ b/drivers/usb/core/quirks.c > @@ -403,6 +403,11 @@ static const struct usb_device_id usb_quirk_list[] = { > { USB_DEVICE(0x2040, 0x7200), .driver_info = > USB_QUIRK_CONFIG_INTF_STRINGS }, > > + /* Raydium Touchscreen */ > + { USB_DEVICE(0x2386, 0x3114), .driver_info = USB_QUIRK_NO_LPM }, > + > + { USB_DEVICE(0x2386, 0x3119), .driver_info = USB_QUIRK_NO_LPM }, > + > /* INTEL VALUE SSD */ > { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME }, > > -- > 2.17.1 Acked-by: Anthony Wong <anthony.wong@canonical.com>
Acked-By: AceLan Kao <acelan.kao@canonical.com>
On 08.11.18 08:48, Kai-Heng Feng wrote: > BugLink: https://bugs.launchpad.net/bugs/1802248 > > Raydium USB touchscreen fails to set config if LPM is enabled: > [ 2.030658] usb 1-8: New USB device found, idVendor=2386, idProduct=3119 > [ 2.030659] usb 1-8: New USB device strings: Mfr=1, Product=2, SerialNumber=0 > [ 2.030660] usb 1-8: Product: Raydium Touch System > [ 2.030661] usb 1-8: Manufacturer: Raydium Corporation > [ 7.132209] usb 1-8: can't set config #1, error -110 > > Same behavior can be observed on 2386:3114. > > Raydium claims the touchscreen supports LPM under Windows, so I used > Microsoft USB Test Tools (MUTT) [1] to check its LPM status. MUTT shows > that the LPM doesn't work under Windows, either. So let's just disable LPM > for Raydium touchscreens. > > [1] https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/usb-test-tools > > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > Cc: stable <stable@vger.kernel.org> > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > (backported from commit deefd24228a172d1b27d4a9adbfd2cdacd60ae64 linux-next) > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> Acked-by: Stefan Bader <stefan.bader@canonical.com> > --- Now upstream with same SHA1 ub v4.20-rc4 > drivers/usb/core/quirks.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c > index 7909262a715d..51f962d5a113 100644 > --- a/drivers/usb/core/quirks.c > +++ b/drivers/usb/core/quirks.c > @@ -403,6 +403,11 @@ static const struct usb_device_id usb_quirk_list[] = { > { USB_DEVICE(0x2040, 0x7200), .driver_info = > USB_QUIRK_CONFIG_INTF_STRINGS }, > > + /* Raydium Touchscreen */ > + { USB_DEVICE(0x2386, 0x3114), .driver_info = USB_QUIRK_NO_LPM }, > + > + { USB_DEVICE(0x2386, 0x3119), .driver_info = USB_QUIRK_NO_LPM }, > + > /* INTEL VALUE SSD */ > { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME }, > >
On 11/8/18 8:48 AM, Kai-Heng Feng wrote: > BugLink: https://bugs.launchpad.net/bugs/1802248 > > Raydium USB touchscreen fails to set config if LPM is enabled: > [ 2.030658] usb 1-8: New USB device found, idVendor=2386, idProduct=3119 > [ 2.030659] usb 1-8: New USB device strings: Mfr=1, Product=2, SerialNumber=0 > [ 2.030660] usb 1-8: Product: Raydium Touch System > [ 2.030661] usb 1-8: Manufacturer: Raydium Corporation > [ 7.132209] usb 1-8: can't set config #1, error -110 > > Same behavior can be observed on 2386:3114. > > Raydium claims the touchscreen supports LPM under Windows, so I used > Microsoft USB Test Tools (MUTT) [1] to check its LPM status. MUTT shows > that the LPM doesn't work under Windows, either. So let's just disable LPM > for Raydium touchscreens. > > [1] https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/usb-test-tools > > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > Cc: stable <stable@vger.kernel.org> > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > (backported from commit deefd24228a172d1b27d4a9adbfd2cdacd60ae64 linux-next) > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > --- > drivers/usb/core/quirks.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c > index 7909262a715d..51f962d5a113 100644 > --- a/drivers/usb/core/quirks.c > +++ b/drivers/usb/core/quirks.c > @@ -403,6 +403,11 @@ static const struct usb_device_id usb_quirk_list[] = { > { USB_DEVICE(0x2040, 0x7200), .driver_info = > USB_QUIRK_CONFIG_INTF_STRINGS }, > > + /* Raydium Touchscreen */ > + { USB_DEVICE(0x2386, 0x3114), .driver_info = USB_QUIRK_NO_LPM }, > + > + { USB_DEVICE(0x2386, 0x3119), .driver_info = USB_QUIRK_NO_LPM }, > + > /* INTEL VALUE SSD */ > { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME }, > Applied to bionic/master-next branch, removing the "linux-next" part from the provenance since it's now on mainline as pointed out by Stefan. Thanks, Kleber
diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c index 7909262a715d..51f962d5a113 100644 --- a/drivers/usb/core/quirks.c +++ b/drivers/usb/core/quirks.c @@ -403,6 +403,11 @@ static const struct usb_device_id usb_quirk_list[] = { { USB_DEVICE(0x2040, 0x7200), .driver_info = USB_QUIRK_CONFIG_INTF_STRINGS }, + /* Raydium Touchscreen */ + { USB_DEVICE(0x2386, 0x3114), .driver_info = USB_QUIRK_NO_LPM }, + + { USB_DEVICE(0x2386, 0x3119), .driver_info = USB_QUIRK_NO_LPM }, + /* INTEL VALUE SSD */ { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME },