1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Device Tree file for ESPRESSObin-Ultra board.
4 * Copyright (C) 2019 Globalscale technologies, Inc.
5 *
6 * Jason Hung <jhung@globalscaletechnologies.com>
7 */
8
9/dts-v1/;
10
11#include "armada-3720-espressobin.dtsi"
12
13/ {
14	model = "Globalscale Marvell ESPRESSOBin Ultra Board";
15	compatible = "globalscale,espressobin-ultra", "globalscale,espressobin",
16		     "marvell,armada3720", "marvell,armada3700";
17
18	aliases {
19		/* ethernet1 is WAN port */
20		ethernet1 = &switch0port5;
21		ethernet2 = &switch0port1;
22		ethernet3 = &switch0port2;
23		ethernet4 = &switch0port3;
24		ethernet5 = &switch0port4;
25	};
26
27	/delete-node/ regulator;
28
29	reg_usb3_vbus: usb3-vbus {
30		compatible = "regulator-fixed";
31		regulator-name = "usb3-vbus";
32		regulator-min-microvolt = <5000000>;
33		regulator-max-microvolt = <5000000>;
34		enable-active-high;
35		gpio = <&gpionb 19 GPIO_ACTIVE_HIGH>;
36	};
37
38	usb3_phy: usb3-phy {
39		compatible = "usb-nop-xceiv";
40		vcc-supply = <&reg_usb3_vbus>;
41	};
42
43	gpio-leds {
44		pinctrl-names = "default";
45		compatible = "gpio-leds";
46		/* No assigned functions to the LEDs by default */
47		led1 {
48			label = "ebin-ultra:blue:led1";
49			gpios = <&gpionb 11 GPIO_ACTIVE_LOW>;
50		};
51		led2 {
52			label = "ebin-ultra:green:led2";
53			gpios = <&gpionb 12 GPIO_ACTIVE_LOW>;
54		};
55		led3 {
56			label = "ebin-ultra:red:led3";
57			gpios = <&gpionb 13 GPIO_ACTIVE_LOW>;
58		};
59		led4 {
60			label = "ebin-ultra:yellow:led4";
61			gpios = <&gpionb 14 GPIO_ACTIVE_LOW>;
62		};
63	};
64};
65
66&sdhci0 {
67	status = "okay";
68};
69
70&sdhci1 {
71	/delete-property/ vqmmc-supply;
72	status = "disabled";
73};
74
75&spi0 {
76	flash@0 {
77		partitions {
78			compatible = "fixed-partitions";
79			#address-cells = <1>;
80			#size-cells = <1>;
81
82			partition@0 {
83				label = "firmware";
84				reg = <0x0 0x3e0000>;
85			};
86			partition@3e0000 {
87				label = "hw-info";
88				reg = <0x3e0000 0x10000>;
89				read-only;
90			};
91			partition@3f0000 {
92				label = "u-boot-env";
93				reg = <0x3f0000 0x10000>;
94			};
95		};
96	};
97};
98
99&i2c0 {
100	status = "okay";
101	pinctrl-names = "default";
102	pinctrl-0 = <&i2c1_pins>;
103
104	clock-frequency = <100000>;
105
106	rtc@51 {
107		compatible = "nxp,pcf8563";
108		reg = <0x51>;
109	};
110};
111
112&usb3 {
113	usb-phy = <&usb3_phy>;
114};
115
116&mdio {
117	extphy: ethernet-phy@1 {
118		reg = <1>;
119
120		reset-gpios = <&gpionb 2 GPIO_ACTIVE_LOW>;
121	};
122};
123
124&switch0 {
125	reg = <3>;
126
127	reset-gpios = <&gpiosb 23 GPIO_ACTIVE_LOW>;
128
129	ports {
130		switch0port1: port@1 {
131			reg = <1>;
132			label = "lan0";
133			phy-handle = <&switch0phy0>;
134		};
135
136		switch0port2: port@2 {
137			reg = <2>;
138			label = "lan1";
139			phy-handle = <&switch0phy1>;
140		};
141
142		switch0port3: port@3 {
143			reg = <3>;
144			label = "lan2";
145			phy-handle = <&switch0phy2>;
146		};
147
148		switch0port4: port@4 {
149			reg = <4>;
150			label = "lan3";
151			phy-handle = <&switch0phy3>;
152		};
153
154		switch0port5: port@5 {
155			reg = <5>;
156			label = "wan";
157			phy-handle = <&extphy>;
158			phy-mode = "sgmii";
159		};
160	};
161
162	mdio {
163		switch0phy3: switch0phy3@14 {
164			reg = <0x14>;
165		};
166	};
167};
168