mvebu: eDPU: add support for version with external switch
[openwrt/staging/jow.git] / target / linux / mvebu / files / arch / arm64 / boot / dts / marvell / armada-3720-eDPU.dts
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2
3 /dts-v1/;
4
5 #include "armada-3720-uDPU.dtsi"
6
7 / {
8 model = "Methode eDPU Board";
9 compatible = "methode,edpu", "marvell,armada3720", "marvell,armada3710";
10 };
11
12 /* PHY mode is set to 1000Base-X despite Maxlinear IC being capable of
13 * 2500Base-X since until 5.15 support for mvebu is available trying to
14 * use 2500Base-X will cause buffer overruns for which the fix is not
15 * easily backportable.
16 */
17 &eth0 {
18 phy-mode = "1000base-x";
19 };
20
21 /*
22 * External MV88E6361 switch is only available on v2 of the board.
23 * U-Boot will enable the MDIO bus and switch nodes.
24 */
25 &mdio {
26 status = "disabled";
27 pinctrl-names = "default";
28 pinctrl-0 = <&smi_pins>;
29
30 /* Actual device is MV88E6361 */
31 switch: switch@0 {
32 compatible = "marvell,mv88e6190";
33 #address-cells = <1>;
34 #size-cells = <0>;
35 reg = <0>;
36 status = "disabled";
37
38 ports {
39 #address-cells = <1>;
40 #size-cells = <0>;
41
42 port@0 {
43 reg = <0>;
44 label = "cpu";
45 phy-mode = "2500base-x";
46 managed = "in-band-status";
47 ethernet = <&eth0>;
48 };
49
50 port@9 {
51 reg = <9>;
52 label = "downlink";
53 phy-mode = "2500base-x";
54 managed = "in-band-status";
55 };
56
57 port@a {
58 reg = <10>;
59 label = "uplink";
60 phy-mode = "2500base-x";
61 managed = "in-band-status";
62 sfp = <&sfp_eth1>;
63 };
64 };
65 };
66 };