summaryrefslogtreecommitdiffstats
path: root/.get_maintainer.ignore
diff options
context:
space:
mode:
authorMike Tipton <mdtipton@codeaurora.org>2020-02-14 18:12:32 -0800
committerStephen Boyd <sboyd@kernel.org>2020-03-09 14:09:05 -0700
commitdad4e7fda4bdc1a6357db500a7bab8843c08e521 (patch)
treef2515f29e04f53000ee7c22af193bcbc3aff1974 /.get_maintainer.ignore
parent29093b1a5833c24c692abb1370de547d2a60e6be (diff)
downloadlinux-dad4e7fda4bdc1a6357db500a7bab8843c08e521.tar.bz2
clk: qcom: clk-rpmh: Wait for completion when enabling clocks
The current implementation always uses rpmh_write_async, which doesn't wait for completion. That's fine for disable requests since there's no immediate need for the clocks and they can be disabled in the background. However, for enable requests we need to ensure the clocks are actually enabled before returning to the client. Otherwise, clients can end up accessing their HW before the necessary clocks are enabled, which can lead to bus errors. Use the synchronous version of this API (rpmh_write) for enable requests in the active set to ensure completion. Completion isn't required for sleep/wake sets, since they don't take effect until after we enter sleep. All rpmh requests are automatically flushed prior to entering sleep. Fixes: 9c7e47025a6b ("clk: qcom: clk-rpmh: Add QCOM RPMh clock driver") Signed-off-by: Mike Tipton <mdtipton@codeaurora.org> Link: https://lkml.kernel.org/r/20200215021232.1149-1-mdtipton@codeaurora.org Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> [sboyd@kernel.org: Reorg code a bit for readability, rename to 'wait' to make local variable not conflict with completion.h mechanism] Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Diffstat (limited to '.get_maintainer.ignore')
0 files changed, 0 insertions, 0 deletions