acf15e8ca96d446ae5a61f8daca3bb8e37acfea5
[openwrt/openwrt.git] / target / linux / mvebu / files / arch / arm64 / boot / dts / marvell / armada-3720-gl-mv1000.dts
1 // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
2
3 /dts-v1/;
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/input/input.h>
6 #include "armada-372x.dtsi"
7
8 / {
9 model = "GL.iNet GL-MV1000";
10 compatible = "glinet,gl-mv1000", "marvell,armada3720";
11
12 aliases {
13 led-boot = &led_power;
14 led-failsafe = &led_power;
15 led-running = &led_power;
16 led-upgrade = &led_power;
17 };
18
19 chosen {
20 stdout-path = "serial0:115200n8";
21 };
22
23 memory@0 {
24 device_type = "memory";
25 reg = <0x00000000 0x00000000 0x00000000 0x20000000>;
26 };
27
28 vcc_sd_reg1: regulator {
29 compatible = "regulator-gpio";
30 regulator-name = "vcc_sd1";
31 regulator-min-microvolt = <1800000>;
32 regulator-max-microvolt = <3300000>;
33 regulator-boot-on;
34
35 gpios-states = <0>;
36 states = <1800000 0x1
37 3300000 0x0>;
38 enable-active-high;
39 };
40
41 keys {
42 compatible = "gpio-keys";
43
44 reset {
45 label = "reset";
46 linux,code = <KEY_RESTART>;
47 gpios = <&gpionb 14 GPIO_ACTIVE_LOW>;
48 };
49
50 switch {
51 label = "switch";
52 linux,code = <BTN_0>;
53 gpios = <&gpiosb 22 GPIO_ACTIVE_LOW>;
54 };
55 };
56
57 leds {
58 compatible = "gpio-leds";
59
60 vpn {
61 label = "green:vpn";
62 gpios = <&gpionb 11 GPIO_ACTIVE_LOW>;
63 };
64
65 wan {
66 label = "green:wan";
67 gpios = <&gpionb 12 GPIO_ACTIVE_LOW>;
68 };
69
70 led_power: power {
71 label = "green:power";
72 gpios = <&gpionb 13 GPIO_ACTIVE_LOW>;
73 default-state = "on";
74 };
75 };
76 };
77
78 &spi0 {
79 status = "okay";
80
81 flash@0 {
82 reg = <0>;
83 compatible = "jedec,spi-nor";
84 spi-max-frequency = <104000000>;
85 m25p,fast-read;
86 partitions {
87 compatible = "fixed-partitions";
88 #address-cells = <1>;
89 #size-cells = <1>;
90
91 partition@0 {
92 label = "u-boot";
93 reg = <0 0xf0000>;
94 read-only;
95 };
96
97 partition@f0000 {
98 label = "u-boot-env";
99 reg = <0Xf0000 0x8000>;
100 read-only;
101 };
102
103 factory: partition@f8000 {
104 label = "factory";
105 reg = <0xf8000 0x8000>;
106 read-only;
107 };
108 };
109 };
110 };
111
112 &sdhci1 {
113 wp-inverted;
114 bus-width = <4>;
115 cd-gpios = <&gpionb 17 GPIO_ACTIVE_LOW>;
116 marvell,pad-type = "sd";
117 no-1-8-v;
118 vqmmc-supply = <&vcc_sd_reg1>;
119 status = "okay";
120 };
121
122 &sdhci0 {
123 bus-width = <8>;
124 mmc-ddr-1_8v;
125 mmc-hs400-1_8v;
126 non-removable;
127 no-sd;
128 no-sdio;
129 marvell,pad-type = "fixed-1-8v";
130 status = "okay";
131 };
132
133 &usb3 {
134 status = "okay";
135 };
136
137 &usb2 {
138 status = "okay";
139 };
140
141 &uart0 {
142 status = "okay";
143 };
144
145 &mdio {
146 switch0: switch0@1 {
147 compatible = "marvell,mv88e6085";
148 #address-cells = <1>;
149 #size-cells = <0>;
150 reg = <1>;
151
152 dsa,member = <0 0>;
153
154 ports: ports {
155 #address-cells = <1>;
156 #size-cells = <0>;
157
158 port@0 {
159 reg = <0>;
160 label = "cpu";
161 ethernet = <&eth0>;
162 };
163
164 port@1 {
165 reg = <1>;
166 label = "wan";
167 phy-handle = <&switch0phy0>;
168 };
169
170 port@2 {
171 reg = <2>;
172 label = "lan0";
173 phy-handle = <&switch0phy1>;
174
175 nvmem-cells = <&macaddr_factory_6>;
176 nvmem-cell-names = "mac-address";
177 };
178
179 port@3 {
180 reg = <3>;
181 label = "lan1";
182 phy-handle = <&switch0phy2>;
183
184 nvmem-cells = <&macaddr_factory_6>;
185 nvmem-cell-names = "mac-address";
186 };
187 };
188
189 mdio {
190 #address-cells = <1>;
191 #size-cells = <0>;
192
193 switch0phy0: switch0phy0@11 {
194 reg = <0x11>;
195 };
196 switch0phy1: switch0phy1@12 {
197 reg = <0x12>;
198 };
199 switch0phy2: switch0phy2@13 {
200 reg = <0x13>;
201 };
202 };
203 };
204 };
205
206 &eth0 {
207 nvmem-cells = <&macaddr_factory_0>;
208 nvmem-cell-names = "mac-address";
209 phy-mode = "rgmii-id";
210 status = "okay";
211
212 fixed-link {
213 speed = <1000>;
214 full-duplex;
215 };
216 };
217
218 &factory {
219 compatible = "nvmem-cells";
220 #address-cells = <1>;
221 #size-cells = <1>;
222
223 macaddr_factory_0: macaddr@0 {
224 reg = <0x0 0x6>;
225 };
226
227 macaddr_factory_6: macaddr@6 {
228 reg = <0x6 0x6>;
229 };
230 };