]> www.infradead.org Git - linux.git/commitdiff
arm64: dts: qcom: sm8750: Add pmic dtsi
authorMelody Olvera <quic_molvera@quicinc.com>
Wed, 4 Dec 2024 23:18:05 +0000 (15:18 -0800)
committerBjorn Andersson <andersson@kernel.org>
Mon, 6 Jan 2025 16:42:54 +0000 (10:42 -0600)
Add pmic dtsi file for SM8750 SoC describing the pmics and
their thermal zones.

Signed-off-by: Melody Olvera <quic_molvera@quicinc.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20241204-sm8750_master_dt-v3-5-4d5a8269950b@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/sm8750-pmics.dtsi [new file with mode: 0644]

diff --git a/arch/arm64/boot/dts/qcom/sm8750-pmics.dtsi b/arch/arm64/boot/dts/qcom/sm8750-pmics.dtsi
new file mode 100644 (file)
index 0000000..6eb8d78
--- /dev/null
@@ -0,0 +1,188 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
+ */
+
+/ {
+       thermal-zones {
+               pm8550ve-d-thermal {
+                       polling-delay-passive = <100>;
+
+                       thermal-sensors = <&pm8550ve_d_temp_alarm>;
+
+                       trips {
+                               trip0 {
+                                       temperature = <95000>;
+                                       hysteresis = <0>;
+                                       type = "passive";
+                               };
+
+                               trip1 {
+                                       temperature = <115000>;
+                                       hysteresis = <0>;
+                                       type = "hot";
+                               };
+                       };
+               };
+
+               pm8550ve-f-thermal {
+                       polling-delay-passive = <100>;
+
+                       thermal-sensors = <&pm8550ve_f_temp_alarm>;
+
+                       trips {
+                               trip0 {
+                                       temperature = <95000>;
+                                       hysteresis = <0>;
+                                       type = "passive";
+                               };
+
+                               trip1 {
+                                       temperature = <115000>;
+                                       hysteresis = <0>;
+                                       type = "hot";
+                               };
+                       };
+               };
+
+               pm8550ve-g-thermal {
+                       polling-delay-passive = <100>;
+
+                       thermal-sensors = <&pm8550ve_g_temp_alarm>;
+
+                       trips {
+                               trip0 {
+                                       temperature = <95000>;
+                                       hysteresis = <0>;
+                                       type = "passive";
+                               };
+
+                               trip1 {
+                                       temperature = <115000>;
+                                       hysteresis = <0>;
+                                       type = "hot";
+                               };
+                       };
+               };
+
+               pm8550vs-j-thermal {
+                       polling-delay-passive = <100>;
+
+                       thermal-sensors = <&pm8550vs_j_temp_alarm>;
+
+                       trips {
+                               trip0 {
+                                       temperature = <95000>;
+                                       hysteresis = <0>;
+                                       type = "passive";
+                               };
+
+                               trip1 {
+                                       temperature = <115000>;
+                                       hysteresis = <0>;
+                                       type = "hot";
+                               };
+                       };
+               };
+       };
+};
+
+&spmi_bus {
+       /* PM8550VE */
+       pm8550ve_d: pmic@3 {
+               compatible = "qcom,pm8550ve", "qcom,spmi-pmic";
+               reg = <0x3 SPMI_USID>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               pm8550ve_d_temp_alarm: temp-alarm@a00 {
+                       compatible = "qcom,spmi-temp-alarm";
+                       reg = <0xa00>;
+                       interrupts = <0x3 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
+                       #thermal-sensor-cells = <0>;
+               };
+
+               pm8550ve_d_gpios: gpio@8800 {
+                       compatible = "qcom,pm8550ve-gpio", "qcom,spmi-gpio";
+                       reg = <0x8800>;
+                       gpio-controller;
+                       gpio-ranges = <&pm8550ve_d_gpios 0 0 8>;
+                       #gpio-cells = <2>;
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+               };
+       };
+
+       pm8550ve_f: pmic@5 {
+               compatible = "qcom,pm8550ve", "qcom,spmi-pmic";
+               reg = <0x5 SPMI_USID>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               pm8550ve_f_temp_alarm: temp-alarm@a00 {
+                       compatible = "qcom,spmi-temp-alarm";
+                       reg = <0xa00>;
+                       interrupts = <0x5 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
+                       #thermal-sensor-cells = <0>;
+               };
+
+               pm8550ve_f_gpios: gpio@8800 {
+                       compatible = "qcom,pm8550ve-gpio", "qcom,spmi-gpio";
+                       reg = <0x8800>;
+                       gpio-controller;
+                       gpio-ranges = <&pm8550ve_f_gpios 0 0 6>;
+                       #gpio-cells = <2>;
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+               };
+       };
+
+       pm8550ve_g: pmic@6 {
+               compatible = "qcom,pm8550ve", "qcom,spmi-pmic";
+               reg = <0x6 SPMI_USID>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               pm8550ve_g_temp_alarm: temp-alarm@a00 {
+                       compatible = "qcom,spmi-temp-alarm";
+                       reg = <0xa00>;
+                       interrupts = <0x6 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
+                       #thermal-sensor-cells = <0>;
+               };
+
+               pm8550ve_g_gpios: gpio@8800 {
+                       compatible = "qcom,pm8550ve-gpio", "qcom,spmi-gpio";
+                       reg = <0x8800>;
+                       gpio-controller;
+                       gpio-ranges = <&pm8550ve_g_gpios 0 0 8>;
+                       #gpio-cells = <2>;
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+               };
+       };
+
+       /* PM8550VS */
+       pm8550vs_j: pmic@9 {
+               compatible = "qcom,pm8550vs", "qcom,spmi-pmic";
+               reg = <0x9 SPMI_USID>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               pm8550vs_j_temp_alarm: temp-alarm@a00 {
+                       compatible = "qcom,spmi-temp-alarm";
+                       reg = <0xa00>;
+                       interrupts = <0x9 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
+                       #thermal-sensor-cells = <0>;
+               };
+
+               pm8550vs_j_gpios: gpio@8800 {
+                       compatible = "qcom,pm8550vs-gpio", "qcom,spmi-gpio";
+                       reg = <0x8800>;
+                       gpio-controller;
+                       gpio-ranges = <&pm8550vs_j_gpios 0 0 6>;
+                       #gpio-cells = <2>;
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+               };
+       };
+};