Linux 6.7-rc7
[linux-modified.git] / arch / arm64 / boot / dts / freescale / fsl-lx2160a-bluebox3.dts
1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
2 //
3 // Device Tree file for LX2160A BLUEBOX3
4 //
5 // Copyright 2020-2021 NXP
6
7 /dts-v1/;
8
9 #include "fsl-lx2160a.dtsi"
10
11 / {
12         model = "NXP Layerscape LX2160ABLUEBOX3";
13         compatible = "fsl,lx2160a-bluebox3", "fsl,lx2160a";
14
15         aliases {
16                 crypto = &crypto;
17                 mmc0 = &esdhc0;
18                 mmc1 = &esdhc1;
19                 serial0 = &uart0;
20         };
21
22         chosen {
23                 stdout-path = "serial0:115200n8";
24         };
25
26         sb_3v3: regulator-sb3v3 {
27                 compatible = "regulator-fixed";
28                 regulator-name = "MC34717-3.3VSB";
29                 regulator-min-microvolt = <3300000>;
30                 regulator-max-microvolt = <3300000>;
31                 regulator-boot-on;
32                 regulator-always-on;
33         };
34 };
35
36 &can0 {
37         status = "okay";
38
39         can-transceiver {
40                 max-bitrate = <5000000>;
41         };
42 };
43
44 &can1 {
45         status = "okay";
46
47         can-transceiver {
48                 max-bitrate = <5000000>;
49         };
50 };
51
52 &crypto {
53         status = "okay";
54 };
55
56 &dpmac5 {
57         phy-handle = <&aqr113c_phy1>;
58         phy-mode = "usxgmii";
59         managed = "in-band-status";
60 };
61
62 &dpmac6 {
63         phy-handle = <&aqr113c_phy2>;
64         phy-mode = "usxgmii";
65         managed = "in-band-status";
66 };
67
68 &dpmac9 {
69         phy-handle = <&aqr113c_phy3>;
70         phy-mode = "usxgmii";
71         managed = "in-band-status";
72 };
73
74 &dpmac10 {
75         phy-handle = <&aqr113c_phy4>;
76         phy-mode = "usxgmii";
77         managed = "in-band-status";
78 };
79
80 &dpmac17 {
81         phy-mode = "rgmii";
82         status = "okay";
83
84         fixed-link {
85                 speed = <1000>;
86                 full-duplex;
87         };
88 };
89
90 &dpmac18 {
91         phy-mode = "rgmii";
92         status = "okay";
93
94         fixed-link {
95                 speed = <1000>;
96                 full-duplex;
97         };
98 };
99
100 &emdio1 {
101         status = "okay";
102
103         aqr113c_phy2: ethernet-phy@0 {
104                 compatible = "ethernet-phy-ieee802.3-c45";
105                 reg = <0x0>;
106                 /* IRQ_10G_PHY2 */
107                 interrupts-extended = <&extirq 3 IRQ_TYPE_LEVEL_LOW>;
108         };
109
110         aqr113c_phy1: ethernet-phy@8 {
111                 compatible = "ethernet-phy-ieee802.3-c45";
112                 reg = <0x8>;
113                 /* IRQ_10G_PHY1 */
114                 interrupts-extended = <&extirq 2 IRQ_TYPE_LEVEL_LOW>;
115         };
116
117         sw1_mii3_phy: ethernet-phy@5 {
118                 /* AR8035 */
119                 compatible = "ethernet-phy-id004d.d072";
120                 reg = <0x5>;
121                 interrupts-extended = <&extirq 6 IRQ_TYPE_LEVEL_LOW>;
122         };
123
124         sw2_mii3_phy: ethernet-phy@6 {
125                 /* AR8035 */
126                 compatible = "ethernet-phy-id004d.d072";
127                 reg = <0x6>;
128                 interrupts-extended = <&extirq 7 IRQ_TYPE_LEVEL_LOW>;
129         };
130 };
131
132 &emdio2 {
133         status = "okay";
134
135         aqr113c_phy4: ethernet-phy@0 {
136                 compatible = "ethernet-phy-ieee802.3-c45";
137                 reg = <0x0>;
138                 /* IRQ_10G_PHY4 */
139                 interrupts-extended = <&extirq 5 IRQ_TYPE_LEVEL_LOW>;
140         };
141
142         aqr113c_phy3: ethernet-phy@8 {
143                 compatible = "ethernet-phy-ieee802.3-c45";
144                 reg = <0x8>;
145                 /* IRQ_10G_PHY3 */
146                 interrupts-extended = <&extirq 4 IRQ_TYPE_LEVEL_LOW>;
147         };
148 };
149
150 &esdhc0 {
151         sd-uhs-sdr104;
152         sd-uhs-sdr50;
153         sd-uhs-sdr25;
154         sd-uhs-sdr12;
155         status = "okay";
156 };
157
158 &esdhc1 {
159         mmc-hs200-1_8v;
160         mmc-hs400-1_8v;
161         bus-width = <8>;
162         status = "okay";
163 };
164
165 &fspi {
166         status = "okay";
167
168         mt35xu512aba0: flash@0 {
169                 compatible = "jedec,spi-nor";
170                 #address-cells = <1>;
171                 #size-cells = <1>;
172                 reg = <0>;
173                 m25p,fast-read;
174                 spi-max-frequency = <50000000>;
175                 spi-rx-bus-width = <8>;
176                 spi-tx-bus-width = <8>;
177         };
178
179         mt35xu512aba1: flash@1 {
180                 compatible = "jedec,spi-nor";
181                 #address-cells = <1>;
182                 #size-cells = <1>;
183                 reg = <1>;
184                 m25p,fast-read;
185                 spi-max-frequency = <50000000>;
186                 spi-rx-bus-width = <8>;
187                 spi-tx-bus-width = <8>;
188         };
189 };
190
191 &i2c0 {
192         status = "okay";
193
194         i2c-mux@77 {
195                 compatible = "nxp,pca9547";
196                 reg = <0x77>;
197                 #address-cells = <1>;
198                 #size-cells = <0>;
199
200                 i2c@2 {
201                         #address-cells = <1>;
202                         #size-cells = <0>;
203                         reg = <0x2>;
204
205                         power-monitor@40 {
206                                 compatible = "ti,ina220";
207                                 reg = <0x40>;
208                                 shunt-resistor = <500>;
209                         };
210                 };
211
212                 i2c@3 {
213                         #address-cells = <1>;
214                         #size-cells = <0>;
215                         reg = <0x3>;
216
217                         temp2: temperature-sensor@48 {
218                                 compatible = "nxp,sa56004";
219                                 reg = <0x48>;
220                                 vcc-supply = <&sb_3v3>;
221                                 #thermal-sensor-cells = <1>;
222                         };
223
224                         temp1: temperature-sensor@4c {
225                                 compatible = "nxp,sa56004";
226                                 reg = <0x4c>;
227                                 vcc-supply = <&sb_3v3>;
228                                 #thermal-sensor-cells = <1>;
229                         };
230                 };
231
232                 i2c@4 {
233                         #address-cells = <1>;
234                         #size-cells = <0>;
235                         reg = <0x4>;
236
237                         rtc@51 {
238                                 compatible = "nxp,pcf2129";
239                                 reg = <0x51>;
240                                 interrupts-extended = <&extirq 11 IRQ_TYPE_LEVEL_LOW>;
241                         };
242                 };
243
244                 i2c@7 {
245                         #address-cells = <1>;
246                         #size-cells = <0>;
247                         reg = <0x7>;
248
249                         i2c-mux@75 {
250                                 compatible = "nxp,pca9547";
251                                 reg = <0x75>;
252                                 #address-cells = <1>;
253                                 #size-cells = <0>;
254
255                                 i2c@0 {
256                                         #address-cells = <1>;
257                                         #size-cells = <0>;
258                                         reg = <0x0>;
259
260                                         spi_bridge: spi@28 {
261                                                 compatible = "nxp,sc18is602b";
262                                                 reg = <0x28>;
263                                                 #address-cells = <1>;
264                                                 #size-cells = <0>;
265                                         };
266                                 };
267                         };
268                 };
269         };
270 };
271
272 &i2c5 {
273         status = "okay";
274
275         i2c-mux@77 {
276                 compatible = "nxp,pca9846";
277                 reg = <0x77>;
278                 #address-cells = <1>;
279                 #size-cells = <0>;
280
281                 i2c@1 {
282                         #address-cells = <1>;
283                         #size-cells = <0>;
284                         reg = <0x1>;
285
286                         /* The I2C multiplexer and temperature sensors are on
287                          * the T6 riser card.
288                          */
289                         i2c-mux@70 {
290                                 compatible = "nxp,pca9548";
291                                 reg = <0x70>;
292                                 #address-cells = <1>;
293                                 #size-cells = <0>;
294
295                                 i2c@6 {
296                                         #address-cells = <1>;
297                                         #size-cells = <0>;
298                                         reg = <0x6>;
299
300                                         q12: temperature-sensor@4c {
301                                                 compatible = "nxp,sa56004";
302                                                 reg = <0x4c>;
303                                                 vcc-supply = <&sb_3v3>;
304                                                 #thermal-sensor-cells = <1>;
305                                         };
306                                 };
307
308                                 i2c@7 {
309                                         #address-cells = <1>;
310                                         #size-cells = <0>;
311                                         reg = <0x7>;
312
313                                         q11: temperature-sensor@4c {
314                                                 compatible = "nxp,sa56004";
315                                                 reg = <0x4c>;
316                                                 vcc-supply = <&sb_3v3>;
317                                                 #thermal-sensor-cells = <1>;
318                                         };
319
320                                         q13: temperature-sensor@48 {
321                                                 compatible = "nxp,sa56004";
322                                                 reg = <0x48>;
323                                                 vcc-supply = <&sb_3v3>;
324                                                 #thermal-sensor-cells = <1>;
325                                         };
326
327                                         q14: temperature-sensor@4a {
328                                                 compatible = "nxp,sa56004";
329                                                 reg = <0x4a>;
330                                                 vcc-supply = <&sb_3v3>;
331                                                 #thermal-sensor-cells = <1>;
332                                         };
333                                 };
334                         };
335                 };
336         };
337 };
338
339 &pcs_mdio5 {
340         status = "okay";
341 };
342
343 &pcs_mdio6 {
344         status = "okay";
345 };
346
347 &pcs_mdio9 {
348         status = "okay";
349 };
350
351 &pcs_mdio10 {
352         status = "okay";
353 };
354
355 &spi_bridge {
356         sw1: ethernet-switch@0 {
357                 compatible = "nxp,sja1110a";
358                 reg = <0>;
359                 spi-max-frequency = <4000000>;
360                 spi-cpol;
361                 dsa,member = <0 0>;
362
363                 ethernet-ports {
364                         #address-cells = <1>;
365                         #size-cells = <0>;
366
367                         /* Microcontroller port */
368                         port@0 {
369                                 reg = <0>;
370                                 status = "disabled";
371                         };
372
373                         /* SW1_P1 */
374                         port@1 {
375                                 reg = <1>;
376                                 label = "con_2x20";
377                                 phy-mode = "sgmii";
378
379                                 fixed-link {
380                                         speed = <1000>;
381                                         full-duplex;
382                                 };
383                         };
384
385                         port@2 {
386                                 reg = <2>;
387                                 ethernet = <&dpmac17>;
388                                 phy-mode = "rgmii-id";
389                                 rx-internal-delay-ps = <2000>;
390                                 tx-internal-delay-ps = <2000>;
391
392                                 fixed-link {
393                                         speed = <1000>;
394                                         full-duplex;
395                                 };
396                         };
397
398                         port@3 {
399                                 reg = <3>;
400                                 label = "1ge_p1";
401                                 phy-mode = "rgmii-id";
402                                 phy-handle = <&sw1_mii3_phy>;
403                         };
404
405                         sw1p4: port@4 {
406                                 reg = <4>;
407                                 link = <&sw2p1>;
408                                 phy-mode = "sgmii";
409
410                                 fixed-link {
411                                         speed = <1000>;
412                                         full-duplex;
413                                 };
414                         };
415
416                         port@5 {
417                                 reg = <5>;
418                                 label = "trx1";
419                                 phy-mode = "internal";
420                                 phy-handle = <&sw1_port5_base_t1_phy>;
421                         };
422
423                         port@6 {
424                                 reg = <6>;
425                                 label = "trx2";
426                                 phy-mode = "internal";
427                                 phy-handle = <&sw1_port6_base_t1_phy>;
428                         };
429
430                         port@7 {
431                                 reg = <7>;
432                                 label = "trx3";
433                                 phy-mode = "internal";
434                                 phy-handle = <&sw1_port7_base_t1_phy>;
435                         };
436
437                         port@8 {
438                                 reg = <8>;
439                                 label = "trx4";
440                                 phy-mode = "internal";
441                                 phy-handle = <&sw1_port8_base_t1_phy>;
442                         };
443
444                         port@9 {
445                                 reg = <9>;
446                                 label = "trx5";
447                                 phy-mode = "internal";
448                                 phy-handle = <&sw1_port9_base_t1_phy>;
449                         };
450
451                         port@a {
452                                 reg = <10>;
453                                 label = "trx6";
454                                 phy-mode = "internal";
455                                 phy-handle = <&sw1_port10_base_t1_phy>;
456                         };
457                 };
458
459                 mdios {
460                         #address-cells = <1>;
461                         #size-cells = <0>;
462
463                         mdio@0 {
464                                 compatible = "nxp,sja1110-base-t1-mdio";
465                                 #address-cells = <1>;
466                                 #size-cells = <0>;
467                                 reg = <0>;
468
469                                 sw1_port5_base_t1_phy: ethernet-phy@1 {
470                                         compatible = "ethernet-phy-ieee802.3-c45";
471                                         reg = <0x1>;
472                                 };
473
474                                 sw1_port6_base_t1_phy: ethernet-phy@2 {
475                                         compatible = "ethernet-phy-ieee802.3-c45";
476                                         reg = <0x2>;
477                                 };
478
479                                 sw1_port7_base_t1_phy: ethernet-phy@3 {
480                                         compatible = "ethernet-phy-ieee802.3-c45";
481                                         reg = <0x3>;
482                                 };
483
484                                 sw1_port8_base_t1_phy: ethernet-phy@4 {
485                                         compatible = "ethernet-phy-ieee802.3-c45";
486                                         reg = <0x4>;
487                                 };
488
489                                 sw1_port9_base_t1_phy: ethernet-phy@5 {
490                                         compatible = "ethernet-phy-ieee802.3-c45";
491                                         reg = <0x5>;
492                                 };
493
494                                 sw1_port10_base_t1_phy: ethernet-phy@6 {
495                                         compatible = "ethernet-phy-ieee802.3-c45";
496                                         reg = <0x6>;
497                                 };
498                         };
499                 };
500         };
501
502         sw2: ethernet-switch@2 {
503                 compatible = "nxp,sja1110a";
504                 reg = <2>;
505                 spi-max-frequency = <4000000>;
506                 spi-cpol;
507                 dsa,member = <0 1>;
508
509                 ethernet-ports {
510                         #address-cells = <1>;
511                         #size-cells = <0>;
512
513                         /* Microcontroller port */
514                         port@0 {
515                                 reg = <0>;
516                                 status = "disabled";
517                         };
518
519                         sw2p1: port@1 {
520                                 reg = <1>;
521                                 link = <&sw1p4>;
522                                 phy-mode = "sgmii";
523
524                                 fixed-link {
525                                         speed = <1000>;
526                                         full-duplex;
527                                 };
528                         };
529
530                         port@2 {
531                                 reg = <2>;
532                                 ethernet = <&dpmac18>;
533                                 phy-mode = "rgmii-id";
534                                 rx-internal-delay-ps = <2000>;
535                                 tx-internal-delay-ps = <2000>;
536
537                                 fixed-link {
538                                         speed = <1000>;
539                                         full-duplex;
540                                 };
541                         };
542
543                         port@3 {
544                                 reg = <3>;
545                                 label = "1ge_p2";
546                                 phy-mode = "rgmii-id";
547                                 phy-handle = <&sw2_mii3_phy>;
548                         };
549
550                         port@4 {
551                                 reg = <4>;
552                                 label = "to_sw3";
553                                 phy-mode = "2500base-x";
554
555                                 fixed-link {
556                                         speed = <2500>;
557                                         full-duplex;
558                                 };
559                         };
560
561                         port@5 {
562                                 reg = <5>;
563                                 label = "trx7";
564                                 phy-mode = "internal";
565                                 phy-handle = <&sw2_port5_base_t1_phy>;
566                         };
567
568                         port@6 {
569                                 reg = <6>;
570                                 label = "trx8";
571                                 phy-mode = "internal";
572                                 phy-handle = <&sw2_port6_base_t1_phy>;
573                         };
574
575                         port@7 {
576                                 reg = <7>;
577                                 label = "trx9";
578                                 phy-mode = "internal";
579                                 phy-handle = <&sw2_port7_base_t1_phy>;
580                         };
581
582                         port@8 {
583                                 reg = <8>;
584                                 label = "trx10";
585                                 phy-mode = "internal";
586                                 phy-handle = <&sw2_port8_base_t1_phy>;
587                         };
588
589                         port@9 {
590                                 reg = <9>;
591                                 label = "trx11";
592                                 phy-mode = "internal";
593                                 phy-handle = <&sw2_port9_base_t1_phy>;
594                         };
595
596                         port@a {
597                                 reg = <10>;
598                                 label = "trx12";
599                                 phy-mode = "internal";
600                                 phy-handle = <&sw2_port10_base_t1_phy>;
601                         };
602                 };
603
604                 mdios {
605                         #address-cells = <1>;
606                         #size-cells = <0>;
607
608                         mdio@0 {
609                                 compatible = "nxp,sja1110-base-t1-mdio";
610                                 #address-cells = <1>;
611                                 #size-cells = <0>;
612                                 reg = <0>;
613
614                                 sw2_port5_base_t1_phy: ethernet-phy@1 {
615                                         compatible = "ethernet-phy-ieee802.3-c45";
616                                         reg = <0x1>;
617                                 };
618
619                                 sw2_port6_base_t1_phy: ethernet-phy@2 {
620                                         compatible = "ethernet-phy-ieee802.3-c45";
621                                         reg = <0x2>;
622                                 };
623
624                                 sw2_port7_base_t1_phy: ethernet-phy@3 {
625                                         compatible = "ethernet-phy-ieee802.3-c45";
626                                         reg = <0x3>;
627                                 };
628
629                                 sw2_port8_base_t1_phy: ethernet-phy@4 {
630                                         compatible = "ethernet-phy-ieee802.3-c45";
631                                         reg = <0x4>;
632                                 };
633
634                                 sw2_port9_base_t1_phy: ethernet-phy@5 {
635                                         compatible = "ethernet-phy-ieee802.3-c45";
636                                         reg = <0x5>;
637                                 };
638
639                                 sw2_port10_base_t1_phy: ethernet-phy@6 {
640                                         compatible = "ethernet-phy-ieee802.3-c45";
641                                         reg = <0x6>;
642                                 };
643                         };
644                 };
645         };
646 };
647
648 &uart0 {
649         status = "okay";
650 };
651
652 &uart1 {
653         status = "okay";
654 };
655
656 &usb0 {
657         status = "okay";
658 };
659
660 &usb1 {
661         status = "okay";
662 };