GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm / boot / dts / kirkwood-mv88f6281gtw-ge.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Marvell 88F6281 GTW GE Board
4  *
5  * Lennert Buytenhek <buytenh@marvell.com>
6  * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
7  *
8  * This file contains the definitions that are common between the 6281
9  * and 6282 variants of the Marvell Kirkwood Development Board.
10  */
11
12 /dts-v1/;
13
14 #include "kirkwood.dtsi"
15 #include "kirkwood-6281.dtsi"
16
17 / {
18         model = "Marvell 88F6281 GTW GE Board";
19         compatible = "marvell,mv88f6281gtw-ge", "marvell,kirkwood-88f6281", "marvell,kirkwood";
20
21         memory {
22                 device_type = "memory";
23                 reg = <0x00000000 0x20000000>; /* 512 MB */
24         };
25
26         chosen {
27                 bootargs = "console=ttyS0,115200n8 earlyprintk";
28                 stdout-path = &uart0;
29         };
30
31         ocp@f1000000 {
32                 pin-controller@10000 {
33                         pmx_usb_led: pmx-usb-led {
34                                 marvell,pins = "mpp12";
35                                 marvell,function = "gpo";
36                         };
37
38                         pmx_leds: pmx-leds {
39                                 marvell,pins = "mpp20", "mpp21";
40                                 marvell,function = "gpio";
41                         };
42
43                         pmx_keys: pmx-keys {
44                                 marvell,pins = "mpp46", "mpp47";
45                                 marvell,function = "gpio";
46                         };
47                 };
48
49                 spi@10600 {
50                         status = "okay";
51
52                         flash@0 {
53                                 #address-cells = <1>;
54                                 #size-cells = <1>;
55                                 compatible = "mxicy,mx25l12805d", "jedec,spi-nor";
56                                 reg = <0>;
57                                 spi-max-frequency = <50000000>;
58                                 mode = <0>;
59                         };
60                 };
61
62                 serial@12000 {
63                         status = "okay";
64                 };
65
66                 ehci@50000 {
67                         status = "okay";
68                 };
69         };
70
71         gpio-leds {
72                 compatible = "gpio-leds";
73                 pinctrl-0 = <&pmx_leds &pmx_usb_led>;
74                 pinctrl-names = "default";
75
76                 green-status {
77                         label = "gtw:green:Status";
78                         gpios = <&gpio0 20 GPIO_ACTIVE_HIGH>;
79                 };
80
81                 red-status {
82                         label = "gtw:red:Status";
83                         gpios = <&gpio0 21 GPIO_ACTIVE_HIGH>;
84                 };
85
86                 green-usb {
87                         label = "gtw:green:USB";
88                         gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
89                 };
90         };
91
92         gpio_keys {
93                 compatible = "gpio-keys";
94                 #address-cells = <1>;
95                 #size-cells = <0>;
96                 pinctrl-0 = <&pmx_keys>;
97                 pinctrl-names = "default";
98
99                 restart {
100                         label = "SWR Button";
101                         linux,code = <KEY_RESTART>;
102                         gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
103                 };
104                 wps {
105                         label = "WPS Button";
106                         linux,code = <KEY_WPS_BUTTON>;
107                         gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
108                 };
109         };
110
111         dsa {
112                 status = "disabled";
113
114                 compatible = "marvell,dsa";
115                 #address-cells = <1>;
116                 #size-cells = <0>;
117
118                 dsa,ethernet = <&eth0port>;
119                 dsa,mii-bus = <&mdio>;
120
121                 switch@0 {
122                         #address-cells = <1>;
123                         #size-cells = <0>;
124                         reg = <0 0>;    /* MDIO address 0, switch 0 in tree */
125
126                         port@0 {
127                                 reg = <0>;
128                                 label = "lan1";
129                         };
130
131                         port@1 {
132                                 reg = <1>;
133                                 label = "lan2";
134                         };
135
136                         port@2 {
137                                 reg = <2>;
138                                 label = "lan3";
139                         };
140
141                         port@3 {
142                                 reg = <3>;
143                                 label = "lan4";
144                         };
145
146                         port@4 {
147                                 reg = <4>;
148                                 label = "wan";
149                         };
150
151                         port@5 {
152                                 reg = <5>;
153                                 label = "cpu";
154                         };
155                 };
156         };
157 };
158
159 &mdio {
160         status = "okay";
161
162         switch@0 {
163                 compatible = "marvell,mv88e6085";
164                 #address-cells = <1>;
165                 #size-cells = <0>;
166                 reg = <0>;
167
168                 ports {
169                         #address-cells = <1>;
170                         #size-cells = <0>;
171
172                         port@0 {
173                                 reg = <0>;
174                                 label = "lan1";
175                         };
176
177                         port@1 {
178                                 reg = <1>;
179                                 label = "lan2";
180                         };
181
182                         port@2 {
183                                 reg = <2>;
184                                 label = "lan3";
185                         };
186
187                         port@3 {
188                                 reg = <3>;
189                                 label = "lan4";
190                         };
191
192                         port@4 {
193                                 reg = <4>;
194                                 label = "wan";
195                         };
196
197                         port@5 {
198                                 reg = <5>;
199                                 label = "cpu";
200                                 ethernet = <&eth0port>;
201                                 fixed-link {
202                                         speed = <1000>;
203                                         full-duplex;
204                                 };
205                         };
206                 };
207         };
208 };
209
210 &eth0 {
211         status = "okay";
212
213         ethernet0-port@0 {
214                 speed = <1000>;
215                 duplex = <1>;
216         };
217 };
218
219 &pciec {
220         status = "okay";
221 };
222
223 &pcie0 {
224         status = "okay";
225 };