aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/usb/host/sl811-hcd.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/usb/host/sl811-hcd.c b/drivers/usb/host/sl811-hcd.c
index a7722a6a5a5b..5a28e6115892 100644
--- a/drivers/usb/host/sl811-hcd.c
+++ b/drivers/usb/host/sl811-hcd.c
@@ -1581,7 +1581,9 @@ sl811h_start(struct usb_hcd *hcd)
1581 hcd->state = HC_STATE_RUNNING; 1581 hcd->state = HC_STATE_RUNNING;
1582 1582
1583 if (sl811->board) { 1583 if (sl811->board) {
1584 hcd->can_wakeup = sl811->board->can_wakeup; 1584 if (!device_can_wakeup(hcd->self.controller))
1585 device_init_wakeup(hcd->self.controller,
1586 sl811->board->can_wakeup);
1585 hcd->power_budget = sl811->board->power * 2; 1587 hcd->power_budget = sl811->board->power * 2;
1586 } 1588 }
1587 1589
@@ -1805,7 +1807,7 @@ sl811h_resume(struct platform_device *dev)
1805 * let's assume it'd only be powered to enable remote wakeup. 1807 * let's assume it'd only be powered to enable remote wakeup.
1806 */ 1808 */
1807 if (dev->dev.power.power_state.event == PM_EVENT_SUSPEND 1809 if (dev->dev.power.power_state.event == PM_EVENT_SUSPEND
1808 || !hcd->can_wakeup) { 1810 || !device_can_wakeup(&hcd->self.root_hub->dev)) {
1809 sl811->port1 = 0; 1811 sl811->port1 = 0;
1810 port_power(sl811, 1); 1812 port_power(sl811, 1);
1811 return 0; 1813 return 0;