diff options
author | Grazvydas Ignotas <notasas@gmail.com> | 2012-02-04 19:43:51 +0200 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2012-04-10 19:11:43 +0300 |
commit | c04352a590538123f8c93bd87ef1d4bb9e3a64c7 (patch) | |
tree | b4c4b1881f1168e2e82b33fe8af357fed5085392 /include/linux/cpu_rmap.h | |
parent | afb76df140823c57738598a876cd1d6568cd57c7 (diff) |
usb: musb: fix some runtime_pm issues
When runtime_pm was originally added, it was done in rather confusing
way: omap2430_musb_init() (called from musb_init_controller) would do
runtime_pm_get_sync() and musb_init_controller() itself would do
runtime_pm_put to balance it out. This is not only confusing but also
wrong if non-omap2430 glue layer is used.
This confusion resulted in commit 772aed45b604 "usb: musb: fix
pm_runtime mismatch", that removed runtime_pm_put() from
musb_init_controller as that looked unbalanced, and also happened to
fix unrelated isp1704_charger crash. However this broke runtime PM
functionality (musb is now always powered, even without gadget active).
Avoid these confusing runtime pm dependences by making
musb_init_controller() and omap2430_musb_init() do their own runtime
get/put pairs; also cover error paths. Remove unneeded runtime_pm_put
in omap2430_remove too. isp1704_charger crash that motivated
772aed45b604 will be fixed by following patch.
Cc: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'include/linux/cpu_rmap.h')
0 files changed, 0 insertions, 0 deletions