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>
Thu, 28 Nov 2019 17:26:26 +0000 (18:26 +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 67cd6ffbc233db3ddbb9571d008feb3418dd39db..4add6bc38d6455e1745e86083d5712847af7fbd0 100644 (file)
@@ -2361,11 +2361,6 @@ static int mos7840_port_probe(struct usb_serial_port *port)
                        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: