3d14f98ba485b7dbb388201de077f94394570d0f
[oweals/openwrt.git] / target / linux / lantiq / files / arch / mips / boot / dts / DM200.dts
1 /dts-v1/;
2
3 #include "vr9.dtsi"
4
5 #include <dt-bindings/input/input.h>
6 #include <dt-bindings/mips/lantiq_rcu_gphy.h>
7
8 / {
9         compatible = "netgear,dm200", "lantiq,xway", "lantiq,vr9";
10         model = "Netgear DM200";
11
12         chosen {
13                 bootargs = "console=ttyLTQ0,115200";
14         };
15
16         aliases {
17                 led-boot = &power_green;
18                 led-failsafe = &power_amber;
19                 led-running = &power_green;
20                 led-upgrade = &power_green;
21
22                 led-dsl = &dsl_green;
23         };
24
25         memory@0 {
26                 device_type = "memory";
27                 reg = <0x0 0x4000000>;
28         };
29
30         gpio-keys-polled {
31                 compatible = "gpio-keys-polled";
32                 poll-interval = <100>;
33                 reset {
34                         label = "reset";
35                         gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
36                         linux,code = <KEY_RESTART>;
37                 };
38         };
39
40         gpio_export {
41                 compatible = "gpio-export";
42                 #size-cells = <0>;
43
44                 annexa {
45                         gpio-export,name = "annexa";
46                         gpio-export,output = <0>;
47                         gpios = <&gpio 12 GPIO_ACTIVE_HIGH>;
48                 };
49                 annexb {
50                         gpio-export,name = "annexb";
51                         gpio-export,output = <0>;
52                         gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
53                 };
54         };
55
56         gpio-leds {
57                 compatible = "gpio-leds";
58
59                 power_amber: power_amber {
60                         label = "dm200:amber:power";
61                         gpios = <&gpio 0 GPIO_ACTIVE_HIGH>;
62                 };
63                 power_green: power_green {
64                         label = "dm200:green:power";
65                         gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
66                 };
67
68                 lan_amber {
69                         label = "dm200:amber:lan";
70                         gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
71                 };
72                 lan_green {
73                         label = "dm200:green:lan";
74                         gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
75                 };
76
77                 dsl_amber {
78                         label = "dm200:amber:dsl";
79                         gpios = <&gpio 8 GPIO_ACTIVE_HIGH>;
80                 };
81                 dsl_green: dsl_green {
82                         label = "dm200:green:dsl";
83                         gpios = <&gpio 36 GPIO_ACTIVE_HIGH>;
84                 };
85         };
86 };
87
88 &eth0 {
89         lantiq,phys = <&gphy1>;
90
91         lan: interface@0 {
92                 compatible = "lantiq,xrx200-pdi";
93                 #address-cells = <1>;
94                 #size-cells = <0>;
95                 reg = <0>;
96
97                 ethernet@4 {
98                         compatible = "lantiq,xrx200-pdi-port";
99                         reg = <4>;
100                         phy-mode = "mii";
101                         phy-handle = <&phy13>;
102                 };
103         };
104
105         mdio {
106                 #address-cells = <1>;
107                 #size-cells = <0>;
108                 compatible = "lantiq,xrx200-mdio";
109
110                 phy13: ethernet-phy@13 {
111                         reg = <0x13>;
112                         compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22";
113                 };
114         };
115 };
116
117 &gphy1 {
118         lantiq,gphy-mode = <GPHY_MODE_FE>;
119 };
120
121 &gpio {
122         pinctrl-names = "default";
123         pinctrl-0 = <&state_default>;
124
125         state_default: pinmux {
126                 mdio {
127                         lantiq,groups = "mdio";
128                         lantiq,function = "mdio";
129                 };
130         };
131
132         pins_spi_default: pins_spi_default {
133                 spi_in {
134                         lantiq,groups = "spi_di";
135                         lantiq,function = "spi";
136                 };
137                 spi_out {
138                         lantiq,groups = "spi_do", "spi_clk", "spi_cs4";
139                         lantiq,function = "spi";
140                         lantiq,output = <1>;
141                 };
142         };
143 };
144
145 &pcie0 {
146         status = "disabled";
147 };
148
149 &spi {
150         status = "okay";
151
152         pinctrl-names = "default";
153         pinctrl-0 = <&pins_spi_default>;
154
155         m25p80@4 {
156                 compatible = "jedec,spi-nor";
157                 reg = <4>;
158                 spi-max-frequency = <10000000>;
159
160                 partitions {
161                         #address-cells = <1>;
162                         #size-cells = <1>;
163                         compatible = "fixed-partitions";
164
165                         partition@0 {
166                                 reg = <0x0 0x20000>;
167                                 label = "uboot";
168                                 read-only;
169                         };
170
171                         partition@20000 {
172                                 reg = <0x20000 0x10000>;
173                                 label = "gphyfirmware";
174                                 read-only;
175                         };
176
177                         partition@30000 {
178                                 reg = <0x30000 0x7b0000>;
179                                 label = "firmware";
180                         };
181
182                         partition@7e0000 {
183                                 reg = <0x7e0000 0x10000>;
184                                 label = "sysconfig";
185                                 read-only;
186                         };
187
188                         partition@7f0000 {
189                                 reg = <0x7f0000 0x2000>;
190                                 label = "ubootconfig";
191                                 read-only;
192                         };
193
194                         partition@7f2000 {
195                                 reg = <0x7f2000 0x1000>;
196                                 label = "ART";
197                                 read-only;
198                         };
199
200                         partition@7f3000 {
201                                 reg = <0x7f3000 0x1000>;
202                                 label = "pot";
203                                 read-only;
204                         };
205
206                         partition@7f4000 {
207                                 reg = <0x7f4000 0xc000>;
208                                 label = "ret";
209                                 read-only;
210                         };
211                 };
212         };
213 };