mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-09-16 18:15:52 +00:00
This updates the handling of power state for USB interfaces.
- Formalizes an existing invariant: interface "power state" is a boolean:
ON when I/O is allowed, and FREEZE otherwise. It does so by defining
some inlined helpers, then using them.
- Adds a useful invariant: the only interfaces marked active are those
bound to non-suspended drivers. Later patches build on this invariant.
- Simplifies the interface driver API (and removes some error paths) by
removing the requirement that they record power state changes during
suspend and resume callbacks. Now usbcore does that.
A few drivers were simplified to address that last change.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/core/hub.c | 33 +++++++++------------
drivers/usb/core/message.c | 1
drivers/usb/core/usb.c | 65 +++++++++++++++++++++++++++++++++----------
drivers/usb/core/usb.h | 18 +++++++++++
drivers/usb/input/hid-core.c | 2 -
drivers/usb/misc/usbtest.c | 10 ------
drivers/usb/net/pegasus.c | 2 -
drivers/usb/net/usbnet.c | 2 -
8 files changed, 85 insertions(+), 48 deletions(-)
|
History
|
|
|---|---|---|
| .. | ||
| sisusbvga | ||
| auerswald.c | ||
| cytherm.c | ||
| emi26.c | ||
| emi26_fw.h | ||
| emi62.c | ||
| emi62_fw_m.h | ||
| emi62_fw_s.h | ||
| idmouse.c | ||
| Kconfig | ||
| ldusb.c | ||
| legousbtower.c | ||
| Makefile | ||
| phidgetkit.c | ||
| phidgetservo.c | ||
| rio500.c | ||
| rio500_usb.h | ||
| usblcd.c | ||
| usbled.c | ||
| usbtest.c | ||
| uss720.c | ||