File Index
Files and directories
Sign in
FILE

pm8058.dtsi

File preview with syntax highlighting.

linux-6.19.14/arch/arm/boot/dts/qcom/pm8058.dtsi DEVICETREE
  1// SPDX-License-Identifier: GPL-2.0
  2
  3&ssbi {
  4	pm8058: pmic {
  5		compatible = "qcom,pm8058";
  6		#interrupt-cells = <2>;
  7		interrupt-controller;
  8		#address-cells = <1>;
  9		#size-cells = <0>;
 10
 11		pwrkey@1c {
 12			compatible = "qcom,pm8058-pwrkey";
 13			reg = <0x1c>;
 14			interrupts-extended = <&pm8058 50 IRQ_TYPE_EDGE_RISING>,
 15					      <&pm8058 51 IRQ_TYPE_EDGE_RISING>;
 16			debounce = <15625>;
 17			pull-up;
 18		};
 19
 20		pm8058_led48: led@48 {
 21			compatible = "qcom,pm8058-keypad-led";
 22			reg = <0x48>;
 23			status = "disabled";
 24		};
 25
 26		vibrator@4a {
 27			compatible = "qcom,pm8058-vib";
 28			reg = <0x4a>;
 29		};
 30
 31		pm8058_mpps: mpps@50 {
 32			compatible = "qcom,pm8058-mpp",
 33				     "qcom,ssbi-mpp";
 34			reg = <0x50>;
 35			gpio-controller;
 36			#gpio-cells = <2>;
 37			gpio-ranges = <&pm8058_mpps 0 0 12>;
 38			interrupt-controller;
 39			#interrupt-cells = <2>;
 40		};
 41
 42		pm8058_led131: led@131 {
 43			compatible = "qcom,pm8058-led";
 44			reg = <0x131>;
 45			status = "disabled";
 46		};
 47
 48		pm8058_led132: led@132 {
 49			compatible = "qcom,pm8058-led";
 50			reg = <0x132>;
 51			status = "disabled";
 52		};
 53
 54		pm8058_led133: led@133 {
 55			compatible = "qcom,pm8058-led";
 56			reg = <0x133>;
 57			status = "disabled";
 58		};
 59
 60		pm8058_keypad: keypad@148 {
 61			compatible = "qcom,pm8058-keypad";
 62			reg = <0x148>;
 63			interrupts-extended = <&pm8058 74 IRQ_TYPE_EDGE_RISING>,
 64					      <&pm8058 75 IRQ_TYPE_EDGE_RISING>;
 65			debounce = <15>;
 66			scan-delay = <32>;
 67			row-hold = <91500>;
 68		};
 69
 70		pm8058_gpio: gpio@150 {
 71			compatible = "qcom,pm8058-gpio",
 72				     "qcom,ssbi-gpio";
 73			reg = <0x150>;
 74			interrupt-controller;
 75			#interrupt-cells = <2>;
 76			gpio-controller;
 77			gpio-ranges = <&pm8058_gpio 0 0 44>;
 78			#gpio-cells = <2>;
 79		};
 80
 81		pm8058_xoadc: xoadc@197 {
 82			compatible = "qcom,pm8058-adc";
 83			reg = <0x197>;
 84			interrupts-extended = <&pm8058 76 IRQ_TYPE_EDGE_RISING>;
 85			#address-cells = <2>;
 86			#size-cells = <0>;
 87			#io-channel-cells = <2>;
 88
 89			vcoin: adc-channel@0 {
 90				reg = <0x00 0x00>;
 91			};
 92
 93			vbat: adc-channel@1 {
 94				reg = <0x00 0x01>;
 95			};
 96
 97			dcin: adc-channel@2 {
 98				reg = <0x00 0x02>;
 99			};
100
101			ichg: adc-channel@3 {
102				reg = <0x00 0x03>;
103			};
104
105			vph_pwr: adc-channel@4 {
106				reg = <0x00 0x04>;
107			};
108
109			usb_vbus: adc-channel@a {
110				reg = <0x00 0x0a>;
111			};
112
113			die_temp: adc-channel@b {
114				reg = <0x00 0x0b>;
115			};
116
117			ref_625mv: adc-channel@c {
118				reg = <0x00 0x0c>;
119			};
120
121			ref_1250mv: adc-channel@d {
122				reg = <0x00 0x0d>;
123			};
124
125			ref_325mv: adc-channel@e {
126				reg = <0x00 0x0e>;
127			};
128
129			ref_muxoff: adc-channel@f {
130				reg = <0x00 0x0f>;
131			};
132		};
133
134		rtc@1e8 {
135			compatible = "qcom,pm8058-rtc";
136			reg = <0x1e8>;
137			interrupts-extended = <&pm8058 39 IRQ_TYPE_EDGE_RISING>;
138			allow-set-time;
139		};
140	};
141};
142
143/ {
144	/*
145	 * These channels from the ADC are simply hardware monitors.
146	 * That is why the ADC is referred to as "HKADC" - HouseKeeping
147	 * ADC.
148	 */
149	iio-hwmon {
150		compatible = "iio-hwmon";
151		io-channels = <&pm8058_xoadc 0x00 0x01>, /* Battery */
152			      <&pm8058_xoadc 0x00 0x02>, /* DC in (charger) */
153			      <&pm8058_xoadc 0x00 0x04>, /* VPH the main system voltage */
154			      <&pm8058_xoadc 0x00 0x0b>, /* Die temperature */
155			      <&pm8058_xoadc 0x00 0x0c>, /* Reference voltage 1.25V */
156			      <&pm8058_xoadc 0x00 0x0d>, /* Reference voltage 0.625V */
157			      <&pm8058_xoadc 0x00 0x0e>; /* Reference voltage 0.325V */
158	};
159};
~/ Read-only file preview.