]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
USB: serial: mos7720: fix remote wakeup
authorJohan Hovold <johan@kernel.org>
Thu, 7 Nov 2019 13:21:18 +0000 (14:21 +0100)
committerMarcelo Henrique Cerri <marcelo.cerri@canonical.com>
Fri, 17 Jan 2020 17:21:13 +0000 (14:21 -0300)
BugLink: https://bugs.launchpad.net/bugs/1854975
commit ea422312a462696093b5db59d294439796cba4ad upstream.

The driver was setting the device remote-wakeup feature during probe in
violation of the USB specification (which says it should only be set
just prior to suspending the device). This could potentially waste
power during suspend as well as lead to spurious wakeups.

Note that USB core would clear the remote-wakeup feature at first
resume.

Fixes: 0f64478cbc7a ("USB: add USB serial mos7720 driver")
Cc: stable <stable@vger.kernel.org> # 2.6.19
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
drivers/usb/serial/mos7720.c

index ea7a2ae3b05351d114ad5dc4154e9bd4a46db982..880358066ff086bab5fa05a9fe2af5deefda41b9 100644 (file)
@@ -1902,10 +1902,6 @@ static int mos7720_startup(struct usb_serial *serial)
        product = le16_to_cpu(serial->dev->descriptor.idProduct);
        dev = serial->dev;
 
-       /* setting configuration feature to one */
-       usb_control_msg(serial->dev, usb_sndctrlpipe(serial->dev, 0),
-                       (__u8)0x03, 0x00, 0x01, 0x00, NULL, 0x00, 5000);
-
        if (product == MOSCHIP_DEVICE_ID_7715) {
                struct urb *urb = serial->port[0]->interrupt_in_urb;