Message ID | 20220426094144.2958416-4-dmitry.baryshkov@linaro.org (mailing list archive) |
---|---|
State | Handled Elsewhere, archived |
Headers | show |
Series | arm: qcom: qcom-apq8064: add separate device node for tsens | expand |
On Tue, Apr 26, 2022 at 12:41:44PM +0300, Dmitry Baryshkov wrote: > Split tsens properties to the child node of the gcc. This follows the > lead of ipq8064 (which also uses a separate node for tsens) and makes > device tree closer to other platforms, where tsens is a completely > separate device. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > .../bindings/clock/qcom,gcc-apq8064.yaml | 45 +++++++------------ > 1 file changed, 17 insertions(+), 28 deletions(-) > > diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml > index b867da12761e..f2762599f679 100644 > --- a/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml > +++ b/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml > @@ -23,47 +23,36 @@ description: | > > properties: > compatible: > - enum: > - - qcom,gcc-apq8064 > - - qcom,gcc-msm8060 > - > - nvmem-cells: > - minItems: 1 > - maxItems: 2 > - description: > - Qualcomm TSENS (thermal sensor device) on some devices can > - be part of GCC and hence the TSENS properties can also be part > - of the GCC/clock-controller node. > - For more details on the TSENS properties please refer > - Documentation/devicetree/bindings/thermal/qcom-tsens.yaml > - > - nvmem-cell-names: > - minItems: 1 > items: > - - const: calib > - - const: calib_backup > - > - '#thermal-sensor-cells': > - const: 1 > + - enum: > + - qcom,gcc-apq8064 > + - qcom,gcc-msm8060 > + - const: syscon > > required: > - compatible > - - nvmem-cells > - - nvmem-cell-names > - - '#thermal-sensor-cells' > > unevaluatedProperties: false > > examples: > - | > clock-controller@900000 { > - compatible = "qcom,gcc-apq8064"; > + compatible = "qcom,gcc-apq8064", "syscon"; > reg = <0x00900000 0x4000>; > - nvmem-cells = <&tsens_calib>, <&tsens_backup>; > - nvmem-cell-names = "calib", "calib_backup"; > #clock-cells = <1>; > #reset-cells = <1>; > #power-domain-cells = <1>; > - #thermal-sensor-cells = <1>; > + > + thermal-sensor { This should throw a warning I think as 'thermal-sensor' needs to be defined. The patch didn't apply for me though. > + compatible = "qcom,msm8960-tsens"; > + > + nvmem-cells = <&tsens_calib>, <&tsens_backup>; > + nvmem-cell-names = "calib", "calib_backup"; > + interrupts = <0 178 4>; > + interrupt-names = "uplow"; > + > + #qcom,sensors = <11>; > + #thermal-sensor-cells = <1>; > + }; > }; > ... > -- > 2.35.1 > >
On 26/04/2022 21:24, Rob Herring wrote: > On Tue, Apr 26, 2022 at 12:41:44PM +0300, Dmitry Baryshkov wrote: >> Split tsens properties to the child node of the gcc. This follows the >> lead of ipq8064 (which also uses a separate node for tsens) and makes >> device tree closer to other platforms, where tsens is a completely >> separate device. >> >> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> >> --- >> .../bindings/clock/qcom,gcc-apq8064.yaml | 45 +++++++------------ >> 1 file changed, 17 insertions(+), 28 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml >> index b867da12761e..f2762599f679 100644 >> --- a/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml >> +++ b/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml >> @@ -23,47 +23,36 @@ description: | >> >> properties: >> compatible: >> - enum: >> - - qcom,gcc-apq8064 >> - - qcom,gcc-msm8060 >> - >> - nvmem-cells: >> - minItems: 1 >> - maxItems: 2 >> - description: >> - Qualcomm TSENS (thermal sensor device) on some devices can >> - be part of GCC and hence the TSENS properties can also be part >> - of the GCC/clock-controller node. >> - For more details on the TSENS properties please refer >> - Documentation/devicetree/bindings/thermal/qcom-tsens.yaml >> - >> - nvmem-cell-names: >> - minItems: 1 >> items: >> - - const: calib >> - - const: calib_backup >> - >> - '#thermal-sensor-cells': >> - const: 1 >> + - enum: >> + - qcom,gcc-apq8064 >> + - qcom,gcc-msm8060 >> + - const: syscon >> >> required: >> - compatible >> - - nvmem-cells >> - - nvmem-cell-names >> - - '#thermal-sensor-cells' >> >> unevaluatedProperties: false >> >> examples: >> - | >> clock-controller@900000 { >> - compatible = "qcom,gcc-apq8064"; >> + compatible = "qcom,gcc-apq8064", "syscon"; >> reg = <0x00900000 0x4000>; >> - nvmem-cells = <&tsens_calib>, <&tsens_backup>; >> - nvmem-cell-names = "calib", "calib_backup"; >> #clock-cells = <1>; >> #reset-cells = <1>; >> #power-domain-cells = <1>; >> - #thermal-sensor-cells = <1>; >> + >> + thermal-sensor { > > This should throw a warning I think as 'thermal-sensor' needs to be > defined. The patch didn't apply for me though. This series depends on https://lore.kernel.org/linux-arm-msm/20220426093608.2957210-1-dmitry.baryshkov@linaro.org/T/#u Regarding the warnings, I think this is related to the issue Krzyshtof has reported few days ago. I was not able to trigger warnings for unknown properties if unevaluatedProperties:false is used. > >> + compatible = "qcom,msm8960-tsens"; >> + >> + nvmem-cells = <&tsens_calib>, <&tsens_backup>; >> + nvmem-cell-names = "calib", "calib_backup"; >> + interrupts = <0 178 4>; >> + interrupt-names = "uplow"; >> + >> + #qcom,sensors = <11>; >> + #thermal-sensor-cells = <1>; >> + }; >> }; >> ... >> -- >> 2.35.1 >> >>
diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml index b867da12761e..f2762599f679 100644 --- a/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml +++ b/Documentation/devicetree/bindings/clock/qcom,gcc-apq8064.yaml @@ -23,47 +23,36 @@ description: | properties: compatible: - enum: - - qcom,gcc-apq8064 - - qcom,gcc-msm8060 - - nvmem-cells: - minItems: 1 - maxItems: 2 - description: - Qualcomm TSENS (thermal sensor device) on some devices can - be part of GCC and hence the TSENS properties can also be part - of the GCC/clock-controller node. - For more details on the TSENS properties please refer - Documentation/devicetree/bindings/thermal/qcom-tsens.yaml - - nvmem-cell-names: - minItems: 1 items: - - const: calib - - const: calib_backup - - '#thermal-sensor-cells': - const: 1 + - enum: + - qcom,gcc-apq8064 + - qcom,gcc-msm8060 + - const: syscon required: - compatible - - nvmem-cells - - nvmem-cell-names - - '#thermal-sensor-cells' unevaluatedProperties: false examples: - | clock-controller@900000 { - compatible = "qcom,gcc-apq8064"; + compatible = "qcom,gcc-apq8064", "syscon"; reg = <0x00900000 0x4000>; - nvmem-cells = <&tsens_calib>, <&tsens_backup>; - nvmem-cell-names = "calib", "calib_backup"; #clock-cells = <1>; #reset-cells = <1>; #power-domain-cells = <1>; - #thermal-sensor-cells = <1>; + + thermal-sensor { + compatible = "qcom,msm8960-tsens"; + + nvmem-cells = <&tsens_calib>, <&tsens_backup>; + nvmem-cell-names = "calib", "calib_backup"; + interrupts = <0 178 4>; + interrupt-names = "uplow"; + + #qcom,sensors = <11>; + #thermal-sensor-cells = <1>; + }; }; ...
Split tsens properties to the child node of the gcc. This follows the lead of ipq8064 (which also uses a separate node for tsens) and makes device tree closer to other platforms, where tsens is a completely separate device. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- .../bindings/clock/qcom,gcc-apq8064.yaml | 45 +++++++------------ 1 file changed, 17 insertions(+), 28 deletions(-)