diff options
Diffstat (limited to 'drivers/usb/core/driver.c')
-rw-r--r-- | drivers/usb/core/driver.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/drivers/usb/core/driver.c b/drivers/usb/core/driver.c index 637b2bea5563..2da70b4d33fe 100644 --- a/drivers/usb/core/driver.c +++ b/drivers/usb/core/driver.c | |||
@@ -1630,12 +1630,10 @@ int usb_external_resume_device(struct usb_device *udev) | |||
1630 | return status; | 1630 | return status; |
1631 | } | 1631 | } |
1632 | 1632 | ||
1633 | static int usb_suspend(struct device *dev, pm_message_t message) | 1633 | int usb_suspend(struct device *dev, pm_message_t message) |
1634 | { | 1634 | { |
1635 | struct usb_device *udev; | 1635 | struct usb_device *udev; |
1636 | 1636 | ||
1637 | if (!is_usb_device(dev)) /* Ignore PM for interfaces */ | ||
1638 | return 0; | ||
1639 | udev = to_usb_device(dev); | 1637 | udev = to_usb_device(dev); |
1640 | 1638 | ||
1641 | /* If udev is already suspended, we can skip this suspend and | 1639 | /* If udev is already suspended, we can skip this suspend and |
@@ -1654,12 +1652,10 @@ static int usb_suspend(struct device *dev, pm_message_t message) | |||
1654 | return usb_external_suspend_device(udev, message); | 1652 | return usb_external_suspend_device(udev, message); |
1655 | } | 1653 | } |
1656 | 1654 | ||
1657 | static int usb_resume(struct device *dev) | 1655 | int usb_resume(struct device *dev) |
1658 | { | 1656 | { |
1659 | struct usb_device *udev; | 1657 | struct usb_device *udev; |
1660 | 1658 | ||
1661 | if (!is_usb_device(dev)) /* Ignore PM for interfaces */ | ||
1662 | return 0; | ||
1663 | udev = to_usb_device(dev); | 1659 | udev = to_usb_device(dev); |
1664 | 1660 | ||
1665 | /* If udev->skip_sys_resume is set then udev was already suspended | 1661 | /* If udev->skip_sys_resume is set then udev was already suspended |
@@ -1671,17 +1667,10 @@ static int usb_resume(struct device *dev) | |||
1671 | return usb_external_resume_device(udev); | 1667 | return usb_external_resume_device(udev); |
1672 | } | 1668 | } |
1673 | 1669 | ||
1674 | #else | ||
1675 | |||
1676 | #define usb_suspend NULL | ||
1677 | #define usb_resume NULL | ||
1678 | |||
1679 | #endif /* CONFIG_PM */ | 1670 | #endif /* CONFIG_PM */ |
1680 | 1671 | ||
1681 | struct bus_type usb_bus_type = { | 1672 | struct bus_type usb_bus_type = { |
1682 | .name = "usb", | 1673 | .name = "usb", |
1683 | .match = usb_device_match, | 1674 | .match = usb_device_match, |
1684 | .uevent = usb_uevent, | 1675 | .uevent = usb_uevent, |
1685 | .suspend = usb_suspend, | ||
1686 | .resume = usb_resume, | ||
1687 | }; | 1676 | }; |