arm64: dts: qcom: sc8280xp: Introduce additional tsens instances
authorBjorn Andersson <quic_bjorande@quicinc.com>
Tue, 6 Feb 2024 23:51:11 +0000 (15:51 -0800)
committerBjorn Andersson <andersson@kernel.org>
Wed, 7 Feb 2024 04:42:59 +0000 (22:42 -0600)
The SC8280XP contains two additional tsens instances, providing among
other things thermal measurements for the GPU.

Add these and a GPU thermal-zone.

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Reviewed-by: Johan Hovold <johan+linaro@kernel.org>
Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com>
Link: https://lore.kernel.org/r/20240206-sc8280xp-tsens2_3-v3-1-4577b3b38ea8@quicinc.com
[bjorn: s/cpu-crit/gpu-crit/]
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/sc8280xp.dtsi

index 176bd04dccc2dab46a8277dc458509d8d2832cb4..a780959c838ba7265a742a22e0569bdc90ce47fd 100644 (file)
                        interrupt-controller;
                };
 
+               tsens2: thermal-sensor@c251000 {
+                       compatible = "qcom,sc8280xp-tsens", "qcom,tsens-v2";
+                       reg = <0 0x0c251000 0 0x1ff>,
+                             <0 0x0c224000 0 0x8>;
+                       #qcom,sensors = <11>;
+                       interrupts-extended = <&pdc 122 IRQ_TYPE_LEVEL_HIGH>,
+                                             <&pdc 124 IRQ_TYPE_LEVEL_HIGH>;
+                       interrupt-names = "uplow", "critical";
+                       #thermal-sensor-cells = <1>;
+               };
+
+               tsens3: thermal-sensor@c252000 {
+                       compatible = "qcom,sc8280xp-tsens", "qcom,tsens-v2";
+                       reg = <0 0x0c252000 0 0x1ff>,
+                             <0 0x0c225000 0 0x8>;
+                       #qcom,sensors = <5>;
+                       interrupts-extended = <&pdc 123 IRQ_TYPE_LEVEL_HIGH>,
+                                             <&pdc 125 IRQ_TYPE_LEVEL_HIGH>;
+                       interrupt-names = "uplow", "critical";
+                       #thermal-sensor-cells = <1>;
+               };
+
                tsens0: thermal-sensor@c263000 {
                        compatible = "qcom,sc8280xp-tsens", "qcom,tsens-v2";
                        reg = <0 0x0c263000 0 0x1ff>, /* TM */
                        };
                };
 
+               gpu-thermal {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+
+                       thermal-sensors = <&tsens2 2>;
+
+                       trips {
+                               gpu-crit {
+                                       temperature = <110000>;
+                                       hysteresis = <1000>;
+                                       type = "critical";
+                               };
+                       };
+               };
+
                mem-thermal {
                        polling-delay-passive = <250>;
                        polling-delay = <1000>;