Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

USB: don't unsuspend for a new connection

This patch (as889) prevents the hub driver from trying to resume a
port when there is a new connection. For one thing, the resume is not
needed -- the upcoming port reset will clear the suspend feature
automatically. For another, on some systems the resume fails and
causes problems.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

authored by

Alan Stern and committed by
Greg Kroah-Hartman
8adb4786 b6f6436d

-13
-13
drivers/usb/core/hub.c
··· 2426 2426 return; 2427 2427 } 2428 2428 2429 - #ifdef CONFIG_USB_SUSPEND 2430 - /* If something is connected, but the port is suspended, wake it up. */ 2431 - if (portstatus & USB_PORT_STAT_SUSPEND) { 2432 - status = hub_port_resume(hub, port1, NULL); 2433 - if (status < 0) { 2434 - dev_dbg(hub_dev, 2435 - "can't clear suspend on port %d; %d\n", 2436 - port1, status); 2437 - goto done; 2438 - } 2439 - } 2440 - #endif 2441 - 2442 2429 for (i = 0; i < SET_CONFIG_TRIES; i++) { 2443 2430 struct usb_device *udev; 2444 2431