GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / arm / boot / dts / qcom-apq8074-dragonboard.dts
1 // SPDX-License-Identifier: GPL-2.0
2 #include <dt-bindings/gpio/gpio.h>
3 #include "qcom-msm8974.dtsi"
4 #include "qcom-pm8841.dtsi"
5 #include "qcom-pm8941.dtsi"
6
7 / {
8         model = "Qualcomm APQ8074 Dragonboard";
9         compatible = "qcom,apq8074-dragonboard", "qcom,apq8074";
10
11         aliases {
12                 serial0 = &blsp1_uart2;
13                 usid0 = &pm8941_0;
14                 usid4 = &pm8841_0;
15         };
16
17         chosen {
18                 stdout-path = "serial0:115200n8";
19         };
20 };
21
22 &blsp1_uart2 {
23         status = "okay";
24 };
25
26 &blsp2_dma {
27         qcom,controlled-remotely;
28 };
29
30 &blsp2_i2c5 {
31         status = "okay";
32         clock-frequency = <200000>;
33
34         eeprom: eeprom@52 {
35                 compatible = "atmel,24c128";
36                 reg = <0x52>;
37                 pagesize = <32>;
38                 read-only;
39         };
40 };
41
42 &otg {
43         status = "okay";
44
45         phys = <&usb_hs2_phy>;
46         phy-select = <&tcsr 0xb000 1>;
47         extcon = <&smbb>, <&usb_id>;
48         vbus-supply = <&chg_otg>;
49         hnp-disable;
50         srp-disable;
51         adp-disable;
52
53         ulpi {
54                 phy@b {
55                         status = "okay";
56                         v3p3-supply = <&pm8941_l24>;
57                         v1p8-supply = <&pm8941_l6>;
58                         extcon = <&smbb>;
59                         qcom,init-seq = /bits/ 8 <0x1 0x63>;
60                 };
61         };
62 };
63
64 &rpm_requests {
65         pm8841-regulators {
66                 compatible = "qcom,rpm-pm8841-regulators";
67
68                 pm8841_s1: s1 {
69                         regulator-min-microvolt = <675000>;
70                         regulator-max-microvolt = <1050000>;
71                 };
72
73                 pm8841_s2: s2 {
74                         regulator-min-microvolt = <500000>;
75                         regulator-max-microvolt = <1050000>;
76                 };
77
78                 pm8841_s3: s3 {
79                         regulator-min-microvolt = <500000>;
80                         regulator-max-microvolt = <1050000>;
81                 };
82
83                 pm8841_s4: s4 {
84                         regulator-min-microvolt = <500000>;
85                         regulator-max-microvolt = <1050000>;
86                 };
87         };
88
89         pm8941-regulators {
90                 compatible = "qcom,rpm-pm8941-regulators";
91
92                 vdd_l1_l3-supply = <&pm8941_s1>;
93                 vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
94                 vdd_l4_l11-supply = <&pm8941_s1>;
95                 vdd_l5_l7-supply = <&pm8941_s2>;
96                 vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
97                 vin_5vs-supply = <&pm8941_5v>;
98
99                 pm8941_s1: s1 {
100                         regulator-min-microvolt = <1300000>;
101                         regulator-max-microvolt = <1300000>;
102                         regulator-always-on;
103                         regulator-boot-on;
104                 };
105
106                 pm8941_s2: s2 {
107                         regulator-min-microvolt = <2150000>;
108                         regulator-max-microvolt = <2150000>;
109                         regulator-boot-on;
110                 };
111
112                 pm8941_s3: s3 {
113                         regulator-min-microvolt = <1800000>;
114                         regulator-max-microvolt = <1800000>;
115                         regulator-always-on;
116                         regulator-boot-on;
117                 };
118
119                 pm8941_l1: l1 {
120                         regulator-min-microvolt = <1225000>;
121                         regulator-max-microvolt = <1225000>;
122                         regulator-always-on;
123                         regulator-boot-on;
124                 };
125
126                 pm8941_l2: l2 {
127                         regulator-min-microvolt = <1200000>;
128                         regulator-max-microvolt = <1200000>;
129                 };
130
131                 pm8941_l3: l3 {
132                         regulator-min-microvolt = <1225000>;
133                         regulator-max-microvolt = <1225000>;
134                 };
135
136                 pm8941_l4: l4 {
137                         regulator-min-microvolt = <1225000>;
138                         regulator-max-microvolt = <1225000>;
139                 };
140
141                 pm8941_l5: l5 {
142                         regulator-min-microvolt = <1800000>;
143                         regulator-max-microvolt = <1800000>;
144                 };
145
146                 pm8941_l6: l6 {
147                         regulator-min-microvolt = <1800000>;
148                         regulator-max-microvolt = <1800000>;
149                         regulator-boot-on;
150                 };
151
152                 pm8941_l7: l7 {
153                         regulator-min-microvolt = <1800000>;
154                         regulator-max-microvolt = <1800000>;
155                         regulator-boot-on;
156                 };
157
158                 pm8941_l8: l8 {
159                         regulator-min-microvolt = <1800000>;
160                         regulator-max-microvolt = <1800000>;
161                 };
162
163                 pm8941_l9: l9 {
164                         regulator-min-microvolt = <1800000>;
165                         regulator-max-microvolt = <2950000>;
166                 };
167
168                 pm8941_l10: l10 {
169                         regulator-min-microvolt = <1800000>;
170                         regulator-max-microvolt = <1800000>;
171                         regulator-always-on;
172                 };
173
174                 pm8941_l11: l11 {
175                         regulator-min-microvolt = <1300000>;
176                         regulator-max-microvolt = <1300000>;
177                 };
178
179                 pm8941_l12: l12 {
180                         regulator-min-microvolt = <1800000>;
181                         regulator-max-microvolt = <1800000>;
182                         regulator-always-on;
183                         regulator-boot-on;
184                 };
185
186                 pm8941_l13: l13 {
187                         regulator-min-microvolt = <1800000>;
188                         regulator-max-microvolt = <2950000>;
189                         regulator-boot-on;
190                 };
191
192                 pm8941_l14: l14 {
193                         regulator-min-microvolt = <1800000>;
194                         regulator-max-microvolt = <1800000>;
195                 };
196
197                 pm8941_l15: l15 {
198                         regulator-min-microvolt = <2050000>;
199                         regulator-max-microvolt = <2050000>;
200                 };
201
202                 pm8941_l16: l16 {
203                         regulator-min-microvolt = <2700000>;
204                         regulator-max-microvolt = <2700000>;
205                 };
206
207                 pm8941_l17: l17 {
208                         regulator-min-microvolt = <2700000>;
209                         regulator-max-microvolt = <2700000>;
210                 };
211
212                 pm8941_l18: l18 {
213                         regulator-min-microvolt = <2850000>;
214                         regulator-max-microvolt = <2850000>;
215                 };
216
217                 pm8941_l19: l19 {
218                         regulator-min-microvolt = <3300000>;
219                         regulator-max-microvolt = <3300000>;
220                         regulator-always-on;
221                 };
222
223                 pm8941_l20: l20 {
224                         regulator-min-microvolt = <2950000>;
225                         regulator-max-microvolt = <2950000>;
226                         regulator-system-load = <200000>;
227                         regulator-allow-set-load;
228                         regulator-boot-on;
229                 };
230
231                 pm8941_l21: l21 {
232                         regulator-min-microvolt = <2950000>;
233                         regulator-max-microvolt = <2950000>;
234                         regulator-boot-on;
235                 };
236
237                 pm8941_l22: l22 {
238                         regulator-min-microvolt = <3000000>;
239                         regulator-max-microvolt = <3000000>;
240                 };
241
242                 pm8941_l23: l23 {
243                         regulator-min-microvolt = <3000000>;
244                         regulator-max-microvolt = <3000000>;
245                 };
246
247                 pm8941_l24: l24 {
248                         regulator-min-microvolt = <3075000>;
249                         regulator-max-microvolt = <3075000>;
250                         regulator-boot-on;
251                 };
252         };
253 };
254
255 &sdhc_1 {
256         status = "okay";
257
258         vmmc-supply = <&pm8941_l20>;
259         vqmmc-supply = <&pm8941_s3>;
260
261         pinctrl-names = "default", "sleep";
262         pinctrl-0 = <&sdc1_on>;
263         pinctrl-1 = <&sdc1_off>;
264 };
265
266 &sdhc_2 {
267         status = "okay";
268
269         cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
270         vmmc-supply = <&pm8941_l21>;
271         vqmmc-supply = <&pm8941_l13>;
272
273         pinctrl-names = "default", "sleep";
274         pinctrl-0 = <&sdc2_on>;
275         pinctrl-1 = <&sdc2_off>;
276 };
277
278 &tlmm {
279         sdc1_on: sdc1-on {
280                 clk {
281                         pins = "sdc1_clk";
282                         drive-strength = <16>;
283                         bias-disable;
284                 };
285
286                 cmd-data {
287                         pins = "sdc1_cmd", "sdc1_data";
288                         drive-strength = <10>;
289                         bias-pull-up;
290                 };
291         };
292
293         sdc2_on: sdc2-on {
294                 clk {
295                         pins = "sdc2_clk";
296                         drive-strength = <10>;
297                         bias-disable;
298                 };
299
300                 cmd-data {
301                         pins = "sdc2_cmd", "sdc2_data";
302                         drive-strength = <6>;
303                         bias-pull-up;
304                 };
305
306                 cd {
307                         pins = "gpio62";
308                         function = "gpio";
309                         drive-strength = <2>;
310                         bias-disable;
311                 };
312         };
313 };