ath79: convert ath10k pre-calibration data to NVMEM (binary MAC)
[openwrt/staging/jow.git] / target / linux / ath79 / dts / qca9563_tplink_tl-wa1201-v2.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2
3 #include "qca956x.dtsi"
4
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/input/input.h>
7
8 / {
9 compatible = "tplink,tl-wa1201-v2", "qca,qca9563";
10 model = "TP-Link TL-WA1201 v2";
11
12 aliases {
13 label-mac-device = &eth0;
14 led-boot = &led_power;
15 led-failsafe = &led_power;
16 led-running = &led_power;
17 led-upgrade = &led_power;
18 mdio-gpio0 = &mdio2;
19 };
20
21 leds {
22 compatible = "gpio-leds";
23
24 led_power: power {
25 label = "green:power";
26 gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
27 default-state = "on";
28 };
29
30 wlan2g {
31 label = "green:wlan2g";
32 gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
33 linux,default-trigger = "phy1tpt";
34 };
35
36 wlan5g {
37 label = "green:wlan5g";
38 gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
39 linux,default-trigger = "phy0tpt";
40 };
41
42 lan {
43 label = "green:lan";
44 gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
45 };
46 };
47
48 keys {
49 compatible = "gpio-keys";
50
51 reset {
52 label = "Reset button";
53 linux,code = <KEY_RESTART>;
54 gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
55 debounce-interval = <60>;
56 };
57
58 wps {
59 label = "WPS button";
60 linux,code = <KEY_WPS_BUTTON>;
61 gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
62 debounce-interval = <60>;
63 };
64 };
65
66 mdio2: mdio {
67 compatible = "virtual,mdio-gpio";
68
69 #address-cells = <1>;
70 #size-cells = <0>;
71
72 gpios = <&gpio 3 GPIO_ACTIVE_HIGH>, /* MDC */
73 <&gpio 4 GPIO_ACTIVE_HIGH>; /* MDIO */
74
75 phy4: ethernet-phy@4 {
76 reg = <4>;
77
78 eee-broken-100tx;
79 eee-broken-1000t;
80 };
81 };
82 };
83
84 &pcie {
85 status = "okay";
86
87 wifi@0,0 {
88 compatible = "qcom,ath10k";
89 reg = <0x0000 0 0 0 0>;
90 nvmem-cells = <&precal_art_5000>, <&macaddr_info_8 (-1)>;
91 nvmem-cell-names = "pre-calibration", "mac-address";
92 };
93 };
94
95 &eth0 {
96 status = "okay";
97
98 phy-mode = "sgmii";
99 phy-handle = <&phy4>;
100
101 nvmem-cells = <&macaddr_info_8 0>;
102 nvmem-cell-names = "mac-address";
103 };
104
105 &wmac {
106 status = "okay";
107
108 mtd-cal-data = <&art 0x1000>;
109
110 nvmem-cells = <&macaddr_info_8 0>;
111 nvmem-cell-names = "mac-address";
112 };
113
114 &spi {
115 status = "okay";
116
117 flash@0 {
118 compatible = "jedec,spi-nor";
119 reg = <0>;
120 spi-max-frequency = <25000000>;
121
122 partitions {
123 compatible = "fixed-partitions";
124 #address-cells = <1>;
125 #size-cells = <1>;
126
127 partition@0 {
128 label = "u-boot";
129 reg = <0x000000 0x020000>;
130 read-only;
131 };
132
133 info: partition@20000 {
134 label = "info";
135 reg = <0x020000 0x010000>;
136 read-only;
137
138 nvmem-layout {
139 compatible = "fixed-layout";
140 #address-cells = <1>;
141 #size-cells = <1>;
142
143 macaddr_info_8: macaddr@8 {
144 compatible = "mac-base";
145 reg = <0x8 0x6>;
146 #nvmem-cell-cells = <1>;
147 };
148 };
149 };
150
151 partition@30000 {
152 compatible = "denx,uimage";
153 label = "firmware";
154 reg = <0x030000 0xce0000>;
155 };
156
157 partition@d10000 {
158 label = "tplink";
159 reg = <0xd10000 0x2e0000>;
160 read-only;
161 };
162
163 art: partition@ff0000 {
164 label = "art";
165 reg = <0xff0000 0x010000>;
166 read-only;
167
168 nvmem-layout {
169 compatible = "fixed-layout";
170 #address-cells = <1>;
171 #size-cells = <1>;
172
173 precal_art_5000: pre-calibration@5000 {
174 reg = <0x5000 0x2f20>;
175 };
176 };
177 };
178 };
179 };
180 };