xref: /openbmc/linux/arch/arm64/boot/dts/qcom/pmp8074.dtsi (revision ceb01bb8)
101da7bafSRobert Marko// SPDX-License-Identifier: GPL-2.0-only OR BSD-3-Clause
201da7bafSRobert Marko
301da7bafSRobert Marko#include <dt-bindings/spmi/spmi.h>
401da7bafSRobert Marko#include <dt-bindings/iio/qcom,spmi-vadc.h>
501da7bafSRobert Marko
601da7bafSRobert Marko&spmi_bus {
701da7bafSRobert Marko	pmic@0 {
801da7bafSRobert Marko		compatible = "qcom,pmp8074", "qcom,spmi-pmic";
901da7bafSRobert Marko		reg = <0x0 SPMI_USID>;
1001da7bafSRobert Marko		#address-cells = <1>;
1101da7bafSRobert Marko		#size-cells = <0>;
1201da7bafSRobert Marko
1301da7bafSRobert Marko		pmp8074_adc: adc@3100 {
1401da7bafSRobert Marko			compatible = "qcom,spmi-adc-rev2";
1501da7bafSRobert Marko			reg = <0x3100>;
1601da7bafSRobert Marko			interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
1701da7bafSRobert Marko			#address-cells = <1>;
1801da7bafSRobert Marko			#size-cells = <0>;
1901da7bafSRobert Marko			#io-channel-cells = <1>;
2001da7bafSRobert Marko
2101da7bafSRobert Marko			ref-gnd@0 {
2201da7bafSRobert Marko				reg = <ADC5_REF_GND>;
2301da7bafSRobert Marko				qcom,pre-scaling = <1 1>;
2401da7bafSRobert Marko			};
2501da7bafSRobert Marko
2601da7bafSRobert Marko			vref-1p25@1 {
2701da7bafSRobert Marko				reg = <ADC5_1P25VREF>;
2801da7bafSRobert Marko				qcom,pre-scaling = <1 1>;
2901da7bafSRobert Marko			};
3001da7bafSRobert Marko
3101da7bafSRobert Marko			vref-vadc@2 {
3201da7bafSRobert Marko				reg = <ADC5_VREF_VADC>;
3301da7bafSRobert Marko				qcom,pre-scaling = <1 1>;
3401da7bafSRobert Marko			};
3501da7bafSRobert Marko
3601da7bafSRobert Marko			pmic_die: die-temp@6 {
3701da7bafSRobert Marko				reg = <ADC5_DIE_TEMP>;
3801da7bafSRobert Marko				qcom,pre-scaling = <1 1>;
3901da7bafSRobert Marko			};
4001da7bafSRobert Marko
4101da7bafSRobert Marko			xo_therm: xo-temp@76 {
4201da7bafSRobert Marko				reg = <ADC5_XO_THERM_100K_PU>;
4301da7bafSRobert Marko				qcom,ratiometric;
4401da7bafSRobert Marko				qcom,hw-settle-time = <200>;
4501da7bafSRobert Marko				qcom,pre-scaling = <1 1>;
4601da7bafSRobert Marko			};
4701da7bafSRobert Marko
4801da7bafSRobert Marko			pa_therm1: thermistor1@77 {
4901da7bafSRobert Marko				reg = <ADC5_AMUX_THM1_100K_PU>;
5001da7bafSRobert Marko				qcom,ratiometric;
5101da7bafSRobert Marko				qcom,hw-settle-time = <200>;
5201da7bafSRobert Marko				qcom,pre-scaling = <1 1>;
5301da7bafSRobert Marko			};
5401da7bafSRobert Marko
5501da7bafSRobert Marko			pa_therm2: thermistor2@78 {
5601da7bafSRobert Marko				reg = <ADC5_AMUX_THM2_100K_PU>;
5701da7bafSRobert Marko				qcom,ratiometric;
5801da7bafSRobert Marko				qcom,hw-settle-time = <200>;
5901da7bafSRobert Marko				qcom,pre-scaling = <1 1>;
6001da7bafSRobert Marko			};
6101da7bafSRobert Marko
6201da7bafSRobert Marko			pa_therm3: thermistor3@79 {
6301da7bafSRobert Marko				reg = <ADC5_AMUX_THM3_100K_PU>;
6401da7bafSRobert Marko				qcom,ratiometric;
6501da7bafSRobert Marko				qcom,hw-settle-time = <200>;
6601da7bafSRobert Marko				qcom,pre-scaling = <1 1>;
6701da7bafSRobert Marko			};
6801da7bafSRobert Marko
6901da7bafSRobert Marko			vph-pwr@131 {
7001da7bafSRobert Marko				reg = <ADC5_VPH_PWR>;
7101da7bafSRobert Marko				qcom,pre-scaling = <1 3>;
7201da7bafSRobert Marko			};
7301da7bafSRobert Marko		};
7401da7bafSRobert Marko
7501da7bafSRobert Marko		pmp8074_rtc: rtc@6000 {
7601da7bafSRobert Marko			compatible = "qcom,pm8941-rtc";
77*ceb01bb8SEric Chanudet			reg = <0x6000>, <0x6100>;
7801da7bafSRobert Marko			reg-names = "rtc", "alarm";
7901da7bafSRobert Marko			interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
8001da7bafSRobert Marko			allow-set-time;
8101da7bafSRobert Marko			status = "disabled";
8201da7bafSRobert Marko		};
8301da7bafSRobert Marko
8401da7bafSRobert Marko		pmp8074_gpios: gpio@c000 {
8501da7bafSRobert Marko			compatible = "qcom,pmp8074-gpio", "qcom,spmi-gpio";
8601da7bafSRobert Marko			reg = <0xc000>;
8701da7bafSRobert Marko			gpio-controller;
8801da7bafSRobert Marko			#gpio-cells = <2>;
8901da7bafSRobert Marko			gpio-ranges = <&pmp8074_gpios 0 0 12>;
9001da7bafSRobert Marko			interrupt-controller;
9101da7bafSRobert Marko			#interrupt-cells = <2>;
9201da7bafSRobert Marko		};
9301da7bafSRobert Marko	};
9401da7bafSRobert Marko
9501da7bafSRobert Marko	pmic@1 {
9601da7bafSRobert Marko		compatible = "qcom,pmp8074", "qcom,spmi-pmic";
9701da7bafSRobert Marko		reg = <0x1 SPMI_USID>;
9801da7bafSRobert Marko
9901da7bafSRobert Marko		regulators {
10001da7bafSRobert Marko			compatible = "qcom,pmp8074-regulators";
10101da7bafSRobert Marko
10201da7bafSRobert Marko			s3: s3 {
10301da7bafSRobert Marko				regulator-name = "vdd_s3";
10401da7bafSRobert Marko				regulator-min-microvolt = <592000>;
10501da7bafSRobert Marko				regulator-max-microvolt = <1064000>;
10601da7bafSRobert Marko				regulator-always-on;
10701da7bafSRobert Marko				regulator-boot-on;
10801da7bafSRobert Marko			};
10901da7bafSRobert Marko
11001da7bafSRobert Marko			s4: s4 {
11101da7bafSRobert Marko				regulator-name = "vdd_s4";
11201da7bafSRobert Marko				regulator-min-microvolt = <712000>;
11301da7bafSRobert Marko				regulator-max-microvolt = <992000>;
11401da7bafSRobert Marko				regulator-always-on;
11501da7bafSRobert Marko				regulator-boot-on;
11601da7bafSRobert Marko			};
11701da7bafSRobert Marko
11801da7bafSRobert Marko			l11: l11 {
11901da7bafSRobert Marko				regulator-name = "l11";
12001da7bafSRobert Marko				regulator-min-microvolt = <1800000>;
12101da7bafSRobert Marko				regulator-max-microvolt = <3300000>;
12201da7bafSRobert Marko			};
12301da7bafSRobert Marko		};
12401da7bafSRobert Marko	};
12501da7bafSRobert Marko};
126