File Index
Files and directories
Sign in
FILE

pms405.dtsi

File preview with syntax highlighting.

linux-6.19.14/arch/arm64/boot/dts/qcom/pms405.dtsi DEVICETREE
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Copyright (c) 2018, Linaro Limited
  4 */
  5
  6#include <dt-bindings/spmi/spmi.h>
  7#include <dt-bindings/input/linux-event-codes.h>
  8#include <dt-bindings/iio/qcom,spmi-vadc.h>
  9#include <dt-bindings/thermal/thermal.h>
 10
 11/ {
 12	thermal-zones {
 13		pms405-thermal {
 14			polling-delay-passive = <250>;
 15
 16			thermal-sensors = <&pms405_temp>;
 17
 18			trips {
 19				pms405_alert0: pms405-alert0 {
 20					temperature = <105000>;
 21					hysteresis = <2000>;
 22					type = "passive";
 23				};
 24				pms405_crit: pms405-crit {
 25					temperature = <125000>;
 26					hysteresis = <2000>;
 27					type = "critical";
 28				};
 29			};
 30		};
 31	};
 32};
 33
 34&spmi_bus {
 35	pms405_0: pms405@0 {
 36		compatible = "qcom,pms405", "qcom,spmi-pmic";
 37		reg = <0x0 SPMI_USID>;
 38		#address-cells = <1>;
 39		#size-cells = <0>;
 40
 41		pms405_gpios: gpio@c000 {
 42			compatible = "qcom,pms405-gpio", "qcom,spmi-gpio";
 43			reg = <0xc000>;
 44			gpio-controller;
 45			gpio-ranges = <&pms405_gpios 0 0 12>;
 46			#gpio-cells = <2>;
 47			interrupt-controller;
 48			#interrupt-cells = <2>;
 49		};
 50
 51		pon@800 {
 52			compatible = "qcom,pms405-pon";
 53			reg = <0x0800>;
 54			mode-bootloader = <0x2>;
 55			mode-recovery = <0x1>;
 56
 57			pwrkey {
 58				compatible = "qcom,pm8941-pwrkey";
 59				interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
 60				debounce = <15625>;
 61				bias-pull-up;
 62				linux,code = <KEY_POWER>;
 63			};
 64		};
 65
 66		pms405_temp: temp-alarm@2400 {
 67			compatible = "qcom,spmi-temp-alarm";
 68			reg = <0x2400>;
 69			interrupts = <0 0x24 0 IRQ_TYPE_EDGE_RISING>;
 70			io-channels = <&pms405_adc ADC5_DIE_TEMP>;
 71			io-channel-names = "thermal";
 72			#thermal-sensor-cells = <0>;
 73		};
 74
 75		pms405_adc: adc@3100 {
 76			compatible = "qcom,pms405-adc", "qcom,spmi-adc-rev2";
 77			reg = <0x3100>;
 78			interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
 79			#address-cells = <1>;
 80			#size-cells = <0>;
 81			#io-channel-cells = <1>;
 82
 83			channel@0 {
 84				reg = <ADC5_REF_GND>;
 85				qcom,pre-scaling = <1 1>;
 86				label = "ref_gnd";
 87			};
 88
 89			channel@1 {
 90				reg = <ADC5_1P25VREF>;
 91				qcom,pre-scaling = <1 1>;
 92				label = "vref_1p25";
 93			};
 94
 95			channel@131 {
 96				reg = <ADC5_VPH_PWR>;
 97				qcom,pre-scaling = <1 3>;
 98				label = "vph_pwr";
 99			};
100
101			channel@6 {
102				reg = <ADC5_DIE_TEMP>;
103				qcom,pre-scaling = <1 1>;
104				label = "die_temp";
105			};
106
107			channel@77 {
108				reg = <ADC5_AMUX_THM1_100K_PU>;
109				qcom,ratiometric;
110				qcom,hw-settle-time = <200>;
111				qcom,pre-scaling = <1 1>;
112				label = "pa_therm1";
113			};
114
115			channel@79 {
116				reg = <ADC5_AMUX_THM3_100K_PU>;
117				qcom,ratiometric;
118				qcom,hw-settle-time = <200>;
119				qcom,pre-scaling = <1 1>;
120				label = "pa_therm3";
121			};
122
123			channel@76 {
124				reg = <ADC5_XO_THERM_100K_PU>;
125				qcom,ratiometric;
126				qcom,hw-settle-time = <200>;
127				qcom,pre-scaling = <1 1>;
128				label = "xo_therm";
129			};
130		};
131
132		rtc@6000 {
133			compatible = "qcom,pm8941-rtc";
134			reg = <0x6000>, <0x6100>;
135			reg-names = "rtc", "alarm";
136			interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
137		};
138	};
139
140	pms405_1: pms405@1 {
141		compatible = "qcom,pms405", "qcom,spmi-pmic";
142		reg = <0x1 SPMI_USID>;
143
144		pms405_spmi_regulators: regulators {
145			compatible = "qcom,pms405-regulators";
146		};
147	};
148};
~/ Read-only file preview.