lantiq: convert mtd-mac-address to nvmem implementation
[openwrt/openwrt.git] / target / linux / lantiq / files / arch / mips / boot / dts / lantiq / danube_arcadyan_arv752dpw.dts
1 #include "danube.dtsi"
2
3 #include <dt-bindings/input/input.h>
4
5 / {
6 compatible = "arcadyan,arv752dpw", "lantiq,xway", "lantiq,danube";
7 model = "Arcor 802";
8
9 chosen {
10 bootargs = "console=ttyLTQ0,115200";
11 };
12
13 aliases {
14 led-boot = &power_red;
15 led-failsafe = &power_blue;
16 led-running = &power_red;
17 led-upgrade = &power_red;
18
19 led-dsl = &internet_red;
20 led-usb = &umts;
21 led-wifi = &wifi;
22
23 label-mac-device = &wifi0;
24 };
25
26 memory@0 {
27 device_type = "memory";
28 reg = <0x0 0x4000000>;
29 };
30
31 keys {
32 compatible = "gpio-keys-polled";
33 poll-interval = <100>;
34
35 wps {
36 label = "wps";
37 gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
38 linux,code = <KEY_WPS_BUTTON>;
39 };
40 restart {
41 label = "restart";
42 gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
43 linux,code = <KEY_POWER>;
44 };
45 dsl {
46 label = "dsl";
47 gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
48 linux,code = <BTN_0>;
49 };
50 reset {
51 label = "reset";
52 gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
53 linux,code = <KEY_RESTART>;
54 };
55 };
56
57 leds {
58 compatible = "gpio-leds";
59 power_blue: power1 {
60 label = "blue:power";
61 gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
62 };
63 internet_red: internet {
64 label = "red:internet";
65 gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
66 };
67 message {
68 label = "red:message";
69 gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
70 };
71 power_red: power {
72 label = "red:power";
73 gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
74 default-state = "keep";
75 };
76 voice1 {
77 label = "red:voice";
78 gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
79 };
80 umts: umts {
81 label = "red:umts";
82 gpios = <&gpiomm 3 GPIO_ACTIVE_LOW>;
83 };
84 wifi: wifi {
85 label = "red:wifi";
86 gpios = <&gpiomm 4 GPIO_ACTIVE_LOW>;
87 };
88 fxs1 {
89 label = "green:tae-n";
90 gpios = <&gpiomm 5 GPIO_ACTIVE_LOW>;
91 };
92 fxs2 {
93 label = "green:tae-u";
94 gpios = <&gpiomm 6 GPIO_ACTIVE_LOW>;
95 };
96 fxo {
97 label = "green:isdn";
98 gpios = <&gpiomm 7 GPIO_ACTIVE_LOW>;
99 };
100 internet2 {
101 label = "blue:internet";
102 gpios = <&gpiomm 8 GPIO_ACTIVE_LOW>;
103 };
104 voice2 {
105 label = "blue:voice";
106 gpios = <&gpiomm 9 GPIO_ACTIVE_LOW>;
107 };
108 };
109
110 usb_vbus: regulator-usb-vbus {
111 compatible = "regulator-fixed";
112
113 regulator-name = "USB_VBUS";
114
115 regulator-min-microvolt = <5000000>;
116 regulator-max-microvolt = <5000000>;
117
118 gpio = <&gpiomm 0 GPIO_ACTIVE_HIGH>;
119 enable-active-high;
120 };
121 };
122
123 &gpio {
124 pinctrl-names = "default";
125 pinctrl-0 = <&state_default>;
126
127 state_default: pinmux {
128 ebu {
129 lantiq,groups = "ebu cs1";
130 lantiq,function = "ebu";
131 };
132 exin {
133 lantiq,groups = "exin1";
134 lantiq,function = "exin";
135 lantiq,pull = <2>;
136 lantiq,output = <0>;
137 };
138 pci_rst {
139 lantiq,pins = "io21";
140 lantiq,pull = <2>;
141 lantiq,output = <1>;
142 };
143 leds {
144 lantiq,pins = "io3", "io5", "io6", "io8";
145 lantiq,output = <1>;
146 lantiq,pull = <0>;
147 };
148 keys {
149 lantiq,pins = "io11", "io12", "io13", "io28";
150 lantiq,output = <0>;
151 lantiq,pull = <2>;
152 lantiq,open-drain = <1>;
153 };
154 };
155 };
156
157 &gsw {
158 phy-mode = "rmii";
159 nvmem-cells = <&macaddr_boardconfig_16>;
160 nvmem-cell-names = "mac-address";
161 };
162
163 &localbus {
164 flash@0 {
165 compatible = "lantiq,nor";
166 bank-width = <2>;
167 reg = <0 0x0 0x800000>;
168
169 partitions {
170 compatible = "fixed-partitions";
171 #address-cells = <1>;
172 #size-cells = <1>;
173
174 partition@0 {
175 label = "uboot";
176 reg = <0x00000 0x10000>;
177 read-only;
178 };
179
180 partition@10000 {
181 label = "u-boot-env";
182 reg = <0x10000 0x10000>;
183 read-only;
184 };
185
186 partition@20000 {
187 label = "firmware";
188 reg = <0x20000 0x7d0000>;
189 };
190
191 boardconfig: partition@7f0000 {
192 label = "board_config";
193 reg = <0x7f0000 0x10000>;
194 read-only;
195 };
196 };
197 };
198
199 gpiomm: gpio@1 {
200 compatible = "lantiq,gpio-mm";
201 reg = <1 0x0 0x10 >;
202 #address-cells = <1>;
203 #size-cells = <1>;
204 #gpio-cells = <2>;
205 gpio-controller;
206 lantiq,shadow = <0x3>;
207 };
208 };
209
210 &pci0 {
211 status = "okay";
212
213 pinctrl-0 = <&pci_gnt1_pins>, <&pci_req1_pins>, <&pci_req2_pins>;
214 pinctrl-names = "default";
215
216 lantiq,external-clock;
217 gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
218 interrupt-map = <0x7000 0 0 1 &icu0 135>;
219 req-mask = <0x3>;
220
221 wifi0: wifi@1814,0601 {
222 compatible = "pci1814,0601";
223 reg = <0x7000 0 0 0 0>;
224 nvmem-cells = <&macaddr_boardconfig_16>;
225 nvmem-cell-names = "mac-address";
226 ralink,mtd-eeprom = <&boardconfig 0x410>;
227 ralink,mtd-eeprom-swap;
228 };
229 };
230
231 &usb_phy {
232 status = "okay";
233 };
234
235 &usb {
236 status = "okay";
237 vbus-supply = <&usb_vbus>;
238 };
239
240 &vmmc {
241 status = "okay";
242 gpios = <&gpiomm 1 GPIO_ACTIVE_HIGH>;
243 };
244
245 &boardconfig {
246 compatible = "nvmem-cells";
247 #address-cells = <1>;
248 #size-cells = <1>;
249
250 macaddr_boardconfig_16: macaddr@16 {
251 reg = <0x16 0x6>;
252 };
253 };