net: ipa: use autosuspend
Use runtime power management autosuspend. Up until this point, we only suspended the IPA hardware for system suspend; now we'll suspend it aggressively using runtime power management, setting the initial autosuspend delay to half a second of inactivity. Replace pm_runtime_put() calls with pm_runtime_put_autosuspend(), call pm_runtime_mark_last_busy() before each of those. In places where we're shutting things down, or decrementing power references for errors, use pm_runtime_put_noidle() instead. Finally, remove ipa_runtime_idle(), so the ->runtime_suspend callback will occur if idle. Signed-off-by:Alex Elder <elder@linaro.org> Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- drivers/net/ipa/ipa_clock.c 7 additions, 8 deletionsdrivers/net/ipa/ipa_clock.c
- drivers/net/ipa/ipa_interrupt.c 2 additions, 1 deletiondrivers/net/ipa/ipa_interrupt.c
- drivers/net/ipa/ipa_main.c 6 additions, 5 deletionsdrivers/net/ipa/ipa_main.c
- drivers/net/ipa/ipa_modem.c 10 additions, 6 deletionsdrivers/net/ipa/ipa_modem.c
- drivers/net/ipa/ipa_smp2p.c 6 additions, 2 deletionsdrivers/net/ipa/ipa_smp2p.c
- drivers/net/ipa/ipa_uc.c 9 additions, 3 deletionsdrivers/net/ipa/ipa_uc.c
Loading
Please register or sign in to comment