linux-stable/drivers/usb/core
Alan Stern a8e7c56535 usbcore: resume device resume recursion
This patch (as717b) removes the existing recursion in hub resume code:
Resuming a hub will no longer automatically resume the devices attached
to the hub.

At the same time, it adds one level of recursion: Suspending a USB
device will automatically suspend all the device's interfaces.  Failure
at an intermediate stage will cause all the already-suspended interfaces
to be resumed. Attempts to suspend or resume an interface by itself will
do nothing, although they won't return an error.  Thus the regular
system-suspend and system-resume procedures should continue to work as
before; only runtime PM will be affected.

The patch also removes the code that tests state of the interfaces
before suspending a device.  It's no longer needed, since everything
gets suspended together.


Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-09-27 11:58:50 -07:00
..
buffer.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
config.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
devices.c [PATCH] USB: convert a bunch of USB semaphores to mutexes 2006-03-20 14:49:55 -08:00
devio.c usbfs: detect device unregistration 2006-09-27 11:58:49 -07:00
driver.c usbcore: resume device resume recursion 2006-09-27 11:58:50 -07:00
endpoint.c [PATCH] USB: make endpoints real struct devices 2006-06-21 15:04:19 -07:00
file.c Revert "[PATCH] USB: convert usb class devices to real devices" 2006-08-02 16:49:37 -07:00
generic.c usbcore: resume device resume recursion 2006-09-27 11:58:50 -07:00
hcd-pci.c PM: USB HCDs use PM_EVENT_PRETHAW 2006-09-25 21:08:37 -07:00
hcd.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
hcd.h [PATCH] USB: remove usbcore-specific wakeup flags 2006-03-20 14:49:56 -08:00
hub.c usbcore: resume device resume recursion 2006-09-27 11:58:50 -07:00
hub.h [PATCH] USB: Consider power budget when choosing configuration 2006-01-04 13:48:34 -08:00
inode.c [PATCH] inode-diet: Eliminate i_blksize from the inode structure 2006-09-27 08:26:18 -07:00
Kconfig [PATCH] USB: remove devfs information from Kconfig 2006-07-12 16:03:23 -07:00
Makefile usbcore: move code among source files 2006-09-27 11:58:50 -07:00
message.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
notify.c usbfs: private mutex for open, release, and remove 2006-09-27 11:58:49 -07:00
otg_whitelist.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sysfs.c usbcore: add configuration_string to attribute group 2006-09-27 11:58:49 -07:00
urb.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
usb.c usbcore: make usb_generic a usb_device_driver 2006-09-27 11:58:50 -07:00
usb.h usbcore: resume device resume recursion 2006-09-27 11:58:50 -07:00