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