123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- From fb76b808f8628215afebaf0f8af0bde635302590 Mon Sep 17 00:00:00 2001
- From: Robert Marko <[email protected]>
- 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 <[email protected]>
- Signed-off-by: Bjorn Andersson <[email protected]>
- Link: https://lore.kernel.org/r/[email protected]
- ---
- 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>;
- + };
- + };
- + };
- +};
|