From: Alex Elder <elder@linaro.org>
To: davem@davemloft.net, kuba@kernel.org
Cc: bjorn.andersson@linaro.org, evgreen@chromium.org,
cpratapa@codeaurora.org, subashab@codeaurora.org,
elder@kernel.org, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: [PATCH net-next 0/7] net: ipa: use runtime PM reference counting
Date: Tue, 10 Aug 2021 14:26:57 -0500 [thread overview]
Message-ID: <20210810192704.2476461-1-elder@linaro.org> (raw)
This series does further rework of the IPA clock code so that we
rely on some of the core runtime power management code (including
its referencing counting) instead.
The first patch makes ipa_clock_get() act like pm_runtime_get_sync().
The second patch makes system suspend occur regardless of the
current reference count value, which is again more like how the
runtime PM core code behaves.
The third patch creates functions to encapsulate all hardware
suspend and resume activity. The fourth uses those functions as
the ->runtime_suspend and ->runtime_resume power callbacks. With
that in place, ipa_clock_get() and ipa_clock_put() are changed to
use runtime PM get and put functions when needed.
The fifth patch eliminates an extra clock reference previously used
to control system suspend. The sixth eliminates the "IPA clock"
reference count and mutex.
The final patch replaces the one call to ipa_clock_get_additional()
with a call to pm_runtime_get_if_active(), making the former
unnecessary.
-Alec
Alex Elder (7):
net: ipa: have ipa_clock_get() return a value
net: ipa: disable clock in suspend
net: ipa: resume in ipa_clock_get()
net: ipa: use runtime PM core
net: ipa: get rid of extra clock reference
net: ipa: kill IPA clock reference count
net: ipa: kill ipa_clock_get_additional()
drivers/net/ipa/ipa_clock.c | 165 +++++++++++---------------------
drivers/net/ipa/ipa_clock.h | 18 ++--
drivers/net/ipa/ipa_interrupt.c | 9 +-
drivers/net/ipa/ipa_main.c | 35 +++----
drivers/net/ipa/ipa_modem.c | 15 ++-
drivers/net/ipa/ipa_smp2p.c | 33 ++++---
drivers/net/ipa/ipa_uc.c | 12 ++-
7 files changed, 121 insertions(+), 166 deletions(-)
--
2.27.0
next reply other threads:[~2021-08-10 19:27 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-10 19:26 Alex Elder [this message]
2021-08-10 19:26 ` [PATCH net-next 1/7] net: ipa: have ipa_clock_get() return a value Alex Elder
2021-08-10 19:26 ` [PATCH net-next 2/7] net: ipa: disable clock in suspend Alex Elder
2021-08-10 19:27 ` [PATCH net-next 3/7] net: ipa: resume in ipa_clock_get() Alex Elder
2021-08-10 19:27 ` [PATCH net-next 4/7] net: ipa: use runtime PM core Alex Elder
2021-08-10 19:27 ` [PATCH net-next 5/7] net: ipa: get rid of extra clock reference Alex Elder
2021-08-10 19:27 ` [PATCH net-next 6/7] net: ipa: kill IPA clock reference count Alex Elder
2021-08-10 19:27 ` [PATCH net-next 7/7] net: ipa: kill ipa_clock_get_additional() Alex Elder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210810192704.2476461-1-elder@linaro.org \
--to=elder@linaro.org \
--cc=bjorn.andersson@linaro.org \
--cc=cpratapa@codeaurora.org \
--cc=davem@davemloft.net \
--cc=elder@kernel.org \
--cc=evgreen@chromium.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=subashab@codeaurora.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®