aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/core
diff options
context:
space:
mode:
authorRafael J. Wysocki <rjw@sisk.pl>2010-12-15 18:51:21 -0500
committerRafael J. Wysocki <rjw@sisk.pl>2010-12-24 09:02:44 -0500
commitb8c76f6aed0ab7df73a6410f3f82de2c831bb144 (patch)
tree1194ded4c23f62ab253a2e0712cfdd436aa2365b /drivers/usb/core
parent5b219a51fdceaf76e0e18da57c7efb9e5586e567 (diff)
PM: Replace the device power.status field with a bit field
The device power.status field is too complicated for its purpose (storing the information about whether or not the device is in the "active" state from the PM core's point of view), so replace it with a bit field and modify all of its users accordingly. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Diffstat (limited to 'drivers/usb/core')
-rw-r--r--drivers/usb/core/driver.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/usb/core/driver.c b/drivers/usb/core/driver.c
index c0e60fbcb04..4ec50224ee8 100644
--- a/drivers/usb/core/driver.c
+++ b/drivers/usb/core/driver.c
@@ -376,7 +376,7 @@ static int usb_unbind_interface(struct device *dev)
376 * Just re-enable it without affecting the endpoint toggles. 376 * Just re-enable it without affecting the endpoint toggles.
377 */ 377 */
378 usb_enable_interface(udev, intf, false); 378 usb_enable_interface(udev, intf, false);
379 } else if (!error && intf->dev.power.status == DPM_ON) { 379 } else if (!error && !intf->dev.power.in_suspend) {
380 r = usb_set_interface(udev, intf->altsetting[0]. 380 r = usb_set_interface(udev, intf->altsetting[0].
381 desc.bInterfaceNumber, 0); 381 desc.bInterfaceNumber, 0);
382 if (r < 0) 382 if (r < 0)
@@ -961,7 +961,7 @@ void usb_rebind_intf(struct usb_interface *intf)
961 } 961 }
962 962
963 /* Try to rebind the interface */ 963 /* Try to rebind the interface */
964 if (intf->dev.power.status == DPM_ON) { 964 if (!intf->dev.power.in_suspend) {
965 intf->needs_binding = 0; 965 intf->needs_binding = 0;
966 rc = device_attach(&intf->dev); 966 rc = device_attach(&intf->dev);
967 if (rc < 0) 967 if (rc < 0)
@@ -1108,8 +1108,7 @@ static int usb_resume_interface(struct usb_device *udev,
1108 if (intf->condition == USB_INTERFACE_UNBOUND) { 1108 if (intf->condition == USB_INTERFACE_UNBOUND) {
1109 1109
1110 /* Carry out a deferred switch to altsetting 0 */ 1110 /* Carry out a deferred switch to altsetting 0 */
1111 if (intf->needs_altsetting0 && 1111 if (intf->needs_altsetting0 && !intf->dev.power.in_suspend) {
1112 intf->dev.power.status == DPM_ON) {
1113 usb_set_interface(udev, intf->altsetting[0]. 1112 usb_set_interface(udev, intf->altsetting[0].
1114 desc.bInterfaceNumber, 0); 1113 desc.bInterfaceNumber, 0);
1115 intf->needs_altsetting0 = 0; 1114 intf->needs_altsetting0 = 0;