xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun#include "qcom-msm8974.dtsi"
3*4882a593Smuzhiyun#include "qcom-pm8841.dtsi"
4*4882a593Smuzhiyun#include "qcom-pm8941.dtsi"
5*4882a593Smuzhiyun
6*4882a593Smuzhiyun/ {
7*4882a593Smuzhiyun	model = "Qualcomm APQ8074 Dragonboard";
8*4882a593Smuzhiyun	compatible = "qcom,apq8074-dragonboard", "qcom,apq8074";
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun	aliases {
11*4882a593Smuzhiyun		serial0 = &blsp1_uart2;
12*4882a593Smuzhiyun		usid0 = &pm8941_0;
13*4882a593Smuzhiyun		usid4 = &pm8841_0;
14*4882a593Smuzhiyun	};
15*4882a593Smuzhiyun
16*4882a593Smuzhiyun	chosen {
17*4882a593Smuzhiyun		stdout-path = "serial0:115200n8";
18*4882a593Smuzhiyun	};
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun	soc {
21*4882a593Smuzhiyun		serial@f991e000 {
22*4882a593Smuzhiyun			status = "ok";
23*4882a593Smuzhiyun		};
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun		sdhci@f9824900 {
26*4882a593Smuzhiyun			bus-width = <8>;
27*4882a593Smuzhiyun			non-removable;
28*4882a593Smuzhiyun			status = "ok";
29*4882a593Smuzhiyun
30*4882a593Smuzhiyun			vmmc-supply = <&pm8941_l20>;
31*4882a593Smuzhiyun			vqmmc-supply = <&pm8941_s3>;
32*4882a593Smuzhiyun
33*4882a593Smuzhiyun			pinctrl-names = "default";
34*4882a593Smuzhiyun			pinctrl-0 = <&sdhc1_pin_a>;
35*4882a593Smuzhiyun		};
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun		sdhci@f98a4900 {
38*4882a593Smuzhiyun			cd-gpios = <&msmgpio 62 0x1>;
39*4882a593Smuzhiyun			pinctrl-names = "default";
40*4882a593Smuzhiyun			pinctrl-0 = <&sdhc2_pin_a>, <&sdhc2_cd_pin_a>;
41*4882a593Smuzhiyun			bus-width = <4>;
42*4882a593Smuzhiyun			status = "ok";
43*4882a593Smuzhiyun
44*4882a593Smuzhiyun			vmmc-supply = <&pm8941_l21>;
45*4882a593Smuzhiyun			vqmmc-supply = <&pm8941_l13>;
46*4882a593Smuzhiyun		};
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun		usb@f9a55000 {
49*4882a593Smuzhiyun			status = "ok";
50*4882a593Smuzhiyun			phys = <&usb_hs2_phy>;
51*4882a593Smuzhiyun			phy-select = <&tcsr 0xb000 1>;
52*4882a593Smuzhiyun			extcon = <&smbb>, <&usb_id>;
53*4882a593Smuzhiyun			vbus-supply = <&chg_otg>;
54*4882a593Smuzhiyun			hnp-disable;
55*4882a593Smuzhiyun			srp-disable;
56*4882a593Smuzhiyun			adp-disable;
57*4882a593Smuzhiyun			ulpi {
58*4882a593Smuzhiyun				phy@b {
59*4882a593Smuzhiyun					status = "ok";
60*4882a593Smuzhiyun					v3p3-supply = <&pm8941_l24>;
61*4882a593Smuzhiyun					v1p8-supply = <&pm8941_l6>;
62*4882a593Smuzhiyun					extcon = <&smbb>;
63*4882a593Smuzhiyun					qcom,init-seq = /bits/ 8 <0x1 0x63>;
64*4882a593Smuzhiyun				};
65*4882a593Smuzhiyun			};
66*4882a593Smuzhiyun		};
67*4882a593Smuzhiyun
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun		pinctrl@fd510000 {
70*4882a593Smuzhiyun			i2c11_pins: i2c11 {
71*4882a593Smuzhiyun				mux {
72*4882a593Smuzhiyun					pins = "gpio83", "gpio84";
73*4882a593Smuzhiyun					function = "blsp_i2c11";
74*4882a593Smuzhiyun				};
75*4882a593Smuzhiyun			};
76*4882a593Smuzhiyun
77*4882a593Smuzhiyun			spi8_default: spi8_default {
78*4882a593Smuzhiyun				mosi {
79*4882a593Smuzhiyun					pins = "gpio45";
80*4882a593Smuzhiyun					function = "blsp_spi8";
81*4882a593Smuzhiyun				};
82*4882a593Smuzhiyun				miso {
83*4882a593Smuzhiyun					pins = "gpio46";
84*4882a593Smuzhiyun					function = "blsp_spi8";
85*4882a593Smuzhiyun				};
86*4882a593Smuzhiyun				cs {
87*4882a593Smuzhiyun					pins = "gpio47";
88*4882a593Smuzhiyun					function = "blsp_spi8";
89*4882a593Smuzhiyun				};
90*4882a593Smuzhiyun				clk {
91*4882a593Smuzhiyun					pins = "gpio48";
92*4882a593Smuzhiyun					function = "blsp_spi8";
93*4882a593Smuzhiyun				};
94*4882a593Smuzhiyun			};
95*4882a593Smuzhiyun
96*4882a593Smuzhiyun			sdhc1_pin_a: sdhc1-pin-active {
97*4882a593Smuzhiyun				clk {
98*4882a593Smuzhiyun					pins = "sdc1_clk";
99*4882a593Smuzhiyun					drive-strength = <16>;
100*4882a593Smuzhiyun					bias-disable;
101*4882a593Smuzhiyun				};
102*4882a593Smuzhiyun
103*4882a593Smuzhiyun				cmd-data {
104*4882a593Smuzhiyun					pins = "sdc1_cmd", "sdc1_data";
105*4882a593Smuzhiyun					drive-strength = <10>;
106*4882a593Smuzhiyun					bias-pull-up;
107*4882a593Smuzhiyun				};
108*4882a593Smuzhiyun			};
109*4882a593Smuzhiyun
110*4882a593Smuzhiyun			sdhc2_cd_pin_a: sdhc2-cd-pin-active {
111*4882a593Smuzhiyun				pins = "gpio62";
112*4882a593Smuzhiyun				function = "gpio";
113*4882a593Smuzhiyun
114*4882a593Smuzhiyun				drive-strength = <2>;
115*4882a593Smuzhiyun				bias-disable;
116*4882a593Smuzhiyun			};
117*4882a593Smuzhiyun
118*4882a593Smuzhiyun			sdhc2_pin_a: sdhc2-pin-active {
119*4882a593Smuzhiyun				clk {
120*4882a593Smuzhiyun					pins = "sdc2_clk";
121*4882a593Smuzhiyun					drive-strength = <10>;
122*4882a593Smuzhiyun					bias-disable;
123*4882a593Smuzhiyun				};
124*4882a593Smuzhiyun
125*4882a593Smuzhiyun				cmd-data {
126*4882a593Smuzhiyun					pins = "sdc2_cmd", "sdc2_data";
127*4882a593Smuzhiyun					drive-strength = <6>;
128*4882a593Smuzhiyun					bias-pull-up;
129*4882a593Smuzhiyun				};
130*4882a593Smuzhiyun			};
131*4882a593Smuzhiyun		};
132*4882a593Smuzhiyun
133*4882a593Smuzhiyun		i2c@f9967000 {
134*4882a593Smuzhiyun			status = "okay";
135*4882a593Smuzhiyun			clock-frequency = <200000>;
136*4882a593Smuzhiyun			pinctrl-0 = <&i2c11_pins>;
137*4882a593Smuzhiyun			pinctrl-names = "default";
138*4882a593Smuzhiyun
139*4882a593Smuzhiyun			eeprom: eeprom@52 {
140*4882a593Smuzhiyun				compatible = "atmel,24c128";
141*4882a593Smuzhiyun				reg = <0x52>;
142*4882a593Smuzhiyun				pagesize = <32>;
143*4882a593Smuzhiyun				read-only;
144*4882a593Smuzhiyun			};
145*4882a593Smuzhiyun		};
146*4882a593Smuzhiyun	};
147*4882a593Smuzhiyun
148*4882a593Smuzhiyun	smd {
149*4882a593Smuzhiyun		rpm {
150*4882a593Smuzhiyun			rpm_requests {
151*4882a593Smuzhiyun				pm8841-regulators {
152*4882a593Smuzhiyun					s1 {
153*4882a593Smuzhiyun						regulator-min-microvolt = <675000>;
154*4882a593Smuzhiyun						regulator-max-microvolt = <1050000>;
155*4882a593Smuzhiyun					};
156*4882a593Smuzhiyun
157*4882a593Smuzhiyun					s2 {
158*4882a593Smuzhiyun						regulator-min-microvolt = <500000>;
159*4882a593Smuzhiyun						regulator-max-microvolt = <1050000>;
160*4882a593Smuzhiyun					};
161*4882a593Smuzhiyun
162*4882a593Smuzhiyun					s3 {
163*4882a593Smuzhiyun						regulator-min-microvolt = <500000>;
164*4882a593Smuzhiyun						regulator-max-microvolt = <1050000>;
165*4882a593Smuzhiyun					};
166*4882a593Smuzhiyun
167*4882a593Smuzhiyun					s4 {
168*4882a593Smuzhiyun						regulator-min-microvolt = <500000>;
169*4882a593Smuzhiyun						regulator-max-microvolt = <1050000>;
170*4882a593Smuzhiyun					};
171*4882a593Smuzhiyun				};
172*4882a593Smuzhiyun
173*4882a593Smuzhiyun				pm8941-regulators {
174*4882a593Smuzhiyun					vdd_l1_l3-supply = <&pm8941_s1>;
175*4882a593Smuzhiyun					vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
176*4882a593Smuzhiyun					vdd_l4_l11-supply = <&pm8941_s1>;
177*4882a593Smuzhiyun					vdd_l5_l7-supply = <&pm8941_s2>;
178*4882a593Smuzhiyun					vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
179*4882a593Smuzhiyun					vin_5vs-supply = <&pm8941_5v>;
180*4882a593Smuzhiyun
181*4882a593Smuzhiyun					s1 {
182*4882a593Smuzhiyun						regulator-min-microvolt = <1300000>;
183*4882a593Smuzhiyun						regulator-max-microvolt = <1300000>;
184*4882a593Smuzhiyun						regulator-always-on;
185*4882a593Smuzhiyun						regulator-boot-on;
186*4882a593Smuzhiyun					};
187*4882a593Smuzhiyun
188*4882a593Smuzhiyun					s2 {
189*4882a593Smuzhiyun						regulator-min-microvolt = <2150000>;
190*4882a593Smuzhiyun						regulator-max-microvolt = <2150000>;
191*4882a593Smuzhiyun						regulator-boot-on;
192*4882a593Smuzhiyun					};
193*4882a593Smuzhiyun
194*4882a593Smuzhiyun					s3 {
195*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
196*4882a593Smuzhiyun						regulator-max-microvolt = <1800000>;
197*4882a593Smuzhiyun						regulator-always-on;
198*4882a593Smuzhiyun						regulator-boot-on;
199*4882a593Smuzhiyun					};
200*4882a593Smuzhiyun
201*4882a593Smuzhiyun					l1 {
202*4882a593Smuzhiyun						regulator-min-microvolt = <1225000>;
203*4882a593Smuzhiyun						regulator-max-microvolt = <1225000>;
204*4882a593Smuzhiyun
205*4882a593Smuzhiyun						regulator-always-on;
206*4882a593Smuzhiyun						regulator-boot-on;
207*4882a593Smuzhiyun					};
208*4882a593Smuzhiyun
209*4882a593Smuzhiyun					l2 {
210*4882a593Smuzhiyun						regulator-min-microvolt = <1200000>;
211*4882a593Smuzhiyun						regulator-max-microvolt = <1200000>;
212*4882a593Smuzhiyun					};
213*4882a593Smuzhiyun
214*4882a593Smuzhiyun					l3 {
215*4882a593Smuzhiyun						regulator-min-microvolt = <1225000>;
216*4882a593Smuzhiyun						regulator-max-microvolt = <1225000>;
217*4882a593Smuzhiyun					};
218*4882a593Smuzhiyun
219*4882a593Smuzhiyun					l4 {
220*4882a593Smuzhiyun						regulator-min-microvolt = <1225000>;
221*4882a593Smuzhiyun						regulator-max-microvolt = <1225000>;
222*4882a593Smuzhiyun					};
223*4882a593Smuzhiyun
224*4882a593Smuzhiyun					l5 {
225*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
226*4882a593Smuzhiyun						regulator-max-microvolt = <1800000>;
227*4882a593Smuzhiyun					};
228*4882a593Smuzhiyun
229*4882a593Smuzhiyun					l6 {
230*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
231*4882a593Smuzhiyun						regulator-max-microvolt = <1800000>;
232*4882a593Smuzhiyun
233*4882a593Smuzhiyun						regulator-boot-on;
234*4882a593Smuzhiyun					};
235*4882a593Smuzhiyun
236*4882a593Smuzhiyun					l7 {
237*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
238*4882a593Smuzhiyun						regulator-max-microvolt = <1800000>;
239*4882a593Smuzhiyun
240*4882a593Smuzhiyun						regulator-boot-on;
241*4882a593Smuzhiyun					};
242*4882a593Smuzhiyun
243*4882a593Smuzhiyun					l8 {
244*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
245*4882a593Smuzhiyun						regulator-max-microvolt = <1800000>;
246*4882a593Smuzhiyun					};
247*4882a593Smuzhiyun
248*4882a593Smuzhiyun					l9 {
249*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
250*4882a593Smuzhiyun						regulator-max-microvolt = <2950000>;
251*4882a593Smuzhiyun					};
252*4882a593Smuzhiyun
253*4882a593Smuzhiyun					l10 {
254*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
255*4882a593Smuzhiyun						regulator-max-microvolt = <1800000>;
256*4882a593Smuzhiyun						regulator-always-on;
257*4882a593Smuzhiyun					};
258*4882a593Smuzhiyun
259*4882a593Smuzhiyun					l11 {
260*4882a593Smuzhiyun						regulator-min-microvolt = <1300000>;
261*4882a593Smuzhiyun						regulator-max-microvolt = <1300000>;
262*4882a593Smuzhiyun					};
263*4882a593Smuzhiyun
264*4882a593Smuzhiyun					l12 {
265*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
266*4882a593Smuzhiyun						regulator-max-microvolt = <1800000>;
267*4882a593Smuzhiyun
268*4882a593Smuzhiyun						regulator-always-on;
269*4882a593Smuzhiyun						regulator-boot-on;
270*4882a593Smuzhiyun					};
271*4882a593Smuzhiyun
272*4882a593Smuzhiyun					l13 {
273*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
274*4882a593Smuzhiyun						regulator-max-microvolt = <2950000>;
275*4882a593Smuzhiyun
276*4882a593Smuzhiyun						regulator-boot-on;
277*4882a593Smuzhiyun					};
278*4882a593Smuzhiyun
279*4882a593Smuzhiyun					l14 {
280*4882a593Smuzhiyun						regulator-min-microvolt = <1800000>;
281*4882a593Smuzhiyun						regulator-max-microvolt = <1800000>;
282*4882a593Smuzhiyun					};
283*4882a593Smuzhiyun
284*4882a593Smuzhiyun					l15 {
285*4882a593Smuzhiyun						regulator-min-microvolt = <2050000>;
286*4882a593Smuzhiyun						regulator-max-microvolt = <2050000>;
287*4882a593Smuzhiyun					};
288*4882a593Smuzhiyun
289*4882a593Smuzhiyun					l16 {
290*4882a593Smuzhiyun						regulator-min-microvolt = <2700000>;
291*4882a593Smuzhiyun						regulator-max-microvolt = <2700000>;
292*4882a593Smuzhiyun					};
293*4882a593Smuzhiyun
294*4882a593Smuzhiyun					l17 {
295*4882a593Smuzhiyun						regulator-min-microvolt = <2700000>;
296*4882a593Smuzhiyun						regulator-max-microvolt = <2700000>;
297*4882a593Smuzhiyun					};
298*4882a593Smuzhiyun
299*4882a593Smuzhiyun					l18 {
300*4882a593Smuzhiyun						regulator-min-microvolt = <2850000>;
301*4882a593Smuzhiyun						regulator-max-microvolt = <2850000>;
302*4882a593Smuzhiyun					};
303*4882a593Smuzhiyun
304*4882a593Smuzhiyun					l19 {
305*4882a593Smuzhiyun						regulator-min-microvolt = <3300000>;
306*4882a593Smuzhiyun						regulator-max-microvolt = <3300000>;
307*4882a593Smuzhiyun						regulator-always-on;
308*4882a593Smuzhiyun					};
309*4882a593Smuzhiyun
310*4882a593Smuzhiyun					l20 {
311*4882a593Smuzhiyun						regulator-min-microvolt = <2950000>;
312*4882a593Smuzhiyun						regulator-max-microvolt = <2950000>;
313*4882a593Smuzhiyun
314*4882a593Smuzhiyun						regulator-allow-set-load;
315*4882a593Smuzhiyun						regulator-boot-on;
316*4882a593Smuzhiyun						regulator-system-load = <200000>;
317*4882a593Smuzhiyun					};
318*4882a593Smuzhiyun
319*4882a593Smuzhiyun					l21 {
320*4882a593Smuzhiyun						regulator-min-microvolt = <2950000>;
321*4882a593Smuzhiyun						regulator-max-microvolt = <2950000>;
322*4882a593Smuzhiyun
323*4882a593Smuzhiyun						regulator-boot-on;
324*4882a593Smuzhiyun					};
325*4882a593Smuzhiyun
326*4882a593Smuzhiyun					l22 {
327*4882a593Smuzhiyun						regulator-min-microvolt = <3000000>;
328*4882a593Smuzhiyun						regulator-max-microvolt = <3000000>;
329*4882a593Smuzhiyun					};
330*4882a593Smuzhiyun
331*4882a593Smuzhiyun					l23 {
332*4882a593Smuzhiyun						regulator-min-microvolt = <3000000>;
333*4882a593Smuzhiyun						regulator-max-microvolt = <3000000>;
334*4882a593Smuzhiyun					};
335*4882a593Smuzhiyun
336*4882a593Smuzhiyun					l24 {
337*4882a593Smuzhiyun						regulator-min-microvolt = <3075000>;
338*4882a593Smuzhiyun						regulator-max-microvolt = <3075000>;
339*4882a593Smuzhiyun
340*4882a593Smuzhiyun						regulator-boot-on;
341*4882a593Smuzhiyun					};
342*4882a593Smuzhiyun				};
343*4882a593Smuzhiyun			};
344*4882a593Smuzhiyun		};
345*4882a593Smuzhiyun	};
346*4882a593Smuzhiyun};
347