ramips: convert MT7603 EEPROM to NVMEM format
[openwrt/openwrt.git] / target / linux / ramips / dts / mt7621_telco-electronics_x1.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2
3 #include "mt7621.dtsi"
4
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/input/input.h>
7
8 / {
9 compatible = "telco-electronics,x1", "mediatek,mt7621-soc";
10 model = "Telco Electronics X1";
11
12 aliases {
13 led-boot = &system_led;
14 led-failsafe = &system_led;
15 led-running = &system_led;
16 led-upgrade = &system_led;
17 };
18
19 chosen {
20 bootargs = "console=ttyS0,115200";
21 };
22
23 keys {
24 compatible = "gpio-keys";
25
26 reset {
27 label = "reset";
28 gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
29 linux,code = <KEY_RESTART>;
30 };
31 };
32
33 leds {
34 compatible = "gpio-leds";
35
36 system_led: system {
37 label = "green:system";
38 gpios = <&gpio 26 GPIO_ACTIVE_LOW>;
39 };
40
41 modem_offline {
42 label = "red:modem-offline";
43 gpios = <&gpio 23 GPIO_ACTIVE_HIGH>;
44 };
45
46 modem_4g {
47 label = "blue:modem-4g";
48 gpios = <&gpio 24 GPIO_ACTIVE_LOW>;
49 };
50
51 modem_3g {
52 label = "green:modem-3g";
53 gpios = <&gpio 25 GPIO_ACTIVE_LOW>;
54 };
55
56 modem_rssi_lowest {
57 label = "green:modem-rssi-lowest";
58 gpios = <&gpio 27 GPIO_ACTIVE_LOW>;
59 };
60
61 modem_rssi_low {
62 label = "green:modem-rssi-low";
63 gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
64 };
65
66 modem_rssi_medium {
67 label = "green:modem-rssi-medium";
68 gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
69 };
70
71 modem_rssi_high {
72 label = "green:modem-rssi-high";
73 gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
74 };
75
76 modem_rssi_highest {
77 label = "green:modem-rssi-highest";
78 gpios = <&gpio 31 GPIO_ACTIVE_LOW>;
79 };
80 };
81 };
82
83 &spi0 {
84 status = "okay";
85
86 flash@0 {
87 compatible = "jedec,spi-nor";
88 reg = <0>;
89 spi-max-frequency = <14000000>;
90
91 partitions {
92 compatible = "fixed-partitions";
93 #address-cells = <1>;
94 #size-cells = <1>;
95
96 partition@0 {
97 label = "bootloader";
98 reg = <0x0 0x30000>;
99 read-only;
100 };
101
102 partition@30000 {
103 label = "config";
104 reg = <0x30000 0x10000>;
105 read-only;
106 };
107
108 factory: partition@40000 {
109 compatible = "nvmem-cells";
110 label = "factory";
111 reg = <0x40000 0x10000>;
112 #address-cells = <1>;
113 #size-cells = <1>;
114 read-only;
115
116 eeprom_factory_0: eeprom@0 {
117 reg = <0x0 0x400>;
118 };
119
120 macaddr_factory_e006: macaddr@e006 {
121 reg = <0xe006 0x6>;
122 };
123 };
124
125 firmware: partition@50000 {
126 compatible = "denx,uimage";
127 label = "firmware";
128 reg = <0x50000 0xfb0000>;
129 };
130 };
131 };
132 };
133
134 &ethernet {
135 pinctrl-0 = <&mdio_pins>, <&rgmii1_pins>;
136 };
137
138 &gmac0 {
139 nvmem-cells = <&macaddr_factory_e006>;
140 nvmem-cell-names = "mac-address";
141 };
142
143 &switch0 {
144 ports {
145 port@0 {
146 status = "okay";
147 label = "lan1";
148 };
149
150 port@1 {
151 status = "okay";
152 label = "lan2";
153 };
154
155 port@2 {
156 status = "okay";
157 label = "lan3";
158 };
159
160 port@3 {
161 status = "okay";
162 label = "lan4";
163 };
164
165 port@4 {
166 status = "okay";
167 label = "wan";
168 nvmem-cells = <&macaddr_factory_e006>;
169 nvmem-cell-names = "mac-address";
170 mac-address-increment = <1>;
171 };
172 };
173 };
174
175 &state_default {
176 gpio {
177 groups = "wdt", "rgmii2";
178 function = "gpio";
179 };
180 };
181
182 &pcie {
183 status = "okay";
184 };
185
186 &pcie0 {
187 wifi@0,0 {
188 compatible = "pci14c3,7603";
189 reg = <0x0000 0 0 0 0>;
190 nvmem-cells = <&eeprom_factory_0>;
191 nvmem-cell-names = "eeprom";
192 ieee80211-freq-limit = <2400000 2500000>;
193 };
194 };
195
196 &pcie1 {
197 wifi@0,0 {
198 compatible = "pci14c3,7662";
199 reg = <0x0000 0 0 0 0>;
200 mediatek,mtd-eeprom = <&factory 0x8000>;
201 ieee80211-freq-limit = <5000000 6000000>;
202
203 led {
204 led-sources = <2>;
205 };
206 };
207 };