[PATCH] USB: EHCI updates (4/4) driver model wakeup flags
This teaches the EHCI driver to use the new driver model wakeup flags, replacing the similar ones in the HCD glue. It also adds a workaround for the current glitch whereby PCI init doesn't init the wakeup flags from the PCI PM capabilities. (EHCI controllers don't worry about legacy mode; the PCI PM capability would always do the job.) Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
8d7802ed3c
commit
2c1c3c4cd5
@@ -59,7 +59,7 @@ static int ehci_bus_suspend (struct usb_hcd *hcd)
|
||||
|
||||
if ((t1 & PORT_PE) && !(t1 & PORT_OWNER))
|
||||
t2 |= PORT_SUSPEND;
|
||||
if (hcd->remote_wakeup)
|
||||
if (device_may_wakeup(&hcd->self.root_hub->dev))
|
||||
t2 |= PORT_WKOC_E|PORT_WKDISC_E|PORT_WKCONN_E;
|
||||
else
|
||||
t2 &= ~(PORT_WKOC_E|PORT_WKDISC_E|PORT_WKCONN_E);
|
||||
@@ -517,7 +517,7 @@ static int ehci_hub_control (
|
||||
if ((temp & PORT_PE) == 0
|
||||
|| (temp & PORT_RESET) != 0)
|
||||
goto error;
|
||||
if (hcd->remote_wakeup)
|
||||
if (device_may_wakeup(&hcd->self.root_hub->dev))
|
||||
temp |= PORT_WAKE_BITS;
|
||||
writel (temp | PORT_SUSPEND,
|
||||
&ehci->regs->port_status [wIndex]);
|
||||
|
Reference in New Issue
Block a user