// SPDX-License-Identifier: GPL-2.0-only OR BSD-3-Clause

#include <dt-bindings/spmi/spmi.h>
#include <dt-bindings/iio/qcom,spmi-vadc.h>

&spmi_bus {
	pmic@0 {
		compatible = "qcom,pmp8074", "qcom,spmi-pmic";
		reg = <0x0 SPMI_USID>;
		#address-cells = <1>;
		#size-cells = <0>;

		pmp8074_adc: adc@3100 {
			compatible = "qcom,spmi-adc-rev2";
			reg = <0x3100>;
			interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
			#address-cells = <1>;
			#size-cells = <0>;
			#io-channel-cells = <1>;

			ref-gnd@0 {
				reg = <ADC5_REF_GND>;
				qcom,pre-scaling = <1 1>;
			};

			vref-1p25@1 {
				reg = <ADC5_1P25VREF>;
				qcom,pre-scaling = <1 1>;
			};

			vref-vadc@2 {
				reg = <ADC5_VREF_VADC>;
				qcom,pre-scaling = <1 1>;
			};

			pmic_die: die-temp@6 {
				reg = <ADC5_DIE_TEMP>;
				qcom,pre-scaling = <1 1>;
			};

			xo_therm: xo-temp@76 {
				reg = <ADC5_XO_THERM_100K_PU>;
				qcom,ratiometric;
				qcom,hw-settle-time = <200>;
				qcom,pre-scaling = <1 1>;
			};

			pa_therm1: thermistor1@77 {
				reg = <ADC5_AMUX_THM1_100K_PU>;
				qcom,ratiometric;
				qcom,hw-settle-time = <200>;
				qcom,pre-scaling = <1 1>;
			};

			pa_therm2: thermistor2@78 {
				reg = <ADC5_AMUX_THM2_100K_PU>;
				qcom,ratiometric;
				qcom,hw-settle-time = <200>;
				qcom,pre-scaling = <1 1>;
			};

			pa_therm3: thermistor3@79 {
				reg = <ADC5_AMUX_THM3_100K_PU>;
				qcom,ratiometric;
				qcom,hw-settle-time = <200>;
				qcom,pre-scaling = <1 1>;
			};

			vph-pwr@131 {
				reg = <ADC5_VPH_PWR>;
				qcom,pre-scaling = <1 3>;
			};
		};

		pmp8074_rtc: rtc@6000 {
			compatible = "qcom,pm8941-rtc";
			reg = <0x6000>;
			reg-names = "rtc", "alarm";
			interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
			allow-set-time;
			status = "disabled";
		};

		pmp8074_gpios: gpio@c000 {
			compatible = "qcom,pmp8074-gpio", "qcom,spmi-gpio";
			reg = <0xc000>;
			gpio-controller;
			#gpio-cells = <2>;
			gpio-ranges = <&pmp8074_gpios 0 0 12>;
			interrupt-controller;
			#interrupt-cells = <2>;
		};
	};

	pmic@1 {
		compatible = "qcom,pmp8074", "qcom,spmi-pmic";
		reg = <0x1 SPMI_USID>;

		regulators {
			compatible = "qcom,pmp8074-regulators";

			s3: s3 {
				regulator-name = "vdd_s3";
				regulator-min-microvolt = <592000>;
				regulator-max-microvolt = <1064000>;
				regulator-always-on;
				regulator-boot-on;
			};

			s4: s4 {
				regulator-name = "vdd_s4";
				regulator-min-microvolt = <712000>;
				regulator-max-microvolt = <992000>;
				regulator-always-on;
				regulator-boot-on;
			};

			l11: l11 {
				regulator-name = "l11";
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <3300000>;
			};
		};
	};
};
