xref: /openbmc/linux/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1390883afSAngeloGioacchino Del Regno// SPDX-License-Identifier: BSD-3-Clause
2390883afSAngeloGioacchino Del Regno/*
3390883afSAngeloGioacchino Del Regno * Copyright (c) 2021, AngeloGioacchino Del Regno
4390883afSAngeloGioacchino Del Regno *                     <angelogioacchino.delregno@somainline.org>
5390883afSAngeloGioacchino Del Regno * Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org>
6390883afSAngeloGioacchino Del Regno */
7390883afSAngeloGioacchino Del Regno
85d393f14SKonrad Dybcio#include <dt-bindings/input/input.h>
95d393f14SKonrad Dybcio#include <dt-bindings/leds/common.h>
105d393f14SKonrad Dybcio#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
11390883afSAngeloGioacchino Del Regno#include "msm8998.dtsi"
12390883afSAngeloGioacchino Del Regno#include "pm8005.dtsi"
13390883afSAngeloGioacchino Del Regno#include "pm8998.dtsi"
14390883afSAngeloGioacchino Del Regno#include "pmi8998.dtsi"
15390883afSAngeloGioacchino Del Regno
16390883afSAngeloGioacchino Del Regno/ {
17390883afSAngeloGioacchino Del Regno	/* required for bootloader to select correct board */
18390883afSAngeloGioacchino Del Regno	qcom,msm-id = <0x124 0x20000>, <0x124 0x20001>; /* 8998v2, v2.1 */
19390883afSAngeloGioacchino Del Regno	qcom,board-id = <8 0>;
20390883afSAngeloGioacchino Del Regno
216cadaa14SAngeloGioacchino Del Regno	clocks {
226cadaa14SAngeloGioacchino Del Regno		div1_mclk: divclk1 {
236cadaa14SAngeloGioacchino Del Regno			compatible = "gpio-gate-clock";
24a9eaa479SKonrad Dybcio			pinctrl-0 = <&div_clk1>;
256cadaa14SAngeloGioacchino Del Regno			pinctrl-names = "default";
266cadaa14SAngeloGioacchino Del Regno			clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
276cadaa14SAngeloGioacchino Del Regno			#clock-cells = <0>;
28ea25d61bSMarijn Suijten			enable-gpios = <&pm8998_gpios 13 GPIO_ACTIVE_HIGH>;
296cadaa14SAngeloGioacchino Del Regno		};
306cadaa14SAngeloGioacchino Del Regno	};
316cadaa14SAngeloGioacchino Del Regno
32390883afSAngeloGioacchino Del Regno	board_vbat: vbat-regulator {
33390883afSAngeloGioacchino Del Regno		compatible = "regulator-fixed";
34390883afSAngeloGioacchino Del Regno		regulator-name = "VBAT";
35390883afSAngeloGioacchino Del Regno
36390883afSAngeloGioacchino Del Regno		regulator-min-microvolt = <4000000>;
37390883afSAngeloGioacchino Del Regno		regulator-max-microvolt = <4000000>;
38390883afSAngeloGioacchino Del Regno		regulator-always-on;
39390883afSAngeloGioacchino Del Regno		regulator-boot-on;
40390883afSAngeloGioacchino Del Regno	};
41390883afSAngeloGioacchino Del Regno
42a5fde059SAngeloGioacchino Del Regno	cam0_vdig_vreg: cam0-vdig {
43a5fde059SAngeloGioacchino Del Regno		compatible = "regulator-fixed";
44a5fde059SAngeloGioacchino Del Regno		regulator-name = "cam0_vdig";
45a5fde059SAngeloGioacchino Del Regno		startup-delay-us = <0>;
46a5fde059SAngeloGioacchino Del Regno		enable-active-high;
47a5fde059SAngeloGioacchino Del Regno		gpio = <&tlmm 21 GPIO_ACTIVE_HIGH>;
48a5fde059SAngeloGioacchino Del Regno		pinctrl-names = "default";
49a9eaa479SKonrad Dybcio		pinctrl-0 = <&main_cam_pwr_en>;
50a5fde059SAngeloGioacchino Del Regno	};
51a5fde059SAngeloGioacchino Del Regno
52a5fde059SAngeloGioacchino Del Regno	cam1_vdig_vreg: cam1-vdig {
53a5fde059SAngeloGioacchino Del Regno		compatible = "regulator-fixed";
54a5fde059SAngeloGioacchino Del Regno		regulator-name = "cam1_vdig";
55a5fde059SAngeloGioacchino Del Regno		startup-delay-us = <0>;
56a5fde059SAngeloGioacchino Del Regno		enable-active-high;
57a5fde059SAngeloGioacchino Del Regno		gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>;
58a5fde059SAngeloGioacchino Del Regno		pinctrl-names = "default";
59a9eaa479SKonrad Dybcio		pinctrl-0 = <&chat_cam_pwr_en>;
60a5fde059SAngeloGioacchino Del Regno		vin-supply = <&vreg_s3a_1p35>;
61a5fde059SAngeloGioacchino Del Regno	};
62a5fde059SAngeloGioacchino Del Regno
63a5fde059SAngeloGioacchino Del Regno	cam_vio_vreg: cam-vio-vreg {
64a5fde059SAngeloGioacchino Del Regno		compatible = "regulator-fixed";
65a5fde059SAngeloGioacchino Del Regno		regulator-name = "cam_vio_vreg";
66a5fde059SAngeloGioacchino Del Regno		startup-delay-us = <0>;
67a5fde059SAngeloGioacchino Del Regno		enable-active-high;
68ea25d61bSMarijn Suijten		gpio = <&pmi8998_gpios 1 GPIO_ACTIVE_HIGH>;
69a5fde059SAngeloGioacchino Del Regno		pinctrl-names = "default";
70a9eaa479SKonrad Dybcio		pinctrl-0 = <&main_cam_pwr_io_en>;
71a5fde059SAngeloGioacchino Del Regno		vin-supply = <&vreg_lvs1a_1p8>;
72a5fde059SAngeloGioacchino Del Regno	};
73a5fde059SAngeloGioacchino Del Regno
74ebe0932eSAngeloGioacchino Del Regno	touch_vddio_vreg: touch-vddio-vreg {
75ebe0932eSAngeloGioacchino Del Regno		compatible = "regulator-fixed";
76ebe0932eSAngeloGioacchino Del Regno		regulator-name = "touch_vddio_vreg";
77ebe0932eSAngeloGioacchino Del Regno		startup-delay-us = <10000>;
78ebe0932eSAngeloGioacchino Del Regno		gpio = <&tlmm 133 GPIO_ACTIVE_HIGH>;
79ebe0932eSAngeloGioacchino Del Regno		pinctrl-names = "default";
80ebe0932eSAngeloGioacchino Del Regno		pinctrl-0 = <&ts_vddio_en>;
81ebe0932eSAngeloGioacchino Del Regno	};
82ebe0932eSAngeloGioacchino Del Regno
83390883afSAngeloGioacchino Del Regno	vph_pwr: vph-pwr-regulator {
84390883afSAngeloGioacchino Del Regno		compatible = "regulator-fixed";
85390883afSAngeloGioacchino Del Regno		regulator-name = "vph_pwr";
86390883afSAngeloGioacchino Del Regno		regulator-always-on;
87390883afSAngeloGioacchino Del Regno		regulator-boot-on;
88390883afSAngeloGioacchino Del Regno	};
89390883afSAngeloGioacchino Del Regno
906dad36ebSKonrad Dybcio	extcon_usb: extcon-usb {
916dad36ebSKonrad Dybcio		compatible = "linux,extcon-usb-gpio";
92*f6485041SAlexander Stein		id-gpios = <&tlmm 38 GPIO_ACTIVE_HIGH>;
93*f6485041SAlexander Stein		vbus-gpios = <&tlmm 128 GPIO_ACTIVE_HIGH>;
946dad36ebSKonrad Dybcio		pinctrl-names = "default";
95a9eaa479SKonrad Dybcio		pinctrl-0 = <&cc_dir_default &usb_detect_en>;
966dad36ebSKonrad Dybcio	};
976dad36ebSKonrad Dybcio
98390883afSAngeloGioacchino Del Regno	gpio-keys {
99390883afSAngeloGioacchino Del Regno		compatible = "gpio-keys";
100390883afSAngeloGioacchino Del Regno		label = "Side buttons";
101390883afSAngeloGioacchino Del Regno		pinctrl-names = "default";
102a9eaa479SKonrad Dybcio		pinctrl-0 = <&vol_down_n &focus_n &snapshot_n>;
103b08f5cbdSKrzysztof Kozlowski		button-vol-down {
104390883afSAngeloGioacchino Del Regno			label = "Volume Down";
105ea25d61bSMarijn Suijten			gpios = <&pm8998_gpios 5 GPIO_ACTIVE_LOW>;
106390883afSAngeloGioacchino Del Regno			linux,input-type = <EV_KEY>;
107390883afSAngeloGioacchino Del Regno			linux,code = <KEY_VOLUMEDOWN>;
108ff348b7dSKrzysztof Kozlowski			wakeup-source;
109390883afSAngeloGioacchino Del Regno			debounce-interval = <15>;
110390883afSAngeloGioacchino Del Regno		};
111390883afSAngeloGioacchino Del Regno
112b08f5cbdSKrzysztof Kozlowski		button-camera-snapshot {
113390883afSAngeloGioacchino Del Regno			label = "Camera Snapshot";
114ea25d61bSMarijn Suijten			gpios = <&pm8998_gpios 7 GPIO_ACTIVE_LOW>;
115390883afSAngeloGioacchino Del Regno			linux,input-type = <EV_KEY>;
116390883afSAngeloGioacchino Del Regno			linux,code = <KEY_CAMERA>;
117390883afSAngeloGioacchino Del Regno			debounce-interval = <15>;
118390883afSAngeloGioacchino Del Regno		};
119390883afSAngeloGioacchino Del Regno
120b08f5cbdSKrzysztof Kozlowski		button-camera-focus {
121390883afSAngeloGioacchino Del Regno			label = "Camera Focus";
122ea25d61bSMarijn Suijten			gpios = <&pm8998_gpios 8 GPIO_ACTIVE_LOW>;
123390883afSAngeloGioacchino Del Regno			linux,input-type = <EV_KEY>;
124390883afSAngeloGioacchino Del Regno			linux,code = <KEY_CAMERA_FOCUS>;
125390883afSAngeloGioacchino Del Regno			debounce-interval = <15>;
126390883afSAngeloGioacchino Del Regno		};
127390883afSAngeloGioacchino Del Regno	};
128390883afSAngeloGioacchino Del Regno
129390883afSAngeloGioacchino Del Regno	gpio-hall-sensor {
130390883afSAngeloGioacchino Del Regno		compatible = "gpio-keys";
131390883afSAngeloGioacchino Del Regno		label = "Hall sensors";
132390883afSAngeloGioacchino Del Regno		pinctrl-names = "default";
133a9eaa479SKonrad Dybcio		pinctrl-0 = <&acc_cover_open>;
134390883afSAngeloGioacchino Del Regno
135b08f5cbdSKrzysztof Kozlowski		event-hall-sensor0 {
136390883afSAngeloGioacchino Del Regno			label = "Cover Hall Sensor";
137390883afSAngeloGioacchino Del Regno			gpios = <&tlmm 124 GPIO_ACTIVE_LOW>;
138390883afSAngeloGioacchino Del Regno			linux,input-type = <EV_SW>;
139390883afSAngeloGioacchino Del Regno			linux,code = <SW_LID>;
140ff348b7dSKrzysztof Kozlowski			wakeup-source;
141390883afSAngeloGioacchino Del Regno			debounce-interval = <30>;
142390883afSAngeloGioacchino Del Regno		};
143390883afSAngeloGioacchino Del Regno	};
144390883afSAngeloGioacchino Del Regno
145390883afSAngeloGioacchino Del Regno	reserved-memory {
146390883afSAngeloGioacchino Del Regno		#address-cells = <2>;
147390883afSAngeloGioacchino Del Regno		#size-cells = <2>;
148390883afSAngeloGioacchino Del Regno		ranges;
149390883afSAngeloGioacchino Del Regno
150390883afSAngeloGioacchino Del Regno		hyp_mem: memory@85800000 {
151390883afSAngeloGioacchino Del Regno			reg = <0x0 0x85800000 0x0 0x3700000>;
152390883afSAngeloGioacchino Del Regno			no-map;
153390883afSAngeloGioacchino Del Regno		};
154390883afSAngeloGioacchino Del Regno
155390883afSAngeloGioacchino Del Regno		cont_splash_mem: memory@9d400000 {
156390883afSAngeloGioacchino Del Regno			reg = <0x0 0x9d400000 0x0 0x2400000>;
157390883afSAngeloGioacchino Del Regno			no-map;
158390883afSAngeloGioacchino Del Regno		};
159390883afSAngeloGioacchino Del Regno
160390883afSAngeloGioacchino Del Regno		zap_shader_region: memory@f6400000 {
161390883afSAngeloGioacchino Del Regno			compatible = "shared-dma-pool";
162390883afSAngeloGioacchino Del Regno			reg = <0x0 0xf6400000 0x0 0x2000>;
163390883afSAngeloGioacchino Del Regno			no-map;
164390883afSAngeloGioacchino Del Regno		};
165390883afSAngeloGioacchino Del Regno
166390883afSAngeloGioacchino Del Regno		adsp_region: memory@fe000000 {
167390883afSAngeloGioacchino Del Regno			reg = <0x0 0xfe000000 0x0 0x800000>;
168390883afSAngeloGioacchino Del Regno			no-map;
169390883afSAngeloGioacchino Del Regno		};
170390883afSAngeloGioacchino Del Regno
171390883afSAngeloGioacchino Del Regno		qseecom_region: memory@fe800000 {
172390883afSAngeloGioacchino Del Regno			reg = <0x0 0xfe800000 0x0 0x1400000>;
173390883afSAngeloGioacchino Del Regno			no-map;
174390883afSAngeloGioacchino Del Regno		};
175390883afSAngeloGioacchino Del Regno
176390883afSAngeloGioacchino Del Regno		ramoops@ffc00000 {
177390883afSAngeloGioacchino Del Regno			compatible = "ramoops";
178390883afSAngeloGioacchino Del Regno			reg = <0x0 0xffc00000 0x0 0x100000>;
179390883afSAngeloGioacchino Del Regno			record-size = <0x10000>;
180390883afSAngeloGioacchino Del Regno			console-size = <0x60000>;
181390883afSAngeloGioacchino Del Regno			ftrace-size = <0x10000>;
182390883afSAngeloGioacchino Del Regno			pmsg-size = <0x20000>;
183390883afSAngeloGioacchino Del Regno			ecc-size = <16>;
184390883afSAngeloGioacchino Del Regno		};
185390883afSAngeloGioacchino Del Regno	};
1864de9700dSAngeloGioacchino Del Regno
1874de9700dSAngeloGioacchino Del Regno	vibrator {
1884de9700dSAngeloGioacchino Del Regno		compatible = "gpio-vibrator";
189ea25d61bSMarijn Suijten		enable-gpios = <&pmi8998_gpios 5 GPIO_ACTIVE_HIGH>;
1904de9700dSAngeloGioacchino Del Regno		pinctrl-names = "default";
191a9eaa479SKonrad Dybcio		pinctrl-0 = <&vib_ldo_en>;
1924de9700dSAngeloGioacchino Del Regno	};
193390883afSAngeloGioacchino Del Regno};
194390883afSAngeloGioacchino Del Regno
195ebe0932eSAngeloGioacchino Del Regno&blsp1_i2c5 {
196ebe0932eSAngeloGioacchino Del Regno	status = "okay";
197ebe0932eSAngeloGioacchino Del Regno	clock-frequency = <355000>;
198ebe0932eSAngeloGioacchino Del Regno
199ebe0932eSAngeloGioacchino Del Regno	touchscreen@2c {
200ebe0932eSAngeloGioacchino Del Regno		compatible = "syna,rmi4-i2c";
201ebe0932eSAngeloGioacchino Del Regno		reg = <0x2c>;
202ebe0932eSAngeloGioacchino Del Regno		#address-cells = <1>;
203ebe0932eSAngeloGioacchino Del Regno		#size-cells = <0>;
204ebe0932eSAngeloGioacchino Del Regno		interrupts-extended = <&tlmm 125 IRQ_TYPE_EDGE_FALLING>;
205ebe0932eSAngeloGioacchino Del Regno
206ebe0932eSAngeloGioacchino Del Regno		pinctrl-names = "default";
207ebe0932eSAngeloGioacchino Del Regno		pinctrl-0 = <&ts_int_n>;
208ebe0932eSAngeloGioacchino Del Regno
209ebe0932eSAngeloGioacchino Del Regno		vdd-supply = <&vreg_l28_3p0>;
210ebe0932eSAngeloGioacchino Del Regno		vio-supply = <&touch_vddio_vreg>;
211ebe0932eSAngeloGioacchino Del Regno
212ebe0932eSAngeloGioacchino Del Regno		syna,reset-delay-ms = <220>;
213ebe0932eSAngeloGioacchino Del Regno		syna,startup-delay-ms = <1000>;
214ebe0932eSAngeloGioacchino Del Regno
215ebe0932eSAngeloGioacchino Del Regno		rmi4-f01@1 {
216ebe0932eSAngeloGioacchino Del Regno			reg = <0x01>;
217ebe0932eSAngeloGioacchino Del Regno			syna,nosleep-mode = <1>;
218ebe0932eSAngeloGioacchino Del Regno		};
219ebe0932eSAngeloGioacchino Del Regno
220ebe0932eSAngeloGioacchino Del Regno		rmi4-f11@11 {
221ebe0932eSAngeloGioacchino Del Regno			reg = <0x11>;
222ebe0932eSAngeloGioacchino Del Regno			syna,sensor-type = <1>;
223ebe0932eSAngeloGioacchino Del Regno		};
224ebe0932eSAngeloGioacchino Del Regno	};
225ebe0932eSAngeloGioacchino Del Regno};
226ebe0932eSAngeloGioacchino Del Regno
227ebe0932eSAngeloGioacchino Del Regno&blsp1_i2c5_sleep {
228ebe0932eSAngeloGioacchino Del Regno	bias-disable;
229ebe0932eSAngeloGioacchino Del Regno};
230ebe0932eSAngeloGioacchino Del Regno
23158ba4efaSAngeloGioacchino Del Regno&blsp1_uart3 {
23258ba4efaSAngeloGioacchino Del Regno	status = "okay";
23358ba4efaSAngeloGioacchino Del Regno
23458ba4efaSAngeloGioacchino Del Regno	bluetooth {
23558ba4efaSAngeloGioacchino Del Regno		compatible = "qcom,wcn3990-bt";
23658ba4efaSAngeloGioacchino Del Regno
23758ba4efaSAngeloGioacchino Del Regno		vddio-supply = <&vreg_s4a_1p8>;
23858ba4efaSAngeloGioacchino Del Regno		vddxo-supply = <&vreg_l7a_1p8>;
23958ba4efaSAngeloGioacchino Del Regno		vddrf-supply = <&vreg_l17a_1p3>;
24058ba4efaSAngeloGioacchino Del Regno		vddch0-supply = <&vreg_l25a_3p3>;
24158ba4efaSAngeloGioacchino Del Regno		max-speed = <3200000>;
24258ba4efaSAngeloGioacchino Del Regno
24358ba4efaSAngeloGioacchino Del Regno		clocks = <&rpmcc RPM_SMD_RF_CLK2_PIN>;
24458ba4efaSAngeloGioacchino Del Regno	};
24558ba4efaSAngeloGioacchino Del Regno};
24658ba4efaSAngeloGioacchino Del Regno
247390883afSAngeloGioacchino Del Regno&blsp2_uart1 {
248390883afSAngeloGioacchino Del Regno	status = "okay";
249390883afSAngeloGioacchino Del Regno};
250390883afSAngeloGioacchino Del Regno
251642f13c3SMarkuss Broks&blsp2_i2c2 {
252642f13c3SMarkuss Broks	status = "okay";
253642f13c3SMarkuss Broks
254642f13c3SMarkuss Broks	proximity@29 {
255642f13c3SMarkuss Broks		compatible = "st,vl53l0x";
256642f13c3SMarkuss Broks		reg = <0x29>;
257642f13c3SMarkuss Broks
258642f13c3SMarkuss Broks		interrupt-parent = <&tlmm>;
259642f13c3SMarkuss Broks		interrupts = <22 IRQ_TYPE_EDGE_FALLING>;
260642f13c3SMarkuss Broks
261642f13c3SMarkuss Broks		reset-gpios = <&tlmm 27 GPIO_ACTIVE_LOW>;
262642f13c3SMarkuss Broks		vdd-supply = <&cam_vio_vreg>;
263642f13c3SMarkuss Broks
264642f13c3SMarkuss Broks		pinctrl-names = "default";
265a9eaa479SKonrad Dybcio		pinctrl-0 = <&tof_int_n &tof_reset>;
266642f13c3SMarkuss Broks	};
267642f13c3SMarkuss Broks};
268642f13c3SMarkuss Broks
26967372ee2SAngeloGioacchino Del Regno&ibb {
27067372ee2SAngeloGioacchino Del Regno	regulator-min-microamp = <800000>;
27167372ee2SAngeloGioacchino Del Regno	regulator-max-microamp = <800000>;
27267372ee2SAngeloGioacchino Del Regno	regulator-enable-ramp-delay = <200>;
27367372ee2SAngeloGioacchino Del Regno	regulator-over-current-protection;
27467372ee2SAngeloGioacchino Del Regno	regulator-pull-down;
27567372ee2SAngeloGioacchino Del Regno	regulator-ramp-delay = <1>;
27667372ee2SAngeloGioacchino Del Regno	regulator-settling-time-up-us = <600>;
27767372ee2SAngeloGioacchino Del Regno	regulator-settling-time-down-us = <1000>;
27867372ee2SAngeloGioacchino Del Regno	regulator-soft-start;
27967372ee2SAngeloGioacchino Del Regno	qcom,discharge-resistor-kohms = <300>;
28067372ee2SAngeloGioacchino Del Regno};
28167372ee2SAngeloGioacchino Del Regno
28267372ee2SAngeloGioacchino Del Regno&lab {
28367372ee2SAngeloGioacchino Del Regno	regulator-min-microamp = <200000>;
28467372ee2SAngeloGioacchino Del Regno	regulator-max-microamp = <200000>;
28567372ee2SAngeloGioacchino Del Regno	regulator-enable-ramp-delay = <500>;
28667372ee2SAngeloGioacchino Del Regno	regulator-over-current-protection;
28767372ee2SAngeloGioacchino Del Regno	regulator-pull-down;
28867372ee2SAngeloGioacchino Del Regno	regulator-ramp-delay = <1>;
28967372ee2SAngeloGioacchino Del Regno	regulator-settling-time-up-us = <50000>;
29067372ee2SAngeloGioacchino Del Regno	regulator-settling-time-down-us = <3000>;
29167372ee2SAngeloGioacchino Del Regno	regulator-soft-start;
29267372ee2SAngeloGioacchino Del Regno};
29367372ee2SAngeloGioacchino Del Regno
294900007f2SKonrad Dybcio&pm8005_gpios {
295900007f2SKonrad Dybcio	gpio-line-names = "NC", /* GPIO_1 */
296900007f2SKonrad Dybcio			  "NC",
297900007f2SKonrad Dybcio			  "SLB",
298900007f2SKonrad Dybcio			  "OPTION_1_PM8005";
299900007f2SKonrad Dybcio};
300900007f2SKonrad Dybcio
301b448501cSKonrad Dybcio&pm8005_regulators {
302390883afSAngeloGioacchino Del Regno	/* VDD_GFX supply */
303390883afSAngeloGioacchino Del Regno	pm8005_s1: s1 {
304390883afSAngeloGioacchino Del Regno		regulator-min-microvolt = <524000>;
305390883afSAngeloGioacchino Del Regno		regulator-max-microvolt = <1088000>;
306390883afSAngeloGioacchino Del Regno		regulator-enable-ramp-delay = <500>;
307b448501cSKonrad Dybcio		/* Hack until we rig up the gpu consumer */
308390883afSAngeloGioacchino Del Regno		regulator-always-on;
309390883afSAngeloGioacchino Del Regno	};
310390883afSAngeloGioacchino Del Regno};
311390883afSAngeloGioacchino Del Regno
312ea25d61bSMarijn Suijten&pm8998_gpios {
313900007f2SKonrad Dybcio	gpio-line-names = "UIM_BATT_ALARM", /* GPIO_1 */
314900007f2SKonrad Dybcio			  "NC",
315900007f2SKonrad Dybcio			  "WLAN_SW_CTRL (DISALLOWED)",
316900007f2SKonrad Dybcio			  "SSC_PWR_EN",
317900007f2SKonrad Dybcio			  "VOL_DOWN_N",
318900007f2SKonrad Dybcio			  "VOL_UP_N",
319900007f2SKonrad Dybcio			  "SNAPSHOT_N",
320900007f2SKonrad Dybcio			  "FOCUS_N",
321900007f2SKonrad Dybcio			  "FLASH_THERM",
322900007f2SKonrad Dybcio			  "", /* GPIO_10 */
323900007f2SKonrad Dybcio			  "",
324900007f2SKonrad Dybcio			  "",
325900007f2SKonrad Dybcio			  "DIV_CLK1",
326900007f2SKonrad Dybcio			  "NC",
327900007f2SKonrad Dybcio			  "NC (DISALLOWED)",
328900007f2SKonrad Dybcio			  "DIV_CLK3",
329900007f2SKonrad Dybcio			  "NC",
330900007f2SKonrad Dybcio			  "NC",
331900007f2SKonrad Dybcio			  "NC",
332900007f2SKonrad Dybcio			  "NC (DISALLOWED)", /* GPIO_20 */
333900007f2SKonrad Dybcio			  "NFC_CLK_REQ",
334900007f2SKonrad Dybcio			  "NC (DISALLOWED)",
335900007f2SKonrad Dybcio			  "WCSS_PWR_REQ",
336900007f2SKonrad Dybcio			  "OPTION_1 (DISALLOWED)",
337900007f2SKonrad Dybcio			  "OPTION_2 (DISALLOWED)",
338900007f2SKonrad Dybcio			  "PM_SLB (DISALLOWED)";
339900007f2SKonrad Dybcio
340a9eaa479SKonrad Dybcio	vol_down_n: vol-down-n-state {
341390883afSAngeloGioacchino Del Regno		pins = "gpio5";
342390883afSAngeloGioacchino Del Regno		function = PMIC_GPIO_FUNC_NORMAL;
343390883afSAngeloGioacchino Del Regno		bias-pull-up;
344390883afSAngeloGioacchino Del Regno		input-enable;
345390883afSAngeloGioacchino Del Regno		qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
346390883afSAngeloGioacchino Del Regno	};
347390883afSAngeloGioacchino Del Regno
348a9eaa479SKonrad Dybcio	focus_n: focus-n-state {
349390883afSAngeloGioacchino Del Regno		pins = "gpio7";
350390883afSAngeloGioacchino Del Regno		function = PMIC_GPIO_FUNC_NORMAL;
351390883afSAngeloGioacchino Del Regno		bias-pull-up;
352390883afSAngeloGioacchino Del Regno		input-enable;
353390883afSAngeloGioacchino Del Regno		qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
354390883afSAngeloGioacchino Del Regno	};
355390883afSAngeloGioacchino Del Regno
356a9eaa479SKonrad Dybcio	snapshot_n: snapshot-n-state {
357390883afSAngeloGioacchino Del Regno		pins = "gpio8";
358390883afSAngeloGioacchino Del Regno		function = PMIC_GPIO_FUNC_NORMAL;
359390883afSAngeloGioacchino Del Regno		bias-pull-up;
360390883afSAngeloGioacchino Del Regno		input-enable;
361390883afSAngeloGioacchino Del Regno		qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
362390883afSAngeloGioacchino Del Regno	};
3636cadaa14SAngeloGioacchino Del Regno
364a9eaa479SKonrad Dybcio	div_clk1: div-clk1-state {
3656cadaa14SAngeloGioacchino Del Regno		pins = "gpio13";
3666cadaa14SAngeloGioacchino Del Regno		function = "func2";
3676cadaa14SAngeloGioacchino Del Regno		power-source = <0>;
3686cadaa14SAngeloGioacchino Del Regno	};
369390883afSAngeloGioacchino Del Regno};
370390883afSAngeloGioacchino Del Regno
371ea25d61bSMarijn Suijten&pmi8998_gpios {
372900007f2SKonrad Dybcio	gpio-line-names = "MAIN_CAM_PWR_IO_EN", /* GPIO_1 */
373900007f2SKonrad Dybcio			  "NC",
374900007f2SKonrad Dybcio			  "NC",
375900007f2SKonrad Dybcio			  "TYPEC_UUSB_SEL",
376900007f2SKonrad Dybcio			  "VIB_LDO_EN",
377900007f2SKonrad Dybcio			  "NC",
378900007f2SKonrad Dybcio			  "DISPLAY_TYPE_SEL",
379900007f2SKonrad Dybcio			  "NC",
380900007f2SKonrad Dybcio			  "NC",
381900007f2SKonrad Dybcio			  "NC", /* GPIO_10 */
382900007f2SKonrad Dybcio			  "NC",
383900007f2SKonrad Dybcio			  "DIV_CLK3",
384900007f2SKonrad Dybcio			  "SPMI_I2C_SEL",
385900007f2SKonrad Dybcio			  "NC";
386900007f2SKonrad Dybcio
387a9eaa479SKonrad Dybcio	main_cam_pwr_io_en: main-cam-pwr-io-en-state {
388a5fde059SAngeloGioacchino Del Regno		pins = "gpio1";
389a5fde059SAngeloGioacchino Del Regno		function = PMIC_GPIO_FUNC_NORMAL;
390a5fde059SAngeloGioacchino Del Regno		bias-disable;
391a5fde059SAngeloGioacchino Del Regno		drive-push-pull;
392a5fde059SAngeloGioacchino Del Regno		output-low;
393a5fde059SAngeloGioacchino Del Regno		qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
394a5fde059SAngeloGioacchino Del Regno		power-source = <1>;
395a5fde059SAngeloGioacchino Del Regno	};
396a5fde059SAngeloGioacchino Del Regno
397a9eaa479SKonrad Dybcio	vib_ldo_en: vib-ldo-en-state {
3984de9700dSAngeloGioacchino Del Regno		pins = "gpio5";
3994de9700dSAngeloGioacchino Del Regno		function = PMIC_GPIO_FUNC_NORMAL;
4004de9700dSAngeloGioacchino Del Regno		bias-disable;
4014de9700dSAngeloGioacchino Del Regno		drive-push-pull;
4024de9700dSAngeloGioacchino Del Regno		output-low;
4034de9700dSAngeloGioacchino Del Regno		qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
4044de9700dSAngeloGioacchino Del Regno		power-source = <0>;
4054de9700dSAngeloGioacchino Del Regno	};
4064de9700dSAngeloGioacchino Del Regno};
4074de9700dSAngeloGioacchino Del Regno
4084c881ab7SDzmitry Sankouski&pm8998_resin {
409390883afSAngeloGioacchino Del Regno	linux,code = <KEY_VOLUMEUP>;
4104c881ab7SDzmitry Sankouski	status = "okay";
411390883afSAngeloGioacchino Del Regno};
412390883afSAngeloGioacchino Del Regno
413390883afSAngeloGioacchino Del Regno&qusb2phy {
414390883afSAngeloGioacchino Del Regno	status = "okay";
415390883afSAngeloGioacchino Del Regno
416390883afSAngeloGioacchino Del Regno	vdda-pll-supply = <&vreg_l12a_1p8>;
417390883afSAngeloGioacchino Del Regno	vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
418390883afSAngeloGioacchino Del Regno};
419390883afSAngeloGioacchino Del Regno
420390883afSAngeloGioacchino Del Regno&rpm_requests {
421372698e8SKrzysztof Kozlowski	regulators-0 {
422390883afSAngeloGioacchino Del Regno		compatible = "qcom,rpm-pm8998-regulators";
423390883afSAngeloGioacchino Del Regno
424390883afSAngeloGioacchino Del Regno		vdd_s1-supply = <&vph_pwr>;
425390883afSAngeloGioacchino Del Regno		vdd_s2-supply = <&vph_pwr>;
426390883afSAngeloGioacchino Del Regno		vdd_s3-supply = <&vph_pwr>;
427390883afSAngeloGioacchino Del Regno		vdd_s4-supply = <&vph_pwr>;
428390883afSAngeloGioacchino Del Regno		vdd_s5-supply = <&vph_pwr>;
429390883afSAngeloGioacchino Del Regno		vdd_s6-supply = <&vph_pwr>;
430390883afSAngeloGioacchino Del Regno		vdd_s7-supply = <&vph_pwr>;
431390883afSAngeloGioacchino Del Regno		vdd_s8-supply = <&vph_pwr>;
432390883afSAngeloGioacchino Del Regno		vdd_s9-supply = <&vph_pwr>;
433390883afSAngeloGioacchino Del Regno		vdd_s10-supply = <&vph_pwr>;
434390883afSAngeloGioacchino Del Regno		vdd_s11-supply = <&vph_pwr>;
435390883afSAngeloGioacchino Del Regno		vdd_s12-supply = <&vph_pwr>;
436390883afSAngeloGioacchino Del Regno		vdd_s13-supply = <&vph_pwr>;
437390883afSAngeloGioacchino Del Regno		vdd_l1_l27-supply = <&vreg_s7a_1p025>;
438390883afSAngeloGioacchino Del Regno		vdd_l2_l8_l17-supply = <&vreg_s3a_1p35>;
439390883afSAngeloGioacchino Del Regno		vdd_l3_l11-supply = <&vreg_s7a_1p025>;
440390883afSAngeloGioacchino Del Regno		vdd_l4_l5-supply = <&vreg_s7a_1p025>;
441390883afSAngeloGioacchino Del Regno		vdd_l6-supply = <&vreg_s5a_2p04>;
442390883afSAngeloGioacchino Del Regno		vdd_l7_l12_l14_l15-supply = <&vreg_s5a_2p04>;
443390883afSAngeloGioacchino Del Regno		vdd_l9-supply = <&vreg_bob>;
444390883afSAngeloGioacchino Del Regno		vdd_l10_l23_l25-supply = <&vreg_bob>;
445390883afSAngeloGioacchino Del Regno		vdd_l13_l19_l21-supply = <&vreg_bob>;
446390883afSAngeloGioacchino Del Regno		vdd_l16_l28-supply = <&vreg_bob>;
447390883afSAngeloGioacchino Del Regno		vdd_l18_l22-supply = <&vreg_bob>;
448390883afSAngeloGioacchino Del Regno		vdd_l20_l24-supply = <&vreg_bob>;
449390883afSAngeloGioacchino Del Regno		vdd_l26-supply = <&vreg_s3a_1p35>;
450390883afSAngeloGioacchino Del Regno		vdd_lvs1_lvs2-supply = <&vreg_s4a_1p8>;
451390883afSAngeloGioacchino Del Regno
452390883afSAngeloGioacchino Del Regno		vreg_s3a_1p35: s3 {
453390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1352000>;
454390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1352000>;
455390883afSAngeloGioacchino Del Regno		};
456732479bdSKonrad Dybcio
457390883afSAngeloGioacchino Del Regno		vreg_s4a_1p8: s4 {
458390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1800000>;
459390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1800000>;
460390883afSAngeloGioacchino Del Regno			regulator-system-load = <100000>;
461390883afSAngeloGioacchino Del Regno			regulator-allow-set-load;
462390883afSAngeloGioacchino Del Regno		};
463732479bdSKonrad Dybcio
464390883afSAngeloGioacchino Del Regno		vreg_s5a_2p04: s5 {
465390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1904000>;
466390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <2032000>;
467390883afSAngeloGioacchino Del Regno		};
468732479bdSKonrad Dybcio
469390883afSAngeloGioacchino Del Regno		vreg_s7a_1p025: s7 {
470390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <900000>;
471390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1028000>;
472390883afSAngeloGioacchino Del Regno		};
473732479bdSKonrad Dybcio
474390883afSAngeloGioacchino Del Regno		vreg_l1a_0p875: l1 {
475390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <880000>;
476390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <880000>;
477390883afSAngeloGioacchino Del Regno			regulator-system-load = <73400>;
478390883afSAngeloGioacchino Del Regno			regulator-allow-set-load;
479390883afSAngeloGioacchino Del Regno		};
480732479bdSKonrad Dybcio
481390883afSAngeloGioacchino Del Regno		vreg_l2a_1p2: l2 {
482390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1200000>;
483390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1200000>;
484390883afSAngeloGioacchino Del Regno			regulator-system-load = <12560>;
485390883afSAngeloGioacchino Del Regno			regulator-allow-set-load;
486390883afSAngeloGioacchino Del Regno		};
487732479bdSKonrad Dybcio
488390883afSAngeloGioacchino Del Regno		vreg_l3a_1p0: l3 {
489390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1000000>;
490390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1000000>;
491390883afSAngeloGioacchino Del Regno		};
492732479bdSKonrad Dybcio
493390883afSAngeloGioacchino Del Regno		vreg_l5a_0p8: l5 {
494390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <800000>;
495390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <800000>;
496390883afSAngeloGioacchino Del Regno		};
497732479bdSKonrad Dybcio
498390883afSAngeloGioacchino Del Regno		vreg_l6a_1p8: l6 {
499390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1800000>;
500390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1800000>;
501390883afSAngeloGioacchino Del Regno		};
502732479bdSKonrad Dybcio
503390883afSAngeloGioacchino Del Regno		vreg_l7a_1p8: l7 {
504390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1800000>;
505390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1800000>;
506390883afSAngeloGioacchino Del Regno		};
507732479bdSKonrad Dybcio
508390883afSAngeloGioacchino Del Regno		vreg_l8a_1p2: l8 {
509390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1200000>;
510390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1200000>;
511390883afSAngeloGioacchino Del Regno		};
512732479bdSKonrad Dybcio
513390883afSAngeloGioacchino Del Regno		vreg_l9a_1p8: l9 {
514390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1808000>;
515390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <2960000>;
516390883afSAngeloGioacchino Del Regno		};
517732479bdSKonrad Dybcio
518390883afSAngeloGioacchino Del Regno		vreg_l10a_1p8: l10 {
519390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1808000>;
520390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <2960000>;
521390883afSAngeloGioacchino Del Regno		};
522732479bdSKonrad Dybcio
523390883afSAngeloGioacchino Del Regno		vreg_l11a_1p0: l11 {
524390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1000000>;
525390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1000000>;
526390883afSAngeloGioacchino Del Regno		};
527732479bdSKonrad Dybcio
528390883afSAngeloGioacchino Del Regno		vreg_l12a_1p8: l12 {
529390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1800000>;
530390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1800000>;
531390883afSAngeloGioacchino Del Regno		};
532732479bdSKonrad Dybcio
533390883afSAngeloGioacchino Del Regno		vreg_l13a_2p95: l13 {
534390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1808000>;
535390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <2960000>;
536390883afSAngeloGioacchino Del Regno			regulator-allow-set-load;
537390883afSAngeloGioacchino Del Regno		};
538732479bdSKonrad Dybcio
539390883afSAngeloGioacchino Del Regno		vreg_l14a_1p85: l14 {
540390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1848000>;
541390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1856000>;
542390883afSAngeloGioacchino Del Regno			regulator-system-load = <32000>;
543390883afSAngeloGioacchino Del Regno			regulator-allow-set-load;
544390883afSAngeloGioacchino Del Regno		};
545732479bdSKonrad Dybcio
546390883afSAngeloGioacchino Del Regno		vreg_l15a_1p8: l15 {
547390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1800000>;
548390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1800000>;
549390883afSAngeloGioacchino Del Regno		};
550732479bdSKonrad Dybcio
551390883afSAngeloGioacchino Del Regno		vreg_l16a_2p7: l16 {
552390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <2704000>;
553390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <2704000>;
554390883afSAngeloGioacchino Del Regno		};
555732479bdSKonrad Dybcio
556390883afSAngeloGioacchino Del Regno		vreg_l17a_1p3: l17 {
557390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1304000>;
558390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1304000>;
559390883afSAngeloGioacchino Del Regno		};
560732479bdSKonrad Dybcio
561390883afSAngeloGioacchino Del Regno		vreg_l18a_2p85: l18 { };
562732479bdSKonrad Dybcio
563390883afSAngeloGioacchino Del Regno		vreg_l19a_2p7: l19 {
564390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <2696000>;
565390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <2704000>;
566390883afSAngeloGioacchino Del Regno		};
567732479bdSKonrad Dybcio
568390883afSAngeloGioacchino Del Regno		vreg_l20a_2p95: l20 {
569390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <2960000>;
570390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <2960000>;
571390883afSAngeloGioacchino Del Regno			regulator-system-load = <10000>;
572390883afSAngeloGioacchino Del Regno			regulator-allow-set-load;
573390883afSAngeloGioacchino Del Regno		};
574732479bdSKonrad Dybcio
575390883afSAngeloGioacchino Del Regno		vreg_l21a_2p95: l21 {
576390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <2960000>;
577390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <2960000>;
578390883afSAngeloGioacchino Del Regno			regulator-system-load = <800000>;
579390883afSAngeloGioacchino Del Regno			regulator-allow-set-load;
580390883afSAngeloGioacchino Del Regno		};
581732479bdSKonrad Dybcio
582390883afSAngeloGioacchino Del Regno		vreg_l22a_2p85: l22 { };
583732479bdSKonrad Dybcio
584390883afSAngeloGioacchino Del Regno		vreg_l23a_3p3: l23 {
585390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <3312000>;
586390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <3312000>;
587390883afSAngeloGioacchino Del Regno		};
588732479bdSKonrad Dybcio
589390883afSAngeloGioacchino Del Regno		vreg_l24a_3p075: l24 {
590390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <3088000>;
591390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <3088000>;
592390883afSAngeloGioacchino Del Regno		};
593732479bdSKonrad Dybcio
594390883afSAngeloGioacchino Del Regno		vreg_l25a_3p3: l25 {
595390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <3104000>;
596390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <3312000>;
597390883afSAngeloGioacchino Del Regno		};
598732479bdSKonrad Dybcio
599390883afSAngeloGioacchino Del Regno		vreg_l26a_1p2: l26 {
600390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <1200000>;
601390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <1200000>;
602390883afSAngeloGioacchino Del Regno			regulator-allow-set-load;
603390883afSAngeloGioacchino Del Regno		};
604732479bdSKonrad Dybcio
605390883afSAngeloGioacchino Del Regno		vreg_l28_3p0: l28 {
606390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <3000000>;
607390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <3000000>;
608390883afSAngeloGioacchino Del Regno		};
609732479bdSKonrad Dybcio
610390883afSAngeloGioacchino Del Regno		vreg_lvs1a_1p8: lvs1 { };
611732479bdSKonrad Dybcio
612390883afSAngeloGioacchino Del Regno		vreg_lvs2a_1p8: lvs2 { };
613390883afSAngeloGioacchino Del Regno	};
614390883afSAngeloGioacchino Del Regno
615372698e8SKrzysztof Kozlowski	regulators-1 {
616390883afSAngeloGioacchino Del Regno		compatible = "qcom,rpm-pmi8998-regulators";
617390883afSAngeloGioacchino Del Regno
618390883afSAngeloGioacchino Del Regno		vdd_bob-supply = <&vph_pwr>;
619390883afSAngeloGioacchino Del Regno
620390883afSAngeloGioacchino Del Regno		vreg_bob: bob {
621390883afSAngeloGioacchino Del Regno			regulator-min-microvolt = <3312000>;
622390883afSAngeloGioacchino Del Regno			regulator-max-microvolt = <3600000>;
623390883afSAngeloGioacchino Del Regno		};
624390883afSAngeloGioacchino Del Regno	};
625390883afSAngeloGioacchino Del Regno};
626390883afSAngeloGioacchino Del Regno
627390883afSAngeloGioacchino Del Regno&sdhc2 {
628390883afSAngeloGioacchino Del Regno	status = "okay";
629390883afSAngeloGioacchino Del Regno	cd-gpios = <&tlmm 95 GPIO_ACTIVE_HIGH>;
630390883afSAngeloGioacchino Del Regno
631390883afSAngeloGioacchino Del Regno	vmmc-supply = <&vreg_l21a_2p95>;
632390883afSAngeloGioacchino Del Regno	vqmmc-supply = <&vreg_l13a_2p95>;
633390883afSAngeloGioacchino Del Regno
634390883afSAngeloGioacchino Del Regno	pinctrl-names = "default", "sleep";
63512541f68SKonrad Dybcio	pinctrl-0 = <&sdc2_on &sdc2_cd>;
63612541f68SKonrad Dybcio	pinctrl-1 = <&sdc2_off &sdc2_cd>;
637390883afSAngeloGioacchino Del Regno};
638390883afSAngeloGioacchino Del Regno
639390883afSAngeloGioacchino Del Regno&tlmm {
640390883afSAngeloGioacchino Del Regno	gpio-reserved-ranges = <0 4>, <81 4>;
641900007f2SKonrad Dybcio	gpio-line-names = "", /* GPIO_0 */
642900007f2SKonrad Dybcio			  "",
643900007f2SKonrad Dybcio			  "",
644900007f2SKonrad Dybcio			  "",
645900007f2SKonrad Dybcio			  "DEBUG_UART_TX",
646900007f2SKonrad Dybcio			  "DEBUG_UART_RX",
647900007f2SKonrad Dybcio			  "CAMSENSOR_I2C_SDA",
648900007f2SKonrad Dybcio			  "CAMSENSOR_I2C_SCL",
649900007f2SKonrad Dybcio			  "NC",
650900007f2SKonrad Dybcio			  "NC",
651900007f2SKonrad Dybcio			  "MDP_VSYNC_P", /* GPIO_10 */
652900007f2SKonrad Dybcio			  "RGBC_IR_INT",
653900007f2SKonrad Dybcio			  "NFC_VEN",
654900007f2SKonrad Dybcio			  "CAM_MCLK0",
655900007f2SKonrad Dybcio			  "CAM_MCLK1",
656900007f2SKonrad Dybcio			  "NC",
657900007f2SKonrad Dybcio			  "NC",
658900007f2SKonrad Dybcio			  "CCI_I2C_SDA0",
659900007f2SKonrad Dybcio			  "CCI_I2C_SCL0",
660900007f2SKonrad Dybcio			  "CCI_I2C_SDA1",
661900007f2SKonrad Dybcio			  "CCI_I2C_SCL1", /* GPIO_20 */
662900007f2SKonrad Dybcio			  "MAIN_CAM_PWR_EN",
663900007f2SKonrad Dybcio			  "TOF_INT_N",
664900007f2SKonrad Dybcio			  "NC",
665900007f2SKonrad Dybcio			  "NC",
666900007f2SKonrad Dybcio			  "CHAT_CAM_PWR_EN",
667900007f2SKonrad Dybcio			  "NC",
668900007f2SKonrad Dybcio			  "TOF_RESET_N",
669900007f2SKonrad Dybcio			  "CAM2_RSTN",
670900007f2SKonrad Dybcio			  "NC",
671900007f2SKonrad Dybcio			  "CAM1_RSTN", /* GPIO_30 */
672900007f2SKonrad Dybcio			  "NC",
673900007f2SKonrad Dybcio			  "NC",
674900007f2SKonrad Dybcio			  "NC",
675900007f2SKonrad Dybcio			  "NC",
676900007f2SKonrad Dybcio			  "NC",
677900007f2SKonrad Dybcio			  "NC",
678900007f2SKonrad Dybcio			  "NC",
679900007f2SKonrad Dybcio			  "CC_DIR",
680900007f2SKonrad Dybcio			  "UIM2_DETECT_EN",
681900007f2SKonrad Dybcio			  "FP_RESET_N", /* GPIO_40 */
682900007f2SKonrad Dybcio			  "NC",
683900007f2SKonrad Dybcio			  "NC",
684900007f2SKonrad Dybcio			  "NC",
685900007f2SKonrad Dybcio			  "NC",
686900007f2SKonrad Dybcio			  "BT_HCI_UART_TXD",
687900007f2SKonrad Dybcio			  "BT_HCI_UART_RXD",
688900007f2SKonrad Dybcio			  "BT_HCI_UART_CTS_N",
689900007f2SKonrad Dybcio			  "BT_HCI_UART_RFR_N",
690900007f2SKonrad Dybcio			  "NC",
691900007f2SKonrad Dybcio			  "NC", /* GPIO_50 */
692900007f2SKonrad Dybcio			  "NC",
693900007f2SKonrad Dybcio			  "NC",
694900007f2SKonrad Dybcio			  "CODEC_INT2_N",
695900007f2SKonrad Dybcio			  "CODEC_INT1_N",
696900007f2SKonrad Dybcio			  "APPS_I2C_SDA",
697900007f2SKonrad Dybcio			  "APPS_I2C_SCL",
698900007f2SKonrad Dybcio			  "FORCED_USB_BOOT",
699900007f2SKonrad Dybcio			  "NC",
700900007f2SKonrad Dybcio			  "NC",
701900007f2SKonrad Dybcio			  "NC", /* GPIO_60 */
702900007f2SKonrad Dybcio			  "NC",
703900007f2SKonrad Dybcio			  "NC",
704900007f2SKonrad Dybcio			  "TRAY2_DET_DS",
705900007f2SKonrad Dybcio			  "CODEC_RST_N",
706900007f2SKonrad Dybcio			  "WSA_L_EN",
707900007f2SKonrad Dybcio			  "WSA_R_EN",
708900007f2SKonrad Dybcio			  "NC",
709900007f2SKonrad Dybcio			  "NC",
710900007f2SKonrad Dybcio			  "NC",
711900007f2SKonrad Dybcio			  "LPASS_SLIMBUS_CLK", /* GPIO_70 */
712900007f2SKonrad Dybcio			  "LPASS_SLIMBUS_DATA0",
713900007f2SKonrad Dybcio			  "LPASS_SLIMBUS_DATA1",
714900007f2SKonrad Dybcio			  "BT_FM_SLIMBUS_DATA",
715900007f2SKonrad Dybcio			  "BT_FM_SLIMBUS_CLK",
716900007f2SKonrad Dybcio			  "NC",
717900007f2SKonrad Dybcio			  "RF_LCD_ID_EN",
718900007f2SKonrad Dybcio			  "NC",
719900007f2SKonrad Dybcio			  "NC",
720900007f2SKonrad Dybcio			  "NC",
721900007f2SKonrad Dybcio			  "NC", /* GPIO_80 */
722900007f2SKonrad Dybcio			  "SW_SERVICE",
723900007f2SKonrad Dybcio			  "TX_GTR_THRES_IN",
724900007f2SKonrad Dybcio			  "HW_ID0",
725900007f2SKonrad Dybcio			  "HW_ID1",
726900007f2SKonrad Dybcio			  "NC",
727900007f2SKonrad Dybcio			  "NC",
728900007f2SKonrad Dybcio			  "TS_I2C_SDA",
729900007f2SKonrad Dybcio			  "TS_I2C_SCL",
730900007f2SKonrad Dybcio			  "TS_RESET_N",
731900007f2SKonrad Dybcio			  "NC", /* GPIO_90 */
732900007f2SKonrad Dybcio			  "NC",
733900007f2SKonrad Dybcio			  "NFC_IRQ",
734900007f2SKonrad Dybcio			  "NFC_DWLD_EN",
735900007f2SKonrad Dybcio			  "DISP_RESET_N",
736900007f2SKonrad Dybcio			  "TRAY2_DET",
737900007f2SKonrad Dybcio			  "CAM_SOF",
738900007f2SKonrad Dybcio			  "RFFE6_CLK",
739900007f2SKonrad Dybcio			  "RFFE6_DATA",
740900007f2SKonrad Dybcio			  "DEBUG_GPIO0",
741900007f2SKonrad Dybcio			  "DEBUG_GPIO1", /* GPIO_100 */
742900007f2SKonrad Dybcio			  "GRFC4",
743900007f2SKonrad Dybcio			  "NC",
744900007f2SKonrad Dybcio			  "NC",
745900007f2SKonrad Dybcio			  "RSVD",
746900007f2SKonrad Dybcio			  "UIM2_DATA",
747900007f2SKonrad Dybcio			  "UIM2_CLK",
748900007f2SKonrad Dybcio			  "UIM2_RESET",
749900007f2SKonrad Dybcio			  "UIM2_PRESENT",
750900007f2SKonrad Dybcio			  "UIM1_DATA",
751900007f2SKonrad Dybcio			  "UIM1_CLK", /* GPIO_110 */
752900007f2SKonrad Dybcio			  "UIM1_RST",
753900007f2SKonrad Dybcio			  "UIM1_PRESENT",
754900007f2SKonrad Dybcio			  "UIM_BATT_ALARM",
755900007f2SKonrad Dybcio			  "RSVD",
756900007f2SKonrad Dybcio			  "NC",
757900007f2SKonrad Dybcio			  "NC",
758900007f2SKonrad Dybcio			  "ACCEL_INT",
759900007f2SKonrad Dybcio			  "GYRO_INT",
760900007f2SKonrad Dybcio			  "COMPASS_INT",
761900007f2SKonrad Dybcio			  "ALS_PROX_INT_N", /* GPIO_120 */
762900007f2SKonrad Dybcio			  "FP_INT_N",
763900007f2SKonrad Dybcio			  "NC",
764900007f2SKonrad Dybcio			  "BAROMETER_INT",
765900007f2SKonrad Dybcio			  "ACC_COVER_OPEN",
766900007f2SKonrad Dybcio			  "TS_INT_N",
767900007f2SKonrad Dybcio			  "NC",
768900007f2SKonrad Dybcio			  "NC",
769900007f2SKonrad Dybcio			  "USB_DETECT_EN",
770900007f2SKonrad Dybcio			  "NC",
771900007f2SKonrad Dybcio			  "QLINK_REQUEST", /* GPIO_130 */
772900007f2SKonrad Dybcio			  "QLINK_ENABLE",
773900007f2SKonrad Dybcio			  "NC",
774900007f2SKonrad Dybcio			  "NC",
775900007f2SKonrad Dybcio			  "WMSS_RESET_N",
776900007f2SKonrad Dybcio			  "PA_INDICATOR_OR",
777900007f2SKonrad Dybcio			  "NC",
778900007f2SKonrad Dybcio			  "RFFE3_DATA",
779900007f2SKonrad Dybcio			  "RFFE3_CLK",
780900007f2SKonrad Dybcio			  "RFFE4_DATA",
781900007f2SKonrad Dybcio			  "RFFE4_CLK", /* GPIO_140 */
782900007f2SKonrad Dybcio			  "RFFE5_DATA",
783900007f2SKonrad Dybcio			  "RFFE5_CLK",
784900007f2SKonrad Dybcio			  "GNSS_EN",
785900007f2SKonrad Dybcio			  "MSS_LTE_COXM_TXD",
786900007f2SKonrad Dybcio			  "MSS_LTE_COXM_RXD",
787900007f2SKonrad Dybcio			  "RFFE2_DATA",
788900007f2SKonrad Dybcio			  "RFFE2_CLK",
789900007f2SKonrad Dybcio			  "RFFE1_DATA",
790900007f2SKonrad Dybcio			  "RFFE1_CLK";
791390883afSAngeloGioacchino Del Regno
792a9eaa479SKonrad Dybcio	mdp_vsync_p: mdp-vsync-p-state {
793390883afSAngeloGioacchino Del Regno		pins = "gpio10";
794390883afSAngeloGioacchino Del Regno		function = "mdp_vsync_a";
795390883afSAngeloGioacchino Del Regno		drive-strength = <2>;
796390883afSAngeloGioacchino Del Regno		bias-pull-down;
797390883afSAngeloGioacchino Del Regno	};
798390883afSAngeloGioacchino Del Regno
799ed9ba9e9SKrzysztof Kozlowski	nfc_ven: nfc-ven-state {
800390883afSAngeloGioacchino Del Regno		pins = "gpio12";
801390883afSAngeloGioacchino Del Regno		function = "gpio";
802390883afSAngeloGioacchino Del Regno		bias-disable;
803390883afSAngeloGioacchino Del Regno		drive-strength = <2>;
804390883afSAngeloGioacchino Del Regno		output-low;
805390883afSAngeloGioacchino Del Regno	};
806390883afSAngeloGioacchino Del Regno
807a9eaa479SKonrad Dybcio	cam_mclk0_active: cam-mclk0-active-state {
808390883afSAngeloGioacchino Del Regno		pins = "gpio13";
809390883afSAngeloGioacchino Del Regno		function = "cam_mclk";
810390883afSAngeloGioacchino Del Regno		drive-strength = <2>;
811390883afSAngeloGioacchino Del Regno		bias-disable;
812390883afSAngeloGioacchino Del Regno	};
813390883afSAngeloGioacchino Del Regno
814a9eaa479SKonrad Dybcio	cam_mclk1_active: cam-mclk1-active-state {
815390883afSAngeloGioacchino Del Regno		pins = "gpio14";
816390883afSAngeloGioacchino Del Regno		function = "cam_mclk";
817390883afSAngeloGioacchino Del Regno		drive-strength = <2>;
818390883afSAngeloGioacchino Del Regno		bias-disable;
819390883afSAngeloGioacchino Del Regno	};
820390883afSAngeloGioacchino Del Regno
821ed9ba9e9SKrzysztof Kozlowski	cci0_default: cci0-default-state {
822390883afSAngeloGioacchino Del Regno		pins = "gpio18", "gpio19";
823390883afSAngeloGioacchino Del Regno		function = "cci_i2c";
824390883afSAngeloGioacchino Del Regno		bias-disable;
825390883afSAngeloGioacchino Del Regno		drive-strength = <2>;
826390883afSAngeloGioacchino Del Regno	};
827390883afSAngeloGioacchino Del Regno
828ed9ba9e9SKrzysztof Kozlowski	cci1_default: cci1-default-state {
829390883afSAngeloGioacchino Del Regno		pins = "gpio19", "gpio20";
830390883afSAngeloGioacchino Del Regno		function = "cci_i2c";
831390883afSAngeloGioacchino Del Regno		bias-disable;
832390883afSAngeloGioacchino Del Regno		drive-strength = <2>;
833390883afSAngeloGioacchino Del Regno	};
834390883afSAngeloGioacchino Del Regno
835a9eaa479SKonrad Dybcio	main_cam_pwr_en: main-cam-pwr-en-default-state {
836a5fde059SAngeloGioacchino Del Regno		pins = "gpio21";
837a5fde059SAngeloGioacchino Del Regno		function = "gpio";
838a5fde059SAngeloGioacchino Del Regno		bias-disable;
839a5fde059SAngeloGioacchino Del Regno		drive-strength = <2>;
840a5fde059SAngeloGioacchino Del Regno	};
841a5fde059SAngeloGioacchino Del Regno
842a9eaa479SKonrad Dybcio	tof_int_n: tof-int-n-state {
843642f13c3SMarkuss Broks		pins = "gpio22";
844642f13c3SMarkuss Broks		function = "gpio";
845642f13c3SMarkuss Broks		bias-pull-up;
846642f13c3SMarkuss Broks		drive-strength = <2>;
847642f13c3SMarkuss Broks	};
848642f13c3SMarkuss Broks
849a9eaa479SKonrad Dybcio	chat_cam_pwr_en: chat-cam-pwr-en-default-state {
850a5fde059SAngeloGioacchino Del Regno		pins = "gpio25";
851a5fde059SAngeloGioacchino Del Regno		function = "gpio";
852a5fde059SAngeloGioacchino Del Regno		bias-disable;
853a5fde059SAngeloGioacchino Del Regno		drive-strength = <2>;
854a5fde059SAngeloGioacchino Del Regno	};
855a5fde059SAngeloGioacchino Del Regno
856ed9ba9e9SKrzysztof Kozlowski	tof_reset: tof-reset-state {
857642f13c3SMarkuss Broks		pins = "gpio27";
858642f13c3SMarkuss Broks		function = "gpio";
859642f13c3SMarkuss Broks		bias-disable;
860642f13c3SMarkuss Broks		drive-strength = <2>;
861642f13c3SMarkuss Broks	};
862642f13c3SMarkuss Broks
863a9eaa479SKonrad Dybcio	cc_dir_default: cc-dir-active-state {
864a9eaa479SKonrad Dybcio		pins = "gpio38";
865a9eaa479SKonrad Dybcio		function = "gpio";
866a9eaa479SKonrad Dybcio		bias-disable;
867a9eaa479SKonrad Dybcio		drive-strength = <16>;
868a9eaa479SKonrad Dybcio	};
869a9eaa479SKonrad Dybcio
870a9eaa479SKonrad Dybcio	acc_cover_open: acc-cover-open-state {
871390883afSAngeloGioacchino Del Regno		pins = "gpio124";
872390883afSAngeloGioacchino Del Regno		function = "gpio";
873390883afSAngeloGioacchino Del Regno		bias-disable;
874390883afSAngeloGioacchino Del Regno		drive-strength = <2>;
875390883afSAngeloGioacchino Del Regno	};
876ebe0932eSAngeloGioacchino Del Regno
877ed9ba9e9SKrzysztof Kozlowski	ts_int_n: ts-int-n-state {
878ebe0932eSAngeloGioacchino Del Regno		pins = "gpio125";
879ebe0932eSAngeloGioacchino Del Regno		function = "gpio";
880ebe0932eSAngeloGioacchino Del Regno		drive-strength = <8>;
881ebe0932eSAngeloGioacchino Del Regno		bias-pull-up;
882ebe0932eSAngeloGioacchino Del Regno	};
883ebe0932eSAngeloGioacchino Del Regno
884a9eaa479SKonrad Dybcio	usb_detect_en: usb-detect-en-active-state {
8856dad36ebSKonrad Dybcio		pins = "gpio128";
8866dad36ebSKonrad Dybcio		function = "gpio";
8876dad36ebSKonrad Dybcio		bias-disable;
8886dad36ebSKonrad Dybcio		drive-strength = <2>;
8896dad36ebSKonrad Dybcio		output-low;
8906dad36ebSKonrad Dybcio	};
8916dad36ebSKonrad Dybcio
892ed9ba9e9SKrzysztof Kozlowski	ts_vddio_en: ts-vddio-en-default-state {
893ebe0932eSAngeloGioacchino Del Regno		pins = "gpio133";
894ebe0932eSAngeloGioacchino Del Regno		function = "gpio";
895ebe0932eSAngeloGioacchino Del Regno		bias-disable;
896ebe0932eSAngeloGioacchino Del Regno		drive-strength = <2>;
897ebe0932eSAngeloGioacchino Del Regno		output-low;
898ebe0932eSAngeloGioacchino Del Regno	};
899390883afSAngeloGioacchino Del Regno};
900390883afSAngeloGioacchino Del Regno
901390883afSAngeloGioacchino Del Regno/*
902390883afSAngeloGioacchino Del Regno * WARNING:
903390883afSAngeloGioacchino Del Regno * Disable UFS until card quirks are in to avoid unrecoverable hard-brick
904390883afSAngeloGioacchino Del Regno * that would happen as soon as the UFS card gets probed as, without the
905390883afSAngeloGioacchino Del Regno * required quirks, the bootloader will be erased right after card probe.
906390883afSAngeloGioacchino Del Regno */
907390883afSAngeloGioacchino Del Regno&ufshc {
908390883afSAngeloGioacchino Del Regno	status = "disabled";
909390883afSAngeloGioacchino Del Regno};
910390883afSAngeloGioacchino Del Regno
911390883afSAngeloGioacchino Del Regno&ufsphy {
912390883afSAngeloGioacchino Del Regno	status = "disabled";
913390883afSAngeloGioacchino Del Regno};
914390883afSAngeloGioacchino Del Regno
915390883afSAngeloGioacchino Del Regno&usb3 {
916390883afSAngeloGioacchino Del Regno	status = "okay";
917390883afSAngeloGioacchino Del Regno};
918390883afSAngeloGioacchino Del Regno
919390883afSAngeloGioacchino Del Regno&usb3_dwc3 {
920390883afSAngeloGioacchino Del Regno	/* Force to peripheral until we have Type-C hooked up */
921390883afSAngeloGioacchino Del Regno	dr_mode = "peripheral";
9226dad36ebSKonrad Dybcio	extcon = <&extcon_usb>;
923390883afSAngeloGioacchino Del Regno};
924390883afSAngeloGioacchino Del Regno
925390883afSAngeloGioacchino Del Regno&usb3phy {
926390883afSAngeloGioacchino Del Regno	status = "okay";
927390883afSAngeloGioacchino Del Regno
928390883afSAngeloGioacchino Del Regno	vdda-phy-supply = <&vreg_l1a_0p875>;
929390883afSAngeloGioacchino Del Regno	vdda-pll-supply = <&vreg_l2a_1p2>;
930390883afSAngeloGioacchino Del Regno};
931