Merge tag 'mfd-for-linus-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / kirkwood-mv88f6281gtw-ge.dts
1 /*
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
17 #include "kirkwood.dtsi"
18 #include "kirkwood-6281.dtsi"
19
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";
31         };
32
33         ocp@f1000000 {
34                 pinctrl@10000 {
35                         pmx_usb_led: pmx-usb-led {
36                                 marvell,pins = "mpp12";
37                                 marvell,function = "gpo";
38                         };
39
40                         pmx_leds: pmx-leds {
41                                 marvell,pins = "mpp20", "mpp21";
42                                 marvell,function = "gpio";
43                         };
44
45                         pmx_keys: pmx-keys {
46                                 marvell,pins = "mpp46", "mpp47";
47                                 marvell,function = "gpio";
48                         };
49                 };
50
51                 spi@10600 {
52                         pinctrl-0 = <&pmx_spi>;
53                         pinctrl-names = "default";
54                         status = "okay";
55
56                         flash@0 {
57                                 #address-cells = <1>;
58                                 #size-cells = <1>;
59                                 compatible = "mx25l12805d";
60                                 reg = <0>;
61                                 spi-max-frequency = <50000000>;
62                                 mode = <0>;
63                         };
64                 };
65
66                 serial@12000 {
67                         pinctrl-0 = <&pmx_uart0>;
68                         pinctrl-names = "default";
69                         clock-frequency = <200000000>;
70                         status = "ok";
71                 };
72
73                 ehci@50000 {
74                         status = "okay";
75                 };
76
77                 pcie-controller {
78                         status = "okay";
79
80                         pcie@1,0 {
81                                 status = "okay";
82                         };
83                 };
84         };
85
86         gpio-leds {
87                 compatible = "gpio-leds";
88                 pinctrl-0 = <&pmx_leds &pmx_usb_led>;
89                 pinctrl-names = "default";
90
91                 green-status {
92                         label = "gtw:green:Status";
93                         gpios = <&gpio0 20 GPIO_ACTIVE_HIGH>;
94                 };
95
96                 red-status {
97                         label = "gtw:red:Status";
98                         gpios = <&gpio0 21 GPIO_ACTIVE_HIGH>;
99                 };
100
101                 green-usb {
102                         label = "gtw:green:USB";
103                         gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
104                 };
105         };
106
107         gpio_keys {
108                 compatible = "gpio-keys";
109                 #address-cells = <1>;
110                 #size-cells = <0>;
111                 pinctrl-0 = <&pmx_keys>;
112                 pinctrl-names = "default";
113
114                 button@1 {
115                         label = "SWR Button";
116                         linux,code = <KEY_RESTART>;
117                         gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
118                 };
119                 button@2 {
120                         label = "WPS Button";
121                         linux,code = <KEY_WPS_BUTTON>;
122                         gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
123                 };
124         };
125
126         dsa@0 {
127                 compatible = "marvell,dsa";
128                 #address-cells = <2>;
129                 #size-cells = <0>;
130
131                 dsa,ethernet = <&eth0>;
132                 dsa,mii-bus = <&ethphy0>;
133
134                 switch@0 {
135                         #address-cells = <1>;
136                         #size-cells = <0>;
137                         reg = <0 0>;    /* MDIO address 0, switch 0 in tree */
138
139                         port@0 {
140                                 reg = <0>;
141                                 label = "lan1";
142                         };
143
144                         port@1 {
145                                 reg = <1>;
146                                 label = "lan2";
147                         };
148
149                         port@2 {
150                                 reg = <2>;
151                                 label = "lan3";
152                         };
153
154                         port@3 {
155                                 reg = <3>;
156                                 label = "lan4";
157                         };
158
159                         port@4 {
160                                 reg = <4>;
161                                 label = "wan";
162                         };
163
164                         port@5 {
165                                 reg = <5>;
166                                 label = "cpu";
167                         };
168                 };
169         };
170 };
171
172 &mdio {
173         status = "okay";
174
175         ethphy0: ethernet-phy@ff {
176                 reg = <0xff>;   /* No phy attached */
177                 speed = <1000>;
178                 duplex = <1>;
179         };
180 };
181
182 &eth0 {
183         status = "okay";
184         ethernet0-port@0 {
185                 phy-handle = <&ethphy0>;
186         };
187 };