ramips: mt7621: convert to nvmem-layout
[openwrt/staging/hauke.git] / target / linux / ramips / dts / mt7621_tplink_eap235-wall-v1.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later
2
3 #include "mt7621.dtsi"
4
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/input/input.h>
7 #include <dt-bindings/leds/common.h>
8
9 / {
10 compatible = "tplink,eap235-wall-v1", "mediatek,mt7621-soc";
11 model = "TP-Link EAP235-Wall v1";
12
13 aliases {
14 label-mac-device = &gmac0;
15 led-boot = &led_status;
16 led-failsafe = &led_status;
17 led-running = &led_status;
18 led-upgrade = &led_status;
19 };
20
21 leds {
22 compatible = "gpio-leds";
23
24 led_status: status {
25 label = "white:status";
26 color = <LED_COLOR_ID_WHITE>;
27 function = LED_FUNCTION_STATUS;
28 gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
29 };
30 };
31
32 keys {
33 compatible = "gpio-keys";
34
35 led {
36 label = "led";
37 gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
38 linux,code = <KEY_LIGHTS_TOGGLE>;
39 };
40
41 reset {
42 label = "reset";
43 gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
44 linux,code = <KEY_RESTART>;
45 };
46 };
47
48 gpio-export {
49 compatible = "gpio-export";
50
51 poe_passthrough {
52 gpio-export,name = "poe-passthrough";
53 gpio-export,output = <0>;
54 gpios = <&gpio 7 GPIO_ACTIVE_HIGH>;
55 };
56 };
57 };
58
59 &spi0 {
60 status = "okay";
61
62 flash@0 {
63 compatible = "jedec,spi-nor";
64 reg = <0>;
65 spi-max-frequency = <20000000>;
66
67 partitions {
68 compatible = "fixed-partitions";
69 #address-cells = <1>;
70 #size-cells = <1>;
71
72 partition@0 {
73 label = "u-boot";
74 reg = <0x00000 0x80000>;
75 read-only;
76 };
77
78 partition@80000 {
79 label = "partition-table";
80 reg = <0x80000 0x10000>;
81 read-only;
82 };
83
84 info: partition@90000 {
85 label = "product-info";
86 reg = <0x90000 0x10000>;
87 read-only;
88
89 nvmem-layout {
90 compatible = "fixed-layout";
91 #address-cells = <1>;
92 #size-cells = <1>;
93
94 macaddr_info_8: macaddr@8 {
95 reg = <0x8 0x6>;
96 };
97 };
98 };
99
100 partition@a0000 {
101 compatible = "tplink,firmware";
102 label = "firmware";
103 reg = <0x0a0000 0xd20000>;
104 };
105
106 partition@dc0000 {
107 label = "user-config";
108 reg = <0xdc0000 0x030000>;
109 read-only;
110 };
111
112 /* 0xdf0000 - 0xf30000 unused */
113
114 partition@f30000 {
115 label = "mutil-log";
116 reg = <0xf30000 0x080000>;
117 read-only;
118 };
119
120 partition@fb0000 {
121 label = "oops";
122 reg = <0xfb0000 0x040000>;
123 read-only;
124 };
125
126 radio: partition@ff0000 {
127 label = "radio";
128 reg = <0xff0000 0x010000>;
129 read-only;
130
131 nvmem-layout {
132 compatible = "fixed-layout";
133 #address-cells = <1>;
134 #size-cells = <1>;
135
136 eeprom_radio_0: eeprom@0 {
137 reg = <0x0 0x400>;
138 };
139
140 eeprom_radio_8000: eeprom@8000 {
141 reg = <0x8000 0x4da8>;
142 };
143 };
144 };
145 };
146 };
147 };
148
149 &state_default {
150 gpio {
151 groups = "uart2", "uart3";
152 function = "gpio";
153 };
154 };
155
156 &pcie {
157 status = "okay";
158 };
159
160 &pcie0 {
161 wifi@0,0 {
162 reg = <0x0000 0 0 0 0>;
163 nvmem-cells = <&eeprom_radio_0>, <&macaddr_info_8>;
164 nvmem-cell-names = "eeprom", "mac-address";
165 };
166 };
167
168 &pcie1 {
169 wifi@0,0 {
170 reg = <0x0000 0 0 0 0>;
171 ieee80211-freq-limit = <5000000 6000000>;
172 nvmem-cells = <&eeprom_radio_8000>, <&macaddr_info_8>;
173 nvmem-cell-names = "eeprom", "mac-address";
174 mac-address-increment = <1>;
175 };
176 };
177
178 &gmac0 {
179 nvmem-cells = <&macaddr_info_8>;
180 nvmem-cell-names = "mac-address";
181 };
182
183 &gmac1 {
184 status = "okay";
185 label = "lan0";
186 phy-handle = <&ethphy0>;
187
188 nvmem-cells = <&macaddr_info_8>;
189 nvmem-cell-names = "mac-address";
190 };
191
192 &mdio {
193 ethphy0: ethernet-phy@0 {
194 reg = <0>;
195 };
196 };
197
198 &switch0 {
199 ports {
200 port@1 {
201 status = "okay";
202 label = "lan3";
203 };
204
205 port@2 {
206 status = "okay";
207 label = "lan2";
208 };
209
210 port@3 {
211 status = "okay";
212 label = "lan1";
213 };
214 };
215 };