ARM: dts: dra76-evm: Shift to using common IOdelay data
[linux-2.6-microblaze.git] / arch / arm / boot / dts / dra76-evm.dts
1 /*
2  * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  */
8 /dts-v1/;
9
10 #include "dra76x.dtsi"
11 #include "dra7-evm-common.dtsi"
12 #include "dra76x-mmc-iodelay.dtsi"
13 #include <dt-bindings/net/ti-dp83867.h>
14
15 / {
16         model = "TI DRA762 EVM";
17         compatible = "ti,dra76-evm", "ti,dra762", "ti,dra7";
18
19         memory@0 {
20                 device_type = "memory";
21                 reg = <0x0 0x80000000 0x0 0x80000000>;
22         };
23
24         vsys_12v0: fixedregulator-vsys12v0 {
25                 /* main supply */
26                 compatible = "regulator-fixed";
27                 regulator-name = "vsys_12v0";
28                 regulator-min-microvolt = <12000000>;
29                 regulator-max-microvolt = <12000000>;
30                 regulator-always-on;
31                 regulator-boot-on;
32         };
33
34         vsys_5v0: fixedregulator-vsys5v0 {
35                 /* Output of Cntlr B of TPS43351-Q1 on dra76-evm */
36                 compatible = "regulator-fixed";
37                 regulator-name = "vsys_5v0";
38                 regulator-min-microvolt = <5000000>;
39                 regulator-max-microvolt = <5000000>;
40                 vin-supply = <&vsys_12v0>;
41                 regulator-always-on;
42                 regulator-boot-on;
43         };
44
45         vsys_3v3: fixedregulator-vsys3v3 {
46                 /* Output of Cntlr A of TPS43351-Q1 on dra76-evm */
47                 compatible = "regulator-fixed";
48                 regulator-name = "vsys_3v3";
49                 regulator-min-microvolt = <3300000>;
50                 regulator-max-microvolt = <3300000>;
51                 vin-supply = <&vsys_12v0>;
52                 regulator-always-on;
53                 regulator-boot-on;
54         };
55
56         vio_3v3: fixedregulator-vio_3v3 {
57                 compatible = "regulator-fixed";
58                 regulator-name = "vio_3v3";
59                 regulator-min-microvolt = <3300000>;
60                 regulator-max-microvolt = <3300000>;
61                 vin-supply = <&vsys_3v3>;
62                 regulator-always-on;
63                 regulator-boot-on;
64         };
65
66         vio_3v3_sd: fixedregulator-sd {
67                 compatible = "regulator-fixed";
68                 regulator-name = "vio_3v3_sd";
69                 regulator-min-microvolt = <3300000>;
70                 regulator-max-microvolt = <3300000>;
71                 vin-supply = <&vio_3v3>;
72                 enable-active-high;
73                 gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
74         };
75
76         vio_1v8: fixedregulator-vio_1v8 {
77                 compatible = "regulator-fixed";
78                 regulator-name = "vio_1v8";
79                 regulator-min-microvolt = <1800000>;
80                 regulator-max-microvolt = <1800000>;
81                 vin-supply = <&smps5_reg>;
82         };
83
84         vtt_fixed: fixedregulator-vtt {
85                 compatible = "regulator-fixed";
86                 regulator-name = "vtt_fixed";
87                 regulator-min-microvolt = <1350000>;
88                 regulator-max-microvolt = <1350000>;
89                 vin-supply = <&vsys_3v3>;
90                 regulator-always-on;
91                 regulator-boot-on;
92         };
93
94         aic_dvdd: fixedregulator-aic_dvdd {
95                 /* TPS77018DBVT */
96                 compatible = "regulator-fixed";
97                 regulator-name = "aic_dvdd";
98                 vin-supply = <&vio_3v3>;
99                 regulator-min-microvolt = <1800000>;
100                 regulator-max-microvolt = <1800000>;
101         };
102 };
103
104 &i2c1 {
105         status = "okay";
106         clock-frequency = <400000>;
107
108         tps65917: tps65917@58 {
109                 compatible = "ti,tps65917";
110                 reg = <0x58>;
111                 ti,system-power-controller;
112                 ti,palmas-override-powerhold;
113                 interrupt-controller;
114                 #interrupt-cells = <2>;
115
116                 tps65917_pmic {
117                         compatible = "ti,tps65917-pmic";
118
119                         smps12-in-supply = <&vsys_3v3>;
120                         smps3-in-supply = <&vsys_3v3>;
121                         smps4-in-supply = <&vsys_3v3>;
122                         smps5-in-supply = <&vsys_3v3>;
123                         ldo1-in-supply = <&vsys_3v3>;
124                         ldo2-in-supply = <&vsys_3v3>;
125                         ldo3-in-supply = <&vsys_5v0>;
126                         ldo4-in-supply = <&vsys_5v0>;
127                         ldo5-in-supply = <&vsys_3v3>;
128
129                         tps65917_regulators: regulators {
130                                 smps12_reg: smps12 {
131                                         /* VDD_DSPEVE */
132                                         regulator-name = "smps12";
133                                         regulator-min-microvolt = <850000>;
134                                         regulator-max-microvolt = <1250000>;
135                                         regulator-always-on;
136                                         regulator-boot-on;
137                                 };
138
139                                 smps3_reg: smps3 {
140                                         /* VDD_CORE */
141                                         regulator-name = "smps3";
142                                         regulator-min-microvolt = <850000>;
143                                         regulator-max-microvolt = <1250000>;
144                                         regulator-boot-on;
145                                         regulator-always-on;
146                                 };
147
148                                 smps4_reg: smps4 {
149                                         /* VDD_IVA */
150                                         regulator-name = "smps4";
151                                         regulator-min-microvolt = <850000>;
152                                         regulator-max-microvolt = <1250000>;
153                                         regulator-always-on;
154                                         regulator-boot-on;
155                                 };
156
157                                 smps5_reg: smps5 {
158                                         /* VDDS1V8 */
159                                         regulator-name = "smps5";
160                                         regulator-min-microvolt = <1800000>;
161                                         regulator-max-microvolt = <1800000>;
162                                         regulator-boot-on;
163                                         regulator-always-on;
164                                 };
165
166                                 ldo1_reg: ldo1 {
167                                         /* LDO1_OUT --> VDA_PHY1_1V8  */
168                                         regulator-name = "ldo1";
169                                         regulator-min-microvolt = <1800000>;
170                                         regulator-max-microvolt = <1800000>;
171                                         regulator-always-on;
172                                         regulator-boot-on;
173                                         regulator-allow-bypass;
174                                 };
175
176                                 ldo2_reg: ldo2 {
177                                         /* LDO2_OUT --> VDA_PHY2_1V8 */
178                                         regulator-name = "ldo2";
179                                         regulator-min-microvolt = <1800000>;
180                                         regulator-max-microvolt = <1800000>;
181                                         regulator-allow-bypass;
182                                         regulator-always-on;
183                                 };
184
185                                 ldo3_reg: ldo3 {
186                                         /* VDA_USB_3V3 */
187                                         regulator-name = "ldo3";
188                                         regulator-min-microvolt = <3300000>;
189                                         regulator-max-microvolt = <3300000>;
190                                         regulator-boot-on;
191                                         regulator-always-on;
192                                 };
193
194                                 ldo5_reg: ldo5 {
195                                         /* VDDA_1V8_PLL */
196                                         regulator-name = "ldo5";
197                                         regulator-min-microvolt = <1800000>;
198                                         regulator-max-microvolt = <1800000>;
199                                         regulator-always-on;
200                                         regulator-boot-on;
201                                 };
202
203                                 ldo4_reg: ldo4 {
204                                         /* VDD_SDIO_DV */
205                                         regulator-name = "ldo4";
206                                         regulator-min-microvolt = <1800000>;
207                                         regulator-max-microvolt = <3300000>;
208                                         regulator-boot-on;
209                                         regulator-always-on;
210                                 };
211                         };
212                 };
213
214                 tps65917_power_button {
215                         compatible = "ti,palmas-pwrbutton";
216                         interrupt-parent = <&tps65917>;
217                         interrupts = <1 IRQ_TYPE_NONE>;
218                         wakeup-source;
219                         ti,palmas-long-press-seconds = <6>;
220                 };
221         };
222
223         lp87565: lp87565@60 {
224                 compatible = "ti,lp87565-q1";
225                 reg = <0x60>;
226
227                 buck10-in-supply =<&vsys_3v3>;
228                 buck23-in-supply =<&vsys_3v3>;
229
230                 regulators: regulators {
231                         buck10_reg: buck10 {
232                                 /*VDD_MPU*/
233                                 regulator-name = "buck10";
234                                 regulator-min-microvolt = <850000>;
235                                 regulator-max-microvolt = <1250000>;
236                                 regulator-always-on;
237                                 regulator-boot-on;
238                         };
239
240                         buck23_reg: buck23 {
241                                 /* VDD_GPU*/
242                                 regulator-name = "buck23";
243                                 regulator-min-microvolt = <850000>;
244                                 regulator-max-microvolt = <1250000>;
245                                 regulator-boot-on;
246                                 regulator-always-on;
247                         };
248                 };
249         };
250
251         pcf_lcd: pcf8757@20 {
252                 compatible = "ti,pcf8575", "nxp,pcf8575";
253                 reg = <0x20>;
254                 gpio-controller;
255                 #gpio-cells = <2>;
256                 interrupt-controller;
257                 #interrupt-cells = <2>;
258                 interrupt-parent = <&gpio1>;
259                 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
260         };
261
262         pcf_gpio_21: pcf8757@21 {
263                 compatible = "ti,pcf8575", "nxp,pcf8575";
264                 reg = <0x21>;
265                 gpio-controller;
266                 #gpio-cells = <2>;
267                 interrupt-parent = <&gpio1>;
268                 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
269                 interrupt-controller;
270                 #interrupt-cells = <2>;
271         };
272
273         pcf_hdmi: pcf8575@26 {
274                 compatible = "ti,pcf8575", "nxp,pcf8575";
275                 reg = <0x26>;
276                 gpio-controller;
277                 #gpio-cells = <2>;
278                 p1 {
279                         /* vin6_sel_s0: high: VIN6, low: audio */
280                         gpio-hog;
281                         gpios = <1 GPIO_ACTIVE_HIGH>;
282                         output-low;
283                         line-name = "vin6_sel_s0";
284                 };
285         };
286
287         tlv320aic3106: tlv320aic3106@19 {
288                 #sound-dai-cells = <0>;
289                 compatible = "ti,tlv320aic3106";
290                 reg = <0x19>;
291                 adc-settle-ms = <40>;
292                 ai3x-micbias-vg = <1>;          /* 2.0V */
293                 status = "okay";
294
295                 /* Regulators */
296                 AVDD-supply = <&vio_3v3>;
297                 IOVDD-supply = <&vio_3v3>;
298                 DRVDD-supply = <&vio_3v3>;
299                 DVDD-supply = <&aic_dvdd>;
300         };
301 };
302
303 &cpu0 {
304         vdd-supply = <&buck10_reg>;
305 };
306
307 &mmc1 {
308         status = "okay";
309         vmmc-supply = <&vio_3v3_sd>;
310         vmmc_aux-supply = <&ldo4_reg>;
311         bus-width = <4>;
312         /*
313          * SDCD signal is not being used here - using the fact that GPIO mode
314          * is always hardwired.
315          */
316         cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>;
317         pinctrl-names = "default";
318         pinctrl-0 = <&mmc1_pins_default>;
319 };
320
321 &mmc2 {
322         status = "okay";
323         vmmc-supply = <&vio_1v8>;
324         bus-width = <8>;
325         pinctrl-names = "default";
326         pinctrl-0 = <&mmc2_pins_default>;
327 };
328
329 /* No RTC on this device */
330 &rtc {
331         status = "disabled";
332 };
333
334 &mac {
335         status = "okay";
336
337         dual_emac;
338 };
339
340 &cpsw_emac0 {
341         phy_id = <&davinci_mdio>, <2>;
342         phy-mode = "rgmii-id";
343         dual_emac_res_vlan = <1>;
344 };
345
346 &cpsw_emac1 {
347         phy_id = <&davinci_mdio>, <3>;
348         phy-mode = "rgmii-id";
349         dual_emac_res_vlan = <2>;
350 };
351
352 &davinci_mdio {
353         dp83867_0: ethernet-phy@2 {
354                 reg = <2>;
355                 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
356                 ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
357                 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
358                 ti,min-output-impedance;
359                 ti,dp83867-rxctrl-strap-quirk;
360         };
361
362         dp83867_1: ethernet-phy@3 {
363                 reg = <3>;
364                 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
365                 ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
366                 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
367                 ti,min-output-impedance;
368                 ti,dp83867-rxctrl-strap-quirk;
369         };
370 };
371
372 &usb2_phy1 {
373         phy-supply = <&ldo3_reg>;
374 };
375
376 &usb2_phy2 {
377         phy-supply = <&ldo3_reg>;
378 };
379
380 &qspi {
381         spi-max-frequency = <96000000>;
382         m25p80@0 {
383                 spi-max-frequency = <96000000>;
384         };
385 };
386
387 &pcie2_phy {
388         status = "okay";
389 };
390
391 &pcie1_rc {
392         num-lanes = <2>;
393         phys = <&pcie1_phy>, <&pcie2_phy>;
394         phy-names = "pcie-phy0", "pcie-phy1";
395 };
396
397 &pcie1_ep {
398         num-lanes = <2>;
399         phys = <&pcie1_phy>, <&pcie2_phy>;
400         phy-names = "pcie-phy0", "pcie-phy1";
401 };