diff options
author | Rakesh Bodla <rbodla@nvidia.com> | 2011-09-22 18:57:55 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:48:57 -0800 |
commit | cef66e78ac6ff7973d894ae6476b17268de3ff19 (patch) | |
tree | 8055bc428ab2736dde1326a32e1c6a5d8f6398fb | |
parent | 6e73736bbc6dad6f256496b35db2115cf4a66bbb (diff) |
usb: ehci: check for hostpc when reading for USBMODE
During usb suspend, if controller has hostpc
registers then USBMODE register should be read from
different offset.
Bug 875902
Change-Id: I3a74745a0465cfc56803140e68205437bc01596c
Reviewed-on: http://git-master/r/54026
Reviewed-by: Rakesh Bodla <rbodla@nvidia.com>
Tested-by: Rakesh Bodla <rbodla@nvidia.com>
Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
Rebase-Id: Re894b4702ceb08cfbbdbc5a6bbbb122fe48ce66c
-rw-r--r-- | drivers/usb/host/ehci-hcd.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c index 456f1ab366d3..ab94b512e0ea 100644 --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c @@ -203,7 +203,10 @@ static int tdi_in_host_mode (struct ehci_hcd *ehci) u32 __iomem *reg_ptr; u32 tmp; - reg_ptr = (u32 __iomem *)(((u8 __iomem *)ehci->regs) + USBMODE); + if (ehci->has_hostpc) + reg_ptr = (u32 __iomem *)(((u8 __iomem *)ehci->regs) + USBMODE_EX); + else + reg_ptr = (u32 __iomem *)(((u8 __iomem *)ehci->regs) + USBMODE); tmp = ehci_readl(ehci, reg_ptr); return (tmp & 3) == USBMODE_CM_HC; } |