[PATCH v3 0/7] clk: qcom: use power-domain for sm8250's clock controllers

From: Dmitry Baryshkov
Date: Fri Jul 09 2021 - 13:32:09 EST


On SM8250 both the display and video clock controllers are powered up by
the MMCX power domain. Handle this by linking clock controllers to the
proper power domain, and using runtime power management to enable and
disable the MMCX power domain.

Dependencies:
- https://lore.kernel.org/linux-pm/20210603093438.138705-1-ulf.hansson@xxxxxxxxxx/ (merged in 5.14)
- https://lore.kernel.org/linux-arm-msm/20210703005416.2668319-1-bjorn.andersson@xxxxxxxxxx/
(pending)

Changes since v2:
- Move pm_runtime calls from generic genpd code to the gdsc code for
now (as suggested by Ulf & Bjorn)

Changes since v1:
- Rebase on top of Bjorn's patches, removing the need for setting
performance state directly.
- Move runtime PM calls from GDSC code to generic genpd code.
- Always call pm_runtime_enable in the Qualcomm generic clock
controller code.
- Register GDSC power domains as subdomains of the domain powering the
clock controller if there is one.

----------------------------------------------------------------
Dmitry Baryshkov (7):
dt-bindings: clock: qcom,dispcc-sm8x50: add mmcx power domain
dt-bindings: clock: qcom,videocc: add mmcx power domain
clk: qcom: gdsc: enable optional power domain support
clk: qcom: gdsc: call runtime PM functions for the provider device
arm64: dts: qcom: sm8250: remove mmcx regulator
clk: qcom: dispcc-sm8250: stop using mmcx regulator
clk: qcom: videocc-sm8250: stop using mmcx regulator

.../bindings/clock/qcom,dispcc-sm8x50.yaml | 7 +++
.../devicetree/bindings/clock/qcom,videocc.yaml | 7 +++
arch/arm64/boot/dts/qcom/sm8250.dtsi | 11 +---
drivers/clk/qcom/common.c | 37 ++++++++++--
drivers/clk/qcom/dispcc-sm8250.c | 1 -
drivers/clk/qcom/gdsc.c | 70 ++++++++++++++++++++--
drivers/clk/qcom/gdsc.h | 2 +
drivers/clk/qcom/videocc-sm8250.c | 4 --
8 files changed, 115 insertions(+), 24 deletions(-)