USB: serial: mos7840: fix remote wakeup
authorJohan Hovold <johan@kernel.org>
Thu, 7 Nov 2019 13:21:19 +0000 (14:21 +0100)
committerJohan Hovold <johan@kernel.org>
Tue, 12 Nov 2019 08:54:12 +0000 (09:54 +0100)
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>
drivers/usb/serial/mos7840.c

index 3eeeee38debc543c753206a59a3a970b484f3a2a..ab4bf8d6d7df08bc2b55156d0f7fba88d0ae766e 100644 (file)
@@ -2290,11 +2290,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: