USB: serial: mos7840: fix remote wakeup
authorJohan Hovold <johan@kernel.org>
Thu, 7 Nov 2019 13:21:19 +0000 (14:21 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 1 Dec 2019 08:14:33 +0000 (09:14 +0100)
commit 92fe35fb9c70a00d8fbbf5bd6172c921dd9c7815 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: 3f5429746d91 ("USB: Moschip 7840 USB-Serial 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>
drivers/usb/serial/mos7840.c

index f31c5289983caf6fbed7b7f891eeff457f9b57d9..285527f115dd72a45ba6e723d68a146c4d0a1626 100644 (file)
@@ -2338,11 +2338,6 @@ out:
                        goto error;
                } else
                        dev_dbg(&port->dev, "ZLP_REG5 Writing success status%d\n", status);
-
-               /* setting configuration feature to one */
-               usb_control_msg(serial->dev, usb_sndctrlpipe(serial->dev, 0),
-                               0x03, 0x00, 0x01, 0x00, NULL, 0x00,
-                               MOS_WDR_TIMEOUT);
        }
        return 0;
 error: