summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSachin Gupta <sachin.gupta@oss.qualcomm.com>2026-08-14 15:21:25 +0530
committerBjorn Andersson <andersson@kernel.org>2026-08-31 11:16:06 -0500
commit739cc0db96cc2bd0da3a805aa96cd8c92d56cbdc (patch)
treed31389c17d41879d25170c6fc3634b8e5d9f1a9a
parentcd0f33393882e2554d46e8e068ab95d00593f385 (diff)
downloadlinux-next-739cc0db96cc2bd0da3a805aa96cd8c92d56cbdc.tar.gz
linux-next-739cc0db96cc2bd0da3a805aa96cd8c92d56cbdc.zip
arm64: dts: qcom: lemans-pmics: Enable PMIC MBG thermal monitor
Lemans boards use PM8654AU PMIC instances that expose MBG thermal monitor blocks handled by the existing qcom-spmi-mbg-tm driver. Add MBG temperature-sensor nodes for the PMIC instances and wire them into dedicated thermal zones with passive trips, so PMIC die temperature monitoring is available through the thermal framework. Signed-off-by: Sachin Gupta <sachin.gupta@oss.qualcomm.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/6a7ee538.797536ea.65c65.28c0@mx.google.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
-rw-r--r--arch/arm64/boot/dts/qcom/lemans-pmics.dtsi116
1 files changed, 116 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/qcom/lemans-pmics.dtsi b/arch/arm64/boot/dts/qcom/lemans-pmics.dtsi
index 500f715931aa..4c853053be85 100644
--- a/arch/arm64/boot/dts/qcom/lemans-pmics.dtsi
+++ b/arch/arm64/boot/dts/qcom/lemans-pmics.dtsi
@@ -88,6 +88,58 @@
};
};
};
+
+ pm8775-mbg0-thermal {
+ polling-delay-passive = <100>;
+ thermal-sensors = <&pmm8654au_0_mbg_temp>;
+
+ trips {
+ trip0 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ pm8775-mbg1-thermal {
+ polling-delay-passive = <100>;
+ thermal-sensors = <&pmm8654au_1_mbg_temp>;
+
+ trips {
+ trip0 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ pm8775-mbg2-thermal {
+ polling-delay-passive = <100>;
+ thermal-sensors = <&pmm8654au_2_mbg_temp>;
+
+ trips {
+ trip0 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ pm8775-mbg3-thermal {
+ polling-delay-passive = <100>;
+ thermal-sensors = <&pmm8654au_3_mbg_temp>;
+
+ trips {
+ trip0 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
};
reboot-mode {
@@ -189,6 +241,22 @@
};
};
+ pmm8654au_sail_0: pmic@1 {
+ compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
+ reg = <0x1 SPMI_USID>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pmm8654au_0_mbg_temp: temperature-sensor@d700 {
+ compatible = "qcom,pm8775-mbg-tm";
+ reg = <0xd700>;
+ io-channels = <&pmm8654au_0_adc ADC5_GEN3_DIE_TEMP(0)>;
+ io-channel-names = "thermal";
+ interrupts-extended = <&spmi_bus 0x1 0xd7 0x0 IRQ_TYPE_EDGE_RISING>;
+ #thermal-sensor-cells = <0>;
+ };
+ };
+
pmm8654au_1: pmic@2 {
compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
reg = <0x2 SPMI_USID>;
@@ -236,6 +304,22 @@
};
};
+ pmm8654au_sail_1: pmic@3 {
+ compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
+ reg = <0x3 SPMI_USID>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pmm8654au_1_mbg_temp: temperature-sensor@d700 {
+ compatible = "qcom,pm8775-mbg-tm";
+ reg = <0xd700>;
+ io-channels = <&pmm8654au_1_adc ADC5_GEN3_DIE_TEMP(2)>;
+ io-channel-names = "thermal";
+ interrupts-extended = <&spmi_bus 0x3 0xd7 0x0 IRQ_TYPE_EDGE_RISING>;
+ #thermal-sensor-cells = <0>;
+ };
+ };
+
pmm8654au_2: pmic@4 {
compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
reg = <0x4 SPMI_USID>;
@@ -283,6 +367,22 @@
};
};
+ pmm8654au_sail_2: pmic@5 {
+ compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
+ reg = <0x5 SPMI_USID>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pmm8654au_2_mbg_temp: temperature-sensor@d700 {
+ compatible = "qcom,pm8775-mbg-tm";
+ reg = <0xd700>;
+ io-channels = <&pmm8654au_2_adc ADC5_GEN3_DIE_TEMP(4)>;
+ io-channel-names = "thermal";
+ interrupts-extended = <&spmi_bus 0x5 0xd7 0x0 IRQ_TYPE_EDGE_RISING>;
+ #thermal-sensor-cells = <0>;
+ };
+ };
+
pmm8654au_3: pmic@6 {
compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
reg = <0x6 SPMI_USID>;
@@ -329,4 +429,20 @@
#interrupt-cells = <2>;
};
};
+
+ pmm8654au_sail_3: pmic@7 {
+ compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
+ reg = <0x7 SPMI_USID>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pmm8654au_3_mbg_temp: temperature-sensor@d700 {
+ compatible = "qcom,pm8775-mbg-tm";
+ reg = <0xd700>;
+ io-channels = <&pmm8654au_3_adc ADC5_GEN3_DIE_TEMP(6)>;
+ io-channel-names = "thermal";
+ interrupts-extended = <&spmi_bus 0x7 0xd7 0x0 IRQ_TYPE_EDGE_RISING>;
+ #thermal-sensor-cells = <0>;
+ };
+ };
};