blob: 327023a477b897f4cfdabb3eefbc043b394327ed [file] [log] [blame]
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +02001/*
2 * Marvell 88F6281 GTW GE Board
3 *
4 * Lennert Buytenhek <buytenh@marvell.com>
5 * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
6 *
7 * This file is licensed under the terms of the GNU General Public
8 * License version 2. This program is licensed "as is" without any
9 * warranty of any kind, whether express or implied.
10 *
11 * This file contains the definitions that are common between the 6281
12 * and 6282 variants of the Marvell Kirkwood Development Board.
13 */
14
15/dts-v1/;
16
Jason Cooperea489af2013-08-06 15:02:24 +000017#include "kirkwood.dtsi"
18#include "kirkwood-6281.dtsi"
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020019
20/ {
21 model = "Marvell 88F6281 GTW GE Board";
22 compatible = "marvell,mv88f6281gtw-ge", "marvell,kirkwood-88f6281", "marvell,kirkwood";
23
24 memory {
25 device_type = "memory";
26 reg = <0x00000000 0x20000000>; /* 512 MB */
27 };
28
29 chosen {
30 bootargs = "console=ttyS0,115200n8 earlyprintk";
Sebastian Hesselbarthab833612014-04-30 14:56:30 +020031 stdout-path = &uart0;
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020032 };
33
34 ocp@f1000000 {
Sebastian Hesselbartha9483962014-04-30 14:56:32 +020035 pin-controller@10000 {
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020036 pmx_usb_led: pmx-usb-led {
37 marvell,pins = "mpp12";
38 marvell,function = "gpo";
39 };
40
41 pmx_leds: pmx-leds {
42 marvell,pins = "mpp20", "mpp21";
43 marvell,function = "gpio";
44 };
45
46 pmx_keys: pmx-keys {
47 marvell,pins = "mpp46", "mpp47";
48 marvell,function = "gpio";
49 };
50 };
51
52 spi@10600 {
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020053 status = "okay";
54
55 flash@0 {
56 #address-cells = <1>;
57 #size-cells = <1>;
Rafał Miłecki943d45a2015-05-19 13:40:16 +020058 compatible = "mxicy,mx25l12805d", "jedec,spi-nor";
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020059 reg = <0>;
60 spi-max-frequency = <50000000>;
61 mode = <0>;
62 };
63 };
64
65 serial@12000 {
Sebastian Hesselbarth9f2339a2014-04-30 14:56:36 +020066 status = "okay";
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020067 };
68
69 ehci@50000 {
70 status = "okay";
71 };
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020072 };
73
74 gpio-leds {
75 compatible = "gpio-leds";
76 pinctrl-0 = <&pmx_leds &pmx_usb_led>;
77 pinctrl-names = "default";
78
79 green-status {
80 label = "gtw:green:Status";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +010081 gpios = <&gpio0 20 GPIO_ACTIVE_HIGH>;
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020082 };
83
84 red-status {
85 label = "gtw:red:Status";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +010086 gpios = <&gpio0 21 GPIO_ACTIVE_HIGH>;
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020087 };
88
89 green-usb {
90 label = "gtw:green:USB";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +010091 gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +020092 };
93 };
94
95 gpio_keys {
96 compatible = "gpio-keys";
97 #address-cells = <1>;
98 #size-cells = <0>;
99 pinctrl-0 = <&pmx_keys>;
100 pinctrl-names = "default";
101
Andrew Lunn395c7552016-04-03 04:03:43 +0200102 restart {
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +0200103 label = "SWR Button";
Andrew Lunn23301192013-12-04 16:51:38 +0100104 linux,code = <KEY_RESTART>;
Andrew Lunn3a31f2d72013-12-04 16:51:39 +0100105 gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +0200106 };
Andrew Lunn395c7552016-04-03 04:03:43 +0200107 wps {
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +0200108 label = "WPS Button";
Andrew Lunn23301192013-12-04 16:51:38 +0100109 linux,code = <KEY_WPS_BUTTON>;
Andrew Lunn3a31f2d72013-12-04 16:51:39 +0100110 gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +0200111 };
112 };
Andrew Lunne7c8f382014-02-22 20:14:45 +0100113
Andrew Lunn689168a2016-04-03 04:03:45 +0200114 dsa {
Florian Fainellicd0cc112017-01-17 10:22:23 -0800115 status = "disabled";
116
Andrew Lunne7c8f382014-02-22 20:14:45 +0100117 compatible = "marvell,dsa";
Andrew Lunn4f5e01e2014-09-01 19:35:41 +0200118 #address-cells = <1>;
Andrew Lunne7c8f382014-02-22 20:14:45 +0100119 #size-cells = <0>;
120
Andrew Lunn4f5e01e2014-09-01 19:35:41 +0200121 dsa,ethernet = <&eth0port>;
122 dsa,mii-bus = <&mdio>;
Andrew Lunne7c8f382014-02-22 20:14:45 +0100123
124 switch@0 {
125 #address-cells = <1>;
126 #size-cells = <0>;
127 reg = <0 0>; /* MDIO address 0, switch 0 in tree */
128
129 port@0 {
130 reg = <0>;
131 label = "lan1";
132 };
133
134 port@1 {
135 reg = <1>;
136 label = "lan2";
137 };
138
139 port@2 {
140 reg = <2>;
141 label = "lan3";
142 };
143
144 port@3 {
145 reg = <3>;
146 label = "lan4";
147 };
148
149 port@4 {
150 reg = <4>;
151 label = "wan";
152 };
153
154 port@5 {
155 reg = <5>;
156 label = "cpu";
157 };
158 };
159 };
160};
161
162&mdio {
163 status = "okay";
Florian Fainellicd0cc112017-01-17 10:22:23 -0800164
165 switch@0 {
166 compatible = "marvell,mv88e6085";
167 #address-cells = <1>;
168 #size-cells = <0>;
169 reg = <0>;
170
171 ports {
172 #address-cells = <1>;
173 #size-cells = <0>;
174
175 port@0 {
176 reg = <0>;
177 label = "lan1";
178 };
179
180 port@1 {
181 reg = <1>;
182 label = "lan2";
183 };
184
185 port@2 {
186 reg = <2>;
187 label = "lan3";
188 };
189
190 port@3 {
191 reg = <3>;
192 label = "lan4";
193 };
194
195 port@4 {
196 reg = <4>;
197 label = "wan";
198 };
199
200 port@5 {
201 reg = <5>;
202 label = "cpu";
203 ethernet = <&eth0port>;
204 fixed-link {
205 speed = <1000>;
206 full-duplex;
207 };
208 };
209 };
210 };
Andrew Lunne7c8f382014-02-22 20:14:45 +0100211};
212
213&eth0 {
214 status = "okay";
Andrew Lunn4f5e01e2014-09-01 19:35:41 +0200215
Andrew Lunne7c8f382014-02-22 20:14:45 +0100216 ethernet0-port@0 {
Andrew Lunn4f5e01e2014-09-01 19:35:41 +0200217 speed = <1000>;
218 duplex = <1>;
Andrew Lunne7c8f382014-02-22 20:14:45 +0100219 };
Thomas Petazzoni37ae08c2013-08-01 17:07:32 +0200220};
Andrew Lunneb13cf82016-04-03 04:03:47 +0200221
222&pciec {
223 status = "okay";
224};
225
226&pcie0 {
227 status = "okay";
228};