On Thu, Oct 07, 2021 at 03:27:25PM +0530, Maulik Shah wrote:
From: Mahesh Sivasubramanian <msivasub@xxxxxxxxxxxxxx>
Add device binding documentation for Qualcomm Technologies, Inc. (QTI)
Sleep stats driver. The driver is used for displaying Sleep statistic maintained
by Always On Processor or Resource Power Manager.
Cc: devicetree@xxxxxxxxxxxxxxx
Signed-off-by: Mahesh Sivasubramanian <msivasub@xxxxxxxxxxxxxx>
Signed-off-by: Lina Iyer <ilina@xxxxxxxxxxxxxx>
Signed-off-by: Maulik Shah <mkshah@xxxxxxxxxxxxxx>
Reviewed-by: Rob Herring <robh@xxxxxxxxxx>
Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
Reviewed-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>
---
.../bindings/soc/qcom/qcom-sleep-stats.yaml | 47 ++++++++++++++++++++++
1 file changed, 47 insertions(+)
create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom-sleep-stats.yaml
diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom-sleep-stats.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom-sleep-stats.yaml
new file mode 100644
index 0000000..5213daf
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom-sleep-stats.yaml
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/qcom/qcom-sleep-stats.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Technologies, Inc. (QTI) Sleep stats bindings
+
+maintainers:
+ - Maulik Shah <mkshah@xxxxxxxxxxxxxx>
+
+description:
+ Always On Processor/Resource Power Manager maintains statistics of the SoC
+ sleep modes involving powering down of the rails and oscillator clock.
+
+ Statistics includes SoC sleep mode type, number of times low power mode were
+ entered, time of last entry, time of last exit and accumulated sleep duration.
+
+properties:
+ compatible:
+ enum:
+ - qcom,rpmh-sleep-stats
+ - qcom,rpm-sleep-stats
+
+ reg:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ # Example of rpmh sleep stats
+ - |
+ sram@c3f0000 {
+ compatible = "qcom,rpmh-sleep-stats";
+ reg = <0x0c3f0000 0x400>;
+ };
+ # Example of rpm sleep stats
+ - |
+ sram@4690000 {
+ compatible = "qcom,rpm-sleep-stats";
+ reg = <0x04690000 0x400>;
+ };
Does this region really only contain "rpm-*sleep*-stats"? AFAICT this is
really a more generic memory region where various offsets are read from.
These are all the offsets in msm8998-pm.dtsi downstream [1]:
...9000c: rpm-rail-stats offset
...90014: rpm-sleep-stats offset (RPM_DYNAMIC_ADDR in your driver)
...90018: rpm-log offset
...9001c: "RPM FREE HEAP SPACE"
How would you set up any of the other drivers if the entire region
is declared as "rpm-sleep-stats"?
Perhaps this region should have a more generic name that represents what
it actually is and not only one of the information it contains, similar
to "qcom,rpm-msg-ram"?
Thanks,
Stephan
[1]: https://source.codeaurora.org/quic/la/kernel/msm-4.4/tree/arch/arm/boot/dts/qcom/msm8998-pm.dtsi?h=LA.UM.8.4.1.c25#n271