]> git.hungrycats.org Git - linux/commitdiff
USB: serial: cp210x: Removing unncessary `usb_reset_device` on startup
authorPreston Fick <preston.fick@silabs.com>
Wed, 16 Jul 2014 19:31:30 +0000 (14:31 -0500)
committerJiri Slaby <jslaby@suse.cz>
Tue, 2 Sep 2014 09:22:42 +0000 (11:22 +0200)
commit 934ef5aca9daea10507eebcbd0fb8f6d57d55359 upstream.

This `usb_reset_device` command has been around since the driver was
originally reverse engineered. It doesn't cause much issue on single
interface CP210x devices, but on the CP2105 and CP2108 with 2 and 4
interfaces respectively it will cause instability on enumeration and
delays enumeration noticably. There should be no reason to reset a device
at startup, per the CP210x AN571 spec.

Signed-off-by: Preston Fick <preston.fick@silabs.com>
Cc: Johan Hovold <johan@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
drivers/usb/serial/cp210x.c

index 1db213a6e843e8e7ae253632146c4c403a50f212..e5ac744ac73f967466f09fd1a03bb0779e322161 100644 (file)
@@ -860,9 +860,6 @@ static int cp210x_startup(struct usb_serial *serial)
        struct usb_host_interface *cur_altsetting;
        struct cp210x_serial_private *spriv;
 
-       /* cp210x buffers behave strangely unless device is reset */
-       usb_reset_device(serial->dev);
-
        spriv = kzalloc(sizeof(*spriv), GFP_KERNEL);
        if (!spriv)
                return -ENOMEM;