mirror of
				https://github.com/Ysurac/openmptcprouter.git
				synced 2025-03-09 15:40:20 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			149 lines
		
	
	
	
		
			3.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			149 lines
		
	
	
	
		
			3.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From fb76b808f8628215afebaf0f8af0bde635302590 Mon Sep 17 00:00:00 2001
 | |
| From: Robert Marko <robimarko@gmail.com>
 | |
| Date: Fri, 19 Aug 2022 00:18:14 +0200
 | |
| Subject: [PATCH] arm64: dts: qcom: add PMP8074 DTSI
 | |
| 
 | |
| PMP8074 is a companion PMIC to the Qualcomm IPQ8074 series that is
 | |
| controlled via SPMI.
 | |
| 
 | |
| Add DTSI for it providing GPIO, regulator, RTC and VADC support.
 | |
| 
 | |
| RTC is disabled by default as there is no built-in battery so it will
 | |
| loose time unless board vendor added a battery, so make it optional.
 | |
| 
 | |
| Signed-off-by: Robert Marko <robimarko@gmail.com>
 | |
| Signed-off-by: Bjorn Andersson <andersson@kernel.org>
 | |
| Link: https://lore.kernel.org/r/20220818221815.346233-4-robimarko@gmail.com
 | |
| ---
 | |
|  arch/arm64/boot/dts/qcom/pmp8074.dtsi | 125 ++++++++++++++++++++++++++
 | |
|  1 file changed, 125 insertions(+)
 | |
|  create mode 100644 arch/arm64/boot/dts/qcom/pmp8074.dtsi
 | |
| 
 | |
| --- /dev/null
 | |
| +++ b/arch/arm64/boot/dts/qcom/pmp8074.dtsi
 | |
| @@ -0,0 +1,125 @@
 | |
| +// 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>;
 | |
| +			};
 | |
| +		};
 | |
| +	};
 | |
| +};
 |