diff options
author | Xin Xie <xxie@nvidia.com> | 2012-06-12 18:23:31 -0700 |
---|---|---|
committer | Lokesh Pathak <lpathak@nvidia.com> | 2012-06-18 08:53:36 -0700 |
commit | e43dc6b9b19919885908c6f02b6cc5416da06456 (patch) | |
tree | 919f8a6f0183f785e6d821449bffa4aa61802a9d /include | |
parent | 97d9070b427f98596224fe876149027ed15e8eed (diff) |
usb: tegra: otg: fix unbalanced suspend/resume
Becasue of a previous workaround, suspend/resume pair is implemented as
suspend/complete pair in the driver's dev_pm_ops field.
If any driver suspend routine (which is called before otg suspend)
failed, then tegra_otg_resume() will be called even tegra_otg_suspend()
is not called. This will cause disable the OTG clock, and OTG will not
generate any more IRQ.
Ideal fix would be use suspend/resume pair to implement the dev_pm_ops,
but this might break previous workaround. This patch check suspend()
routine is called or not in the resume routine; even we use suspend/
resume pair in the future, it will not cause bad behaviour.
BUG 999759
Change-Id: I88f9c28bb76c5ff9e32917904017f291456cb933
Signed-off-by: Xin Xie <xxie@nvidia.com>
Reviewed-on: http://git-master/r/108444
(cherry picked from commit c751aeea65f126d8e2df7f8a9ba02a631f958dc1)
Reviewed-on: http://git-master/r/108945
Reviewed-by: Lokesh Pathak <lpathak@nvidia.com>
Tested-by: Lokesh Pathak <lpathak@nvidia.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions