Commit a75d048e authored by Aric D. Blumer's avatar Aric D. Blumer Committed by Eric Miao

USB: ohci-pxa27x: Reconfigure power settings on resume

On resume, the power-related bits in UHCRHDA were not being set, so
they would default to the reset state.  For PXA3xx devices, OCPM must
be cleared, but it was remaining set from resume reset.
Signed-off-by: default avatarAric D. Blumer <aric@sdgsystems.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: default avatarEric Miao <eric.y.miao@gmail.com>
parent 85c61021
...@@ -497,6 +497,7 @@ static int ohci_hcd_pxa27x_drv_resume(struct device *dev) ...@@ -497,6 +497,7 @@ static int ohci_hcd_pxa27x_drv_resume(struct device *dev)
{ {
struct usb_hcd *hcd = dev_get_drvdata(dev); struct usb_hcd *hcd = dev_get_drvdata(dev);
struct pxa27x_ohci *ohci = to_pxa27x_ohci(hcd); struct pxa27x_ohci *ohci = to_pxa27x_ohci(hcd);
struct pxaohci_platform_data *inf = dev->platform_data;
int status; int status;
if (time_before(jiffies, ohci->ohci.next_statechange)) if (time_before(jiffies, ohci->ohci.next_statechange))
...@@ -506,6 +507,9 @@ static int ohci_hcd_pxa27x_drv_resume(struct device *dev) ...@@ -506,6 +507,9 @@ static int ohci_hcd_pxa27x_drv_resume(struct device *dev)
if ((status = pxa27x_start_hc(ohci, dev)) < 0) if ((status = pxa27x_start_hc(ohci, dev)) < 0)
return status; return status;
/* Select Power Management Mode */
pxa27x_ohci_select_pmm(ohci, inf->port_mode);
ohci_finish_controller_resume(hcd); ohci_finish_controller_resume(hcd);
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment