Skip to content

Add RSC power domain support

Maulik Shah linux-arm-msm linux-devicetree lkml 5 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v5 Latest7 patches 2 repliesIn review
  2. v46 patches 1 replySuperseded
  3. v37 patches 21 repliesSuperseded
Earlier versions · 2
VersionPostedPatchesRepliesStatus
v26 patches7 repliesSuperseded
v14 patches7 repliesSuperseded

Changes in v5 from the cover letter

- Add Rob's Acked by on dt-bindings change
- Drop firmware psci change
- Update cpuidle stats in dtsi to follow PC mode
- Include change to update dirty flag when data is updated from [4]
- Add change to invoke rpmh_flush when caches are dirty

Patches in v5 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/7drivers: qcom: rpmh: fix macro to accept NULL argumentdrivers/soc/qcom/rpmh.c+2 -22 replies
2/7drivers: qcom: rpmh: remove rpmh_flush exportdrivers/soc/qcom/rpmh-internal.h drivers/soc/qcom/rpmh.c include/soc/qcom/rpmh.h+9 -150 replies
3/7dt-bindings: soc: qcom: Add RSC power domain specifierDocumentation/devicetree/bindings/soc/qcom/rpmh-rsc.txt+9 -00 replies
4/7drivers: qcom: rpmh-rsc: Add RSC power domain supportdrivers/soc/qcom/rpmh-internal.h drivers/soc/qcom/rpmh-rsc.c+83 -00 replies
5/7arm64: dts: qcom: sc7180: Add cpuidle low power statesarch/arm64/boot/dts/qcom/sc7180.dtsi+78 -00 replies
6/7soc: qcom: rpmh: Update dirty flag only when data changesdrivers/soc/qcom/rpmh.c+16 -50 replies
7/7soc: qcom: rpmh: Invoke rpmh_flush for dirty cachesdrivers/soc/qcom/rpmh.c+6 -00 replies

Reviews trailers per patch

3 of 7 patches have a Reviewed-by or Acked-by.

PatchStephen BoydRob Herring
1/7R-b
2/7R-b
3/7R-b A-b
4/7
5/7
6/7
7/7

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v5 thread

Cover letter [PATCH v5 0/7] Add RSC power domain support

Changes in v5:
- Add Rob's Acked by on dt-bindings change
- Drop firmware psci change
- Update cpuidle stats in dtsi to follow PC mode
- Include change to update dirty flag when data is updated from [4]
- Add change to invoke rpmh_flush when caches are dirty

Changes in v4:
- Add change to allow hierarchical topology in PC mode
- Drop hierarchical domain idle states converter from v3
- Address Merge sc7180 dtsi change to add low power modes

Changes in v3:
- Address Rob's comment on dt property value
- Address Stephen's comments on rpmh-rsc driver change
- Include sc7180 cpuidle low power mode changes from [1]
- Include hierarchical domain idle states converter change from [2]

Changes in v2:
- Add Stephen's Reviewed-By to the first three patches
- Addressed Stephen's comments on fourth patch
- Include changes to connect rpmh domain to cpuidle and genpds

Resource State Coordinator (RSC) is responsible for powering off/lowering the requirements from CPU subsystem for the associated hardware like buses, clocks, and regulators when all CPUs and cluster is powered down.

RSC power domain uses last-man activities provided by genpd framework based on Ulf Hansoon's patch series[3], when the cluster of CPUs enter deepest idle states. As a part of domain poweroff, RSC can lower resource state requirements by flushing the cached sleep and wake state votes for various resources.

[1] https://patchwork.kernel.org/patch/11218965
[2] https://patchwork.kernel.org/patch/10941671
[3] https://patchwork.kernel.org/project/linux-arm-msm/list/?series=222355
[4] https://patchwork.kernel.org/project/linux-arm-msm/list/?series=236503

Maulik Shah (7):
drivers: qcom: rpmh: fix macro to accept NULL argument
drivers: qcom: rpmh: remove rpmh_flush export
dt-bindings: soc: qcom: Add RSC power domain specifier
drivers: qcom: rpmh-rsc: Add RSC power domain support
arm64: dts: qcom: sc7180: Add cpuidle low power states
soc: qcom: rpmh: Update dirty flag only when data changes
soc: qcom: rpmh: Invoke rpmh_flush for dirty caches

 .../devicetree/bindings/soc/qcom/rpmh-rsc.txt      |  9 +++
 arch/arm64/boot/dts/qcom/sc7180.dtsi               | 78 +++++++++++++++++++++
 drivers/soc/qcom/rpmh-internal.h                   |  3 +
 drivers/soc/qcom/rpmh-rsc.c                        | 81 ++++++++++++++++++++++
 drivers/soc/qcom/rpmh.c                            | 49 ++++++++-----
 include/soc/qcom/rpmh.h                            |  5 --
 6 files changed, 203 insertions(+), 22 deletions(-)
Signature · 2 lines
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation