blob: 3d37cab3b9a9cb5c9a9f8dcd314c059fc9b1545a [file] [log] [blame]
Kumar Galaf335b8a2014-04-03 14:48:22 -05001#include "qcom-apq8064-v2.0.dtsi"
Pramod Guravb4e10dd2014-10-21 11:23:19 +05302#include <dt-bindings/gpio/gpio.h>
Srinivas Kandagatla03f00be2015-09-18 13:31:59 +01003#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
Kumar Galaf335b8a2014-04-03 14:48:22 -05004
5/ {
6 model = "Qualcomm APQ8064/IFC6410";
7 compatible = "qcom,apq8064-ifc6410", "qcom,apq8064";
8
Pramod Guravd5d46542015-04-10 21:44:31 +01009 aliases {
10 serial0 = &gsbi7_serial;
Pramod Gurav86e252a2015-07-27 14:52:10 +010011 serial1 = &gsbi6_serial;
Srinivas Kandagatla90bd6e82016-02-23 14:15:08 +000012 i2c0 = &gsbi1_i2c;
13 i2c1 = &gsbi2_i2c;
14 i2c2 = &gsbi3_i2c;
15 i2c3 = &gsbi4_i2c;
16 spi0 = &gsbi5_spi;
Pramod Guravd5d46542015-04-10 21:44:31 +010017 };
18
Stephen Boyd7f9e28b2015-06-16 14:31:46 -070019 chosen {
20 stdout-path = "serial0:115200n8";
21 };
22
Srinivas Kandagatla03f00be2015-09-18 13:31:59 +010023 pwrseq {
24 compatible = "simple-bus";
25
26 sdcc4_pwrseq: sdcc4_pwrseq {
27 pinctrl-names = "default";
28 pinctrl-0 = <&wlan_default_gpios>;
29 compatible = "mmc-pwrseq-simple";
30 reset-gpios = <&pm8921_gpio 43 GPIO_ACTIVE_LOW>;
31 };
32 };
33
Srinivas Kandagatla2630a522015-09-18 13:32:11 +010034 leds {
35 compatible = "gpio-leds";
36 pinctrl-names = "default";
37 pinctrl-0 = <&notify_led>;
38
39 led@1 {
40 label = "apq8064:green:user1";
41 gpios = <&pm8921_gpio 18 GPIO_ACTIVE_HIGH>;
42 default-state = "on";
43 };
44 };
45
Archit Tanejac8098012016-09-23 12:03:07 +053046 hdmi-out {
47 compatible = "hdmi-connector";
48 type = "d";
49
50 port {
51 hdmi_con: endpoint {
52 remote-endpoint = <&hdmi_out>;
53 };
54 };
55 };
56
Kumar Galaf335b8a2014-04-03 14:48:22 -050057 soc {
kiran.padwal@smartplayin.com8c3166f2014-09-17 16:00:25 +053058 pinctrl@800000 {
Pramod Guravb4e10dd2014-10-21 11:23:19 +053059 card_detect: card_detect {
60 mux {
61 pins = "gpio26";
62 function = "gpio";
63 bias-disable;
64 };
65 };
Stanimir Varbanov668f4722016-01-05 15:38:25 -060066
67 pcie_pins: pcie_pinmux {
68 mux {
69 pins = "gpio27";
70 function = "gpio";
71 };
72 conf {
73 pins = "gpio27";
74 drive-strength = <12>;
75 bias-disable;
76 };
77 };
Archit Tanejac8098012016-09-23 12:03:07 +053078
79 hdmi_pinctrl: hdmi-pinctrl {
80 mux {
81 pins = "gpio70", "gpio71", "gpio72";
82 function = "hdmi";
83 };
84
85 pinconf_ddc {
86 pins = "gpio70", "gpio71";
87 bias-pull-up;
88 drive-strength = <2>;
89 };
90
91 pinconf_hpd {
92 pins = "gpio72";
93 bias-pull-down;
94 drive-strength = <16>;
95 };
96 };
kiran.padwal@smartplayin.com8c3166f2014-09-17 16:00:25 +053097 };
98
Srinivas Kandagatlaad560452015-04-10 21:43:14 +010099 rpm@108000 {
100 regulators {
101 vin_lvs1_3_6-supply = <&pm8921_s4>;
102 vin_lvs2-supply = <&pm8921_s1>;
103 vin_lvs4_5_7-supply = <&pm8921_s4>;
104
105 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
106 vdd_l24-supply = <&pm8921_s1>;
107 vdd_l25-supply = <&pm8921_s1>;
108 vdd_l26-supply = <&pm8921_s7>;
109 vdd_l27-supply = <&pm8921_s7>;
110 vdd_l28-supply = <&pm8921_s7>;
111
112
113 /* Buck SMPS */
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700114 s1 {
Srinivas Kandagatlaad560452015-04-10 21:43:14 +0100115 regulator-always-on;
116 regulator-min-microvolt = <1225000>;
117 regulator-max-microvolt = <1225000>;
118 qcom,switch-mode-frequency = <3200000>;
119 bias-pull-down;
120 };
121
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700122 s3 {
Srinivas Kandagatlaad560452015-04-10 21:43:14 +0100123 regulator-min-microvolt = <1000000>;
124 regulator-max-microvolt = <1400000>;
125 qcom,switch-mode-frequency = <4800000>;
126 };
127
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700128 s4 {
Srinivas Kandagatlaad560452015-04-10 21:43:14 +0100129 regulator-min-microvolt = <1800000>;
130 regulator-max-microvolt = <1800000>;
131 qcom,switch-mode-frequency = <3200000>;
132 };
133
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700134 s7 {
Srinivas Kandagatlaad560452015-04-10 21:43:14 +0100135 regulator-min-microvolt = <1300000>;
136 regulator-max-microvolt = <1300000>;
137 qcom,switch-mode-frequency = <3200000>;
138 };
139
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700140 l3 {
Srinivas Kandagatlaad560452015-04-10 21:43:14 +0100141 regulator-min-microvolt = <3050000>;
142 regulator-max-microvolt = <3300000>;
143 bias-pull-down;
144 };
145
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700146 l4 {
Srinivas Kandagatlaad560452015-04-10 21:43:14 +0100147 regulator-min-microvolt = <1000000>;
148 regulator-max-microvolt = <1800000>;
149 bias-pull-down;
150 };
151
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700152 l5 {
Srinivas Kandagatla2736bba2015-07-28 09:12:58 +0100153 regulator-min-microvolt = <2750000>;
154 regulator-max-microvolt = <3000000>;
155 bias-pull-down;
156 };
157
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700158 l6 {
Srinivas Kandagatlaad560452015-04-10 21:43:14 +0100159 regulator-min-microvolt = <2950000>;
160 regulator-max-microvolt = <2950000>;
161 bias-pull-down;
162 };
163
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700164 l23 {
Srinivas Kandagatlaad560452015-04-10 21:43:14 +0100165 regulator-min-microvolt = <1700000>;
166 regulator-max-microvolt = <1900000>;
167 bias-pull-down;
168 };
Srinivas Kandagatla2736bba2015-07-28 09:12:58 +0100169
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700170 lvs1 {
Srinivas Kandagatla2736bba2015-07-28 09:12:58 +0100171 bias-pull-down;
172 };
Stanimir Varbanov668f4722016-01-05 15:38:25 -0600173
174 lvs6 {
175 bias-pull-down;
176 };
Srinivas Kandagatlaad560452015-04-10 21:43:14 +0100177 };
178 };
179
Srinivas Kandagatla2736bba2015-07-28 09:12:58 +0100180 ext_3p3v: regulator-fixed@1 {
181 compatible = "regulator-fixed";
182 regulator-min-microvolt = <3300000>;
183 regulator-max-microvolt = <3300000>;
184 regulator-name = "ext_3p3v";
185 regulator-type = "voltage";
186 startup-delay-us = <0>;
187 gpio = <&tlmm_pinmux 77 GPIO_ACTIVE_HIGH>;
188 enable-active-high;
189 regulator-boot-on;
190 };
191
Srinivas Kandagatla3f62b462015-04-10 21:44:48 +0100192 gsbi3: gsbi@16200000 {
193 status = "okay";
194 qcom,mode = <GSBI_PROT_I2C>;
Srinivas Kandagatlae07214d2016-02-23 14:11:10 +0000195 i2c@16280000 {
Srinivas Kandagatla3f62b462015-04-10 21:44:48 +0100196 status = "okay";
Srinivas Kandagatla3f62b462015-04-10 21:44:48 +0100197 };
198 };
199
Srinivas Kandagatla10e0c162016-02-23 14:14:56 +0000200 gsbi@16300000 {
201 status = "okay";
202 qcom,mode = <GSBI_PROT_I2C>;
203 /* CAM I2C MIPI-CSI connector */
204 i2c@16380000 {
205 status = "okay";
206 };
207 };
208
kiran.padwal@smartplayin.com8c3166f2014-09-17 16:00:25 +0530209 gsbi@12440000 {
210 status = "okay";
211 qcom,mode = <GSBI_PROT_I2C>;
212
213 i2c@12460000 {
214 status = "okay";
215 clock-frequency = <200000>;
kiran.padwal@smartplayin.com8c3166f2014-09-17 16:00:25 +0530216
Srinivas Kandagatlae28ce3cc2015-09-18 13:30:38 +0100217 eeprom@52 {
kiran.padwal@smartplayin.com8c3166f2014-09-17 16:00:25 +0530218 compatible = "atmel,24c128";
219 reg = <0x52>;
220 pagesize = <32>;
221 };
222 };
223 };
224
Srinivas Kandagatla492731c2016-02-23 14:14:39 +0000225 gsbi@1a200000 {
226 qcom,mode = <GSBI_PROT_SPI>;
227 status = "okay";
228 spi4: spi@1a280000 {
229 status = "okay";
230 num-cs = <1>;
231 cs-gpios = <&tlmm_pinmux 53 0>;
232 };
233 };
234
Pramod Gurav86e252a2015-07-27 14:52:10 +0100235 gsbi@16500000 {
236 status = "ok";
Ivan T. Ivanov426ac152015-12-11 18:29:58 +0000237 qcom,mode = <GSBI_PROT_UART_W_FC>;
Pramod Gurav86e252a2015-07-27 14:52:10 +0100238
239 serial@16540000 {
240 status = "ok";
Pramod Gurav86e252a2015-07-27 14:52:10 +0100241 pinctrl-names = "default";
Srinivas Kandagatla7648c7b2015-09-18 13:31:34 +0100242 pinctrl-0 = <&gsbi6_uart_4pins>;
Pramod Gurav86e252a2015-07-27 14:52:10 +0100243 };
244 };
245
Kumar Galaf335b8a2014-04-03 14:48:22 -0500246 gsbi@16600000 {
247 status = "ok";
248 qcom,mode = <GSBI_PROT_I2C_UART>;
249 serial@16640000 {
250 status = "ok";
Srinivas Kandagatla17dbc552015-09-18 13:31:47 +0100251 pinctrl-names = "default";
252 pinctrl-0 = <&gsbi7_uart_2pins>;
Kumar Galaf335b8a2014-04-03 14:48:22 -0500253 };
254 };
Srinivas Kandagatla045644f2014-04-29 08:33:52 +0100255
Srinivas Kandagatlae6293352015-04-10 21:43:56 +0100256 sata_phy0: phy@1b400000 {
257 status = "okay";
258 };
259
260 sata0: sata@29000000 {
261 status = "okay";
262 target-supply = <&pm8921_s4>;
263 };
264
Srinivas Kandagatlaea986612015-04-10 21:43:42 +0100265 /* OTG */
266 usb1_phy: phy@12500000 {
267 status = "okay";
268 vddcx-supply = <&pm8921_s3>;
269 v3p3-supply = <&pm8921_l3>;
270 v1p8-supply = <&pm8921_l4>;
271 };
272
Srinivas Kandagatla223280b2015-04-10 21:43:30 +0100273 usb3_phy: phy@12520000 {
274 status = "okay";
275 vddcx-supply = <&pm8921_s3>;
276 v3p3-supply = <&pm8921_l3>;
277 v1p8-supply = <&pm8921_l23>;
278 };
279
280 usb4_phy: phy@12530000 {
281 status = "okay";
282 vddcx-supply = <&pm8921_s3>;
283 v3p3-supply = <&pm8921_l3>;
284 v1p8-supply = <&pm8921_l23>;
285 };
286
Srinivas Kandagatlaea986612015-04-10 21:43:42 +0100287 gadget1: gadget@12500000 {
288 status = "okay";
289 };
290
291 /* OTG */
292 usb1: usb@12500000 {
293 status = "okay";
294 };
295
Srinivas Kandagatla223280b2015-04-10 21:43:30 +0100296 usb3: usb@12520000 {
297 status = "okay";
298 };
299
300 usb4: usb@12530000 {
301 status = "okay";
302 };
303
Stanimir Varbanov668f4722016-01-05 15:38:25 -0600304 pci@1b500000 {
305 status = "ok";
306 vdda-supply = <&pm8921_s3>;
307 vdda_phy-supply = <&pm8921_lvs6>;
308 vdda_refclk-supply = <&ext_3p3v>;
309 pinctrl-0 = <&pcie_pins>;
310 pinctrl-names = "default";
311 perst-gpio = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>;
312 };
313
Srinivas Kandagatla03f00be2015-09-18 13:31:59 +0100314 qcom,ssbi@500000 {
315 pmic@0 {
316 gpio@150 {
317 wlan_default_gpios: wlan-gpios {
318 pios {
319 pins = "gpio43";
320 function = "normal";
321 bias-disable;
322 power-source = <PM8921_GPIO_S4>;
323 };
324 };
Srinivas Kandagatla2630a522015-09-18 13:32:11 +0100325
326 notify_led: nled {
327 pios {
328 pins = "gpio18";
329 function = "normal";
330 bias-disable;
331 power-source = <PM8921_GPIO_S4>;
332 };
333 };
Srinivas Kandagatla03f00be2015-09-18 13:31:59 +0100334 };
335 };
336 };
337
Srinivas Kandagatla045644f2014-04-29 08:33:52 +0100338 amba {
339 /* eMMC */
340 sdcc1: sdcc@12400000 {
341 status = "okay";
Srinivas Kandagatla2736bba2015-07-28 09:12:58 +0100342 vmmc-supply = <&pm8921_l5>;
343 vqmmc-supply = <&pm8921_s4>;
Srinivas Kandagatla045644f2014-04-29 08:33:52 +0100344 };
345
346 /* External micro SD card */
347 sdcc3: sdcc@12180000 {
348 status = "okay";
Srinivas Kandagatla2736bba2015-07-28 09:12:58 +0100349 vmmc-supply = <&pm8921_l6>;
Pramod Guravb4e10dd2014-10-21 11:23:19 +0530350 pinctrl-names = "default";
351 pinctrl-0 = <&card_detect>;
352 cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>;
Srinivas Kandagatla045644f2014-04-29 08:33:52 +0100353 };
Srinivas Kandagatla0be5fef2014-09-17 06:39:35 +0100354 /* WLAN */
355 sdcc4: sdcc@121c0000 {
356 status = "okay";
Srinivas Kandagatla2736bba2015-07-28 09:12:58 +0100357 vmmc-supply = <&ext_3p3v>;
358 vqmmc-supply = <&pm8921_lvs1>;
Srinivas Kandagatla03f00be2015-09-18 13:31:59 +0100359 mmc-pwrseq = <&sdcc4_pwrseq>;
Srinivas Kandagatla0be5fef2014-09-17 06:39:35 +0100360 };
Srinivas Kandagatla045644f2014-04-29 08:33:52 +0100361 };
Archit Tanejac8098012016-09-23 12:03:07 +0530362
363 hdmi-tx@4a00000 {
364 status = "okay";
365
366 core-vdda-supply = <&pm8921_hdmi_switch>;
367 hdmi-mux-supply = <&ext_3p3v>;
368
369 hpd-gpios = <&tlmm_pinmux 72 GPIO_ACTIVE_HIGH>;
370
371 pinctrl-names = "default";
372 pinctrl-0 = <&hdmi_pinctrl>;
373
374 ports {
375 port@0 {
376 endpoint {
377 remote-endpoint = <&mdp_dtv_out>;
378 };
379 };
380
381 port@1 {
382 endpoint {
383 remote-endpoint = <&hdmi_con>;
384 };
385 };
386 };
387 };
388
389 hdmi-phy@4a00400 {
390 status = "okay";
391
392 core-vdda-supply = <&pm8921_hdmi_switch>;
393 };
394
395 mdp@5100000 {
396 status = "okay";
397
398 ports {
399 port@3 {
400 endpoint {
401 remote-endpoint = <&hdmi_in>;
402 };
403 };
404 };
405 };
Kumar Galaf335b8a2014-04-03 14:48:22 -0500406 };
407};