Skip to contentSkip to conversation

Removing unncessary `usb_reset_device` on startup

PATCH New Preston Fick 1 participant 1 message Jul 16, 2014

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Removing unncessary `usb_reset_device` on startup

From: Preston Fick <[email protected]>

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.

---
 drivers/usb/serial/cp210x.c | 3 ---
 1 file changed, 3 deletions(-)
drivers/usb/serial/cp210x.c +0 -3
index 762e4a5..6891269 100644
@@ -855,9 +855,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;
Signature · 1 line
1.9.1