Message ID | 20200716022817.30439-5-ansuelsmth@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Daniel Lezcano |
Headers | show |
Series | Add support for ipq8064 tsens | expand |
On Thu, 16 Jul 2020 04:28:13 +0200, Ansuel Smith wrote: > Document the use of bindings used for ipq8064 SoCs tsens. > ipq8064 use the same gcc regs and is set as a child of the qcom gcc. > > Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> > --- > .../bindings/thermal/qcom-tsens.yaml | 50 ++++++++++++++++--- > 1 file changed, 43 insertions(+), 7 deletions(-) > Reviewed-by: Rob Herring <robh@kernel.org>
On Thu, Jul 16, 2020 at 7:58 AM Ansuel Smith <ansuelsmth@gmail.com> wrote: > > Document the use of bindings used for ipq8064 SoCs tsens. > ipq8064 use the same gcc regs and is set as a child of the qcom gcc. > > Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> > --- > .../bindings/thermal/qcom-tsens.yaml | 50 ++++++++++++++++--- > 1 file changed, 43 insertions(+), 7 deletions(-) > > diff --git a/Documentation/devicetree/bindings/thermal/qcom-tsens.yaml b/Documentation/devicetree/bindings/thermal/qcom-tsens.yaml > index d7be931b42d2..9d480e3943a2 100644 > --- a/Documentation/devicetree/bindings/thermal/qcom-tsens.yaml > +++ b/Documentation/devicetree/bindings/thermal/qcom-tsens.yaml > @@ -19,6 +19,11 @@ description: | > properties: > compatible: > oneOf: > + - description: msm9860 TSENS based Another variant of the number here: I've seen 8960, 8064 (correct) and 8060, 9860 (wrong) so far. Just use 8960 throughout this series and then add a new patch at the end of the series for a compatible for ipq8064. > + items: > + - enum: > + - qcom,ipq8064-tsens > + > - description: v0.1 of TSENS > items: > - enum: > @@ -85,12 +90,18 @@ properties: > Number of cells required to uniquely identify the thermal sensors. Since > we have multiple sensors this is set to 1 > > +required: > + - compatible > + - interrupts > + - "#thermal-sensor-cells" > + > allOf: > - if: > properties: > compatible: > contains: > enum: > + - qcom,ipq8064-tsens > - qcom,msm8916-tsens > - qcom,msm8974-tsens > - qcom,msm8976-tsens > @@ -111,17 +122,42 @@ allOf: > interrupt-names: > minItems: 2 > > -required: > - - compatible > - - reg > - - "#qcom,sensors" > - - interrupts > - - interrupt-names > - - "#thermal-sensor-cells" > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,tsens-v0_1 > + - qcom,tsens-v1 > + - qcom,tsens-v2 > + > + then: > + required: > + - reg > + - interrupt-names > + - "#qcom,sensors" > > additionalProperties: false > > examples: > + - | > + #include <dt-bindings/interrupt-controller/arm-gic.h> > + // Example msm9860 based SoC (ipq8064): > + gcc: clock-controller { > + > + /* ... */ > + > + tsens: thermal-sensor { > + compatible = "qcom,ipq8064-tsens"; > + > + nvmem-cells = <&tsens_calib>, <&tsens_calsel>; > + nvmem-cell-names = "calib", "calib_sel"; > + interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>; > + > + #thermal-sensor-cells = <1>; > + }; > + }; > + > - | > #include <dt-bindings/interrupt-controller/arm-gic.h> > // Example 1 (legacy: for pre v1 IP): > -- > 2.27.0 >
diff --git a/Documentation/devicetree/bindings/thermal/qcom-tsens.yaml b/Documentation/devicetree/bindings/thermal/qcom-tsens.yaml index d7be931b42d2..9d480e3943a2 100644 --- a/Documentation/devicetree/bindings/thermal/qcom-tsens.yaml +++ b/Documentation/devicetree/bindings/thermal/qcom-tsens.yaml @@ -19,6 +19,11 @@ description: | properties: compatible: oneOf: + - description: msm9860 TSENS based + items: + - enum: + - qcom,ipq8064-tsens + - description: v0.1 of TSENS items: - enum: @@ -85,12 +90,18 @@ properties: Number of cells required to uniquely identify the thermal sensors. Since we have multiple sensors this is set to 1 +required: + - compatible + - interrupts + - "#thermal-sensor-cells" + allOf: - if: properties: compatible: contains: enum: + - qcom,ipq8064-tsens - qcom,msm8916-tsens - qcom,msm8974-tsens - qcom,msm8976-tsens @@ -111,17 +122,42 @@ allOf: interrupt-names: minItems: 2 -required: - - compatible - - reg - - "#qcom,sensors" - - interrupts - - interrupt-names - - "#thermal-sensor-cells" + - if: + properties: + compatible: + contains: + enum: + - qcom,tsens-v0_1 + - qcom,tsens-v1 + - qcom,tsens-v2 + + then: + required: + - reg + - interrupt-names + - "#qcom,sensors" additionalProperties: false examples: + - | + #include <dt-bindings/interrupt-controller/arm-gic.h> + // Example msm9860 based SoC (ipq8064): + gcc: clock-controller { + + /* ... */ + + tsens: thermal-sensor { + compatible = "qcom,ipq8064-tsens"; + + nvmem-cells = <&tsens_calib>, <&tsens_calsel>; + nvmem-cell-names = "calib", "calib_sel"; + interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>; + + #thermal-sensor-cells = <1>; + }; + }; + - | #include <dt-bindings/interrupt-controller/arm-gic.h> // Example 1 (legacy: for pre v1 IP):
Document the use of bindings used for ipq8064 SoCs tsens. ipq8064 use the same gcc regs and is set as a child of the qcom gcc. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> --- .../bindings/thermal/qcom-tsens.yaml | 50 ++++++++++++++++--- 1 file changed, 43 insertions(+), 7 deletions(-)