lantiq: convert mtd-mac-address to nvmem implementation
[openwrt/openwrt.git] / target / linux / lantiq / files / arch / mips / boot / dts / lantiq / danube_arcadyan_arv4518pwr01.dtsi
1 #include "danube.dtsi"
2
3 #include <dt-bindings/input/input.h>
4
5 / {
6 chosen {
7 bootargs = "console=ttyLTQ0,115200";
8 };
9
10 aliases {
11 led-boot = &power;
12 led-failsafe = &power;
13 led-running = &power;
14 led-upgrade = &power;
15
16 led-dsl = &dsl;
17 led-internet = &online;
18 led-usb = &led_usb;
19 led-wifi = &wifi;
20 };
21
22 memory@0 {
23 device_type = "memory";
24 reg = <0x0 0x4000000>;
25 };
26
27 ath5k_eep {
28 compatible = "ath5k,eeprom";
29 ath,eep-flash = <&boardconfig 0x400>;
30 ath,mac-offset = <0x16>;
31 ath,mac-increment = <1>;
32 ath,eep-swap;
33 };
34
35 keys {
36 compatible = "gpio-keys-polled";
37 poll-interval = <100>;
38
39 rfkill {
40 label = "rfkill";
41 gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
42 linux,code = <KEY_RFKILL>;
43 };
44 reset {
45 label = "reset";
46 gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
47 linux,code = <KEY_RESTART>;
48 };
49 };
50
51 leds {
52 compatible = "gpio-leds";
53 power: power {
54 label = "power";
55 gpios = <&gpio 3 GPIO_ACTIVE_HIGH>;
56 default-state = "keep";
57 };
58 dsl: dsl {
59 label = "dsl";
60 gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
61 };
62 online: online {
63 label = "online";
64 gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
65 };
66 wifi: wifi {
67 label = "wifi";
68 gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
69 };
70 wps {
71 label = "wps";
72 gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
73 };
74 dsl2 {
75 label = "dsl2";
76 gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
77 };
78 led_usb: usb {
79 label = "usb";
80 gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
81 };
82 voice {
83 label = "voice";
84 gpios = <&gpiomm 0 GPIO_ACTIVE_LOW>;
85 };
86 fxs1 {
87 label = "fxs1";
88 gpios = <&gpiomm 1 GPIO_ACTIVE_LOW>;
89 };
90 fxs2 {
91 label = "fxs2";
92 gpios = <&gpiomm 2 GPIO_ACTIVE_LOW>;
93 };
94 fxo {
95 label = "fxo";
96 gpios = <&gpiomm 3 GPIO_ACTIVE_LOW>;
97 };
98 };
99
100 usb_vbus: regulator-usb-vbus {
101 compatible = "regulator-fixed";
102
103 regulator-name = "USB_VBUS";
104
105 regulator-min-microvolt = <5000000>;
106 regulator-max-microvolt = <5000000>;
107
108 gpio = <&gpio 14 GPIO_ACTIVE_HIGH>;
109 enable-active-high;
110 };
111 };
112
113 &gpio {
114 pinctrl-names = "default";
115 pinctrl-0 = <&state_default>;
116
117 state_default: pinmux {
118 ebu {
119 lantiq,groups = "ebu cs1";
120 lantiq,function = "ebu";
121 };
122 };
123 };
124
125 &gsw {
126 phy-mode = "mii";
127 nvmem-cells = <&macaddr_boardconfig_16>;
128 nvmem-cell-names = "mac-address";
129 };
130
131 &localbus {
132 flash@0 {
133 compatible = "lantiq,nor";
134 bank-width = <2>;
135 reg = <0 0x0 0x2000000>;
136
137 partitions {
138 compatible = "fixed-partitions";
139 #address-cells = <1>;
140 #size-cells = <1>;
141
142 partition@0 {
143 label = "uboot";
144 reg = <0x00000 0x10000>; /* 64 KB */
145 read-only;
146 };
147
148 partition@10000 {
149 label = "u-boot-env";
150 reg = <0x10000 0x10000>; /* 64 KB */
151 read-only;
152 };
153
154 partition@20000 {
155 label = "firmware";
156 reg = <0x20000 0x3d0000>;
157 };
158
159 boardconfig: partition@3f0000 {
160 label = "boardconfig";
161 reg = <0x3f0000 0x10000>;
162 read-only;
163 };
164 };
165 };
166
167 gpiomm: gpio@1 {
168 compatible = "lantiq,gpio-mm";
169 reg = <1 0x0 0x10 >;
170 #address-cells = <1>;
171 #size-cells = <1>;
172 #gpio-cells = <2>;
173 gpio-controller;
174 lantiq,shadow = <0x0>;
175 };
176 };
177
178 &pci0 {
179 status = "okay";
180
181 pinctrl-0 = <&pci_gnt1_pins>, <&pci_gnt2_pins>,
182 <&pci_req1_pins>, <&pci_req2_pins>;
183 pinctrl-names = "default";
184
185 gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
186 req-mask = <0xf>;
187 };
188
189 &usb_phy {
190 status = "okay";
191 };
192
193 &usb {
194 status = "okay";
195 vbus-supply = <&usb_vbus>;
196 };
197
198 &vmmc {
199 status = "okay";
200 gpios = <&gpio 31 GPIO_ACTIVE_HIGH>;
201 };
202
203 &boardconfig {
204 compatible = "nvmem-cells";
205 #address-cells = <1>;
206 #size-cells = <1>;
207
208 macaddr_boardconfig_16: macaddr@16 {
209 reg = <0x16 0x6>;
210 };
211 };