ath79: convert ath10k calibration data to NVMEM (binary MAC)
[openwrt/staging/robimarko.git] / target / linux / ath79 / dts / qca9558_tplink_re350k-v1.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2
3 #include "qca955x.dtsi"
4
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/input/input.h>
7
8 / {
9 model = "TP-Link RE350K v1";
10 compatible = "tplink,re350k-v1", "qca,qca9558";
11
12 aliases {
13 led-boot = &led_power;
14 led-failsafe = &led_power;
15 led-running = &led_power;
16 led-upgrade = &led_power;
17 mdio-gpio0 = &mdio2;
18 };
19
20 keys {
21 compatible = "gpio-keys";
22
23 app-config {
24 label = "app-config";
25 linux,code = <BTN_0>;
26 gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
27 debounce-interval = <60>;
28 };
29
30 led {
31 label = "led";
32 linux,code = <BTN_1>;
33 gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
34 debounce-interval = <60>;
35 };
36
37 reset {
38 label = "reset";
39 linux,code = <KEY_RESTART>;
40 gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
41 debounce-interval = <60>;
42 };
43 };
44
45 leds {
46 compatible = "gpio-leds";
47
48 led_power: power {
49 label = "green:power";
50 gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
51 default-state = "on";
52 };
53
54 wlan2g_green {
55 label = "green:wlan2g";
56 gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
57 linux,default-trigger = "phy1tpt";
58 };
59
60 wlan2g_red {
61 label = "red:wlan2g";
62 gpios = <&gpio 21 GPIO_ACTIVE_LOW>;
63 };
64
65 wlan5g_green {
66 label = "green:wlan5g";
67 gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
68 linux,default-trigger = "phy0tpt";
69 };
70
71 wlan5g_red {
72 label = "red:wlan5g";
73 gpios = <&gpio 22 GPIO_ACTIVE_LOW>;
74 };
75 };
76
77 mdio2: mdio {
78 compatible = "virtual,mdio-gpio";
79
80 #address-cells = <1>;
81 #size-cells = <0>;
82
83 gpios = <&gpio 23 GPIO_ACTIVE_HIGH>,
84 <&gpio 18 GPIO_ACTIVE_HIGH>;
85
86 phy4: ethernet-phy@4 {
87 reg = <4>;
88
89 phy-mode = "rgmii-rxid";
90 eee-broken-100tx;
91 eee-broken-1000t;
92 };
93 };
94 };
95
96 &eth0 {
97 status = "okay";
98
99 phy-handle = <&phy4>;
100 pll-data = <0x9e000000 0x80000101 0x80001313>;
101
102 nvmem-cells = <&macaddr_info_8 0>;
103 nvmem-cell-names = "mac-address";
104
105 gmac-config {
106 device = <&gmac>;
107
108 rxdv-delay = <2>;
109 rxd-delay = <2>;
110 txen-delay = <0>;
111 txd-delay = <0>;
112 rgmii-enabled = <1>;
113 };
114 };
115
116 &pcie0 {
117 status = "okay";
118
119 wifi@0,0 {
120 compatible = "qcom,ath10k";
121 reg = <0x0000 0 0 0 0>;
122 nvmem-cells = <&cal_art_5000>, <&macaddr_info_8 2>;
123 nvmem-cell-names = "calibration", "mac-address";
124 };
125 };
126
127 &spi {
128 status = "okay";
129
130 flash@0 {
131 compatible = "jedec,spi-nor";
132 reg = <0>;
133 spi-max-frequency = <25000000>;
134
135 partitions {
136 compatible = "fixed-partitions";
137 #address-cells = <1>;
138 #size-cells = <1>;
139
140 partition@0 {
141 label = "u-boot";
142 reg = <0x000000 0x020000>;
143 read-only;
144 };
145
146 partition@20000 {
147 compatible = "tplink,firmware";
148 label = "firmware";
149 reg = <0x020000 0xd70000>;
150 };
151
152 partition@d90000 {
153 label = "partition-table";
154 reg = <0xd90000 0x010000>;
155 read-only;
156 };
157
158 info: partition@da0000 {
159 label = "info";
160 reg = <0xda0000 0x020000>;
161 read-only;
162
163 nvmem-layout {
164 compatible = "fixed-layout";
165 #address-cells = <1>;
166 #size-cells = <1>;
167
168 macaddr_info_8: macaddr@8 {
169 compatible = "mac-base";
170 reg = <0x8 0x6>;
171 #nvmem-cell-cells = <1>;
172 };
173 };
174 };
175
176 partition@dc0000 {
177 label = "config";
178 reg = <0xdc0000 0x230000>;
179 read-only;
180 };
181
182 art: partition@ff0000 {
183 label = "art";
184 reg = <0xff0000 0x010000>;
185 read-only;
186
187 nvmem-layout {
188 compatible = "fixed-layout";
189 #address-cells = <1>;
190 #size-cells = <1>;
191
192 cal_art_5000: calibration@5000 {
193 reg = <0x5000 0x844>;
194 };
195 };
196 };
197 };
198 };
199 };
200
201 &wmac {
202 status = "okay";
203
204 mtd-cal-data = <&art 0x1000>;
205 nvmem-cells = <&macaddr_info_8 0>;
206 nvmem-cell-names = "mac-address";
207 };