b7cb2da8cd97dd4d95fb7470067b28b66c495c0d
[openwrt/openwrt.git] / target / linux / ath79 / generic / base-files / etc / hotplug.d / firmware / 11-ath10k-caldata
1 #!/bin/sh
2
3 [ -e /lib/firmware/$FIRMWARE ] && exit 0
4
5 . /lib/functions/caldata.sh
6 . /lib/functions/k2t.sh
7
8 board=$(board_name)
9
10 case "$FIRMWARE" in
11 "ath10k/cal-pci-0000:00:00.0.bin")
12 case $board in
13 allnet,all-wap02860ac|\
14 engenius,eap1200h|\
15 engenius,enstationac-v1|\
16 glinet,gl-x750)
17 caldata_extract "art" 0x5000 0x844
18 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x0) 2)
19 ;;
20 avm,fritz1750e|\
21 avm,fritzdvbc)
22 caldata_extract "urlader" 0x198a 0x844
23 ;;
24 comfast,cf-wr650ac-v1|\
25 comfast,cf-wr650ac-v2|\
26 devolo,magic-2-wifi|\
27 qxwlan,e1700ac-v2-8m|\
28 qxwlan,e1700ac-v2-16m|\
29 qxwlan,e600gac-v2-8m|\
30 qxwlan,e600gac-v2-16m|\
31 ubnt,aircube-ac|\
32 ubnt,bullet-ac|\
33 ubnt,unifiac-lite|\
34 ubnt,unifiac-lr|\
35 ubnt,unifiac-mesh|\
36 ubnt,unifiac-mesh-pro|\
37 ubnt,lap-120|\
38 ubnt,litebeam-ac-gen2|\
39 ubnt,nanobeam-ac|\
40 ubnt,nanobeam-ac-gen2|\
41 ubnt,nanostation-ac|\
42 ubnt,nanostation-ac-loco|\
43 ubnt,powerbeam-5ac-500|\
44 ubnt,powerbeam-5ac-gen2|\
45 ubnt,unifiac-pro|\
46 yuncore,a770)
47 caldata_extract "art" 0x5000 0x844
48 ;;
49 devolo,dvl1200e|\
50 devolo,dvl1200i|\
51 devolo,dvl1750c|\
52 devolo,dvl1750e|\
53 devolo,dvl1750i|\
54 devolo,dvl1750x)
55 caldata_extract "art" 0x5000 0x844
56 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x0) -1)
57 ;;
58 dlink,dap-2660-a1|\
59 dlink,dap-2695-a1|\
60 dlink,dap-3662-a1)
61 caldata_extract "art" 0x5000 0x844
62 ath10k_patch_mac $(mtd_get_mac_ascii bdcfg wlanmac_a)
63 ;;
64 dlink,dir-859-a1)
65 caldata_extract "art" 0x5000 0x844
66 ath10k_patch_mac $(mtd_get_mac_ascii devdata "wlan5mac")
67 ;;
68 elecom,wrc-1750ghbk2-i)
69 caldata_extract "art" 0x5000 0x844
70 ;;
71 engenius,ecb1200|\
72 engenius,ecb1750)
73 caldata_extract "art" 0x5000 0x844
74 ath10k_patch_mac $(mtd_get_mac_ascii u-boot-env athaddr)
75 ;;
76 engenius,epg5000|\
77 iodata,wn-ac1167dgr|\
78 iodata,wn-ac1600dgr2|\
79 sitecom,wlr-7100|\
80 zyxel,nbg6616)
81 caldata_extract "art" 0x5000 0x844
82 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) 1)
83 ;;
84 engenius,ews511ap)
85 caldata_extract "art" 0x5000 0x844
86 ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) 1)
87 ;;
88 glinet,gl-ar750)
89 caldata_extract "art" 0x5000 0x844
90 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x0) 1)
91 ;;
92 nec,wg800hp)
93 caldata_extract "art" 0x5000 0x844
94 ath10k_patch_mac $(mtd_get_mac_text board_data 0x880)
95 ;;
96 ocedo,koala|\
97 ocedo,ursus)
98 caldata_extract "art" 0x5000 0x844
99 ath10k_patch_mac $(mtd_get_mac_binary art 0xc)
100 ;;
101 openmesh,a40|\
102 openmesh,a60|\
103 openmesh,mr1750-v1|\
104 openmesh,mr1750-v2)
105 caldata_extract "ART" 0x5000 0x844
106 ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) 16)
107 ;;
108 openmesh,om5p-ac-v2)
109 caldata_extract "art" 0x5000 0x844
110 ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) 16)
111 ;;
112 qihoo,c301)
113 caldata_extract "radiocfg" 0x5000 0x844
114 ath10k_patch_mac $(mtd_get_mac_ascii devdata wlan5mac)
115 ;;
116 tplink,archer-a7-v5|\
117 tplink,archer-c2-v3|\
118 tplink,archer-c7-v4|\
119 tplink,archer-c7-v5|\
120 tplink,archer-c25-v1|\
121 tplink,tl-wr902ac-v1)
122 caldata_extract "art" 0x5000 0x844
123 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary info 0x8) -1)
124 ;;
125 tplink,archer-c5-v1|\
126 tplink,archer-c7-v2|\
127 tplink,tl-wdr7500-v3)
128 caldata_extract "art" 0x5000 0x844
129 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary u-boot 0x1fc00) -1)
130 ;;
131 tplink,archer-d50-v1)
132 caldata_extract "art" 0x5000 0x844
133 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary romfile 0xf100) 2)
134 ;;
135 tplink,archer-d7-v1|\
136 tplink,archer-d7b-v1)
137 caldata_extract "art" 0x5000 0x844
138 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary romfs 0xf100) 2)
139 ;;
140 tplink,eap245-v1|\
141 tplink,re450-v2|\
142 tplink,re450-v3)
143 caldata_extract "art" 0x5000 0x844
144 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary info 0x8) 1)
145 ;;
146 tplink,re350k-v1)
147 caldata_extract "art" 0x5000 0x844
148 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary info 0x8) 2)
149 ;;
150 tplink,re355-v1|\
151 tplink,re450-v1)
152 caldata_extract "art" 0x5000 0x844
153 ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -2)
154 ;;
155 tplink,tl-wpa8630-v1)
156 caldata_extract "art" 0x5000 0x844
157 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary u-boot 0x0fc00) 1)
158 ;;
159 esac
160 ;;
161 "ath10k/cal-pci-0000:01:00.0.bin")
162 case $board in
163 sitecom,wlr-8100)
164 caldata_extract "art" 0x5000 0x844
165 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) 1)
166 ;;
167 esac
168 ;;
169 "ath10k/pre-cal-pci-0000:00:00.0.bin")
170 case $board in
171 comfast,cf-e313ac)
172 caldata_extract "art" 0x5000 0x2f20
173 ath10k_patch_mac $(mtd_get_mac_binary art 0x6)
174 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
175 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
176 rm /lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
177 ;;
178 comfast,cf-e375ac|\
179 comfast,cf-e560ac|\
180 comfast,cf-ew72|\
181 comfast,cf-wr752ac-v1)
182 caldata_extract "art" 0x5000 0x2f20
183 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x0) 2)
184 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
185 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
186 rm /lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
187 ;;
188 dlink,dap-2680-a1)
189 caldata_extract "art" 0x5000 0x2f20
190 ath10k_patch_mac $(mtd_get_mac_ascii bdcfg wlanmac_a)
191 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
192 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
193 ;;
194 dlink,dir-842-c1|\
195 dlink,dir-842-c2|\
196 dlink,dir-842-c3)
197 caldata_extract "art" 0x5000 0x2f20
198 caldata_valid "202f" || caldata_extract "reserved" 0x15000 0x2f20
199 ath10k_patch_mac $(mtd_get_mac_ascii devdata wlan5mac)
200 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
201 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
202 ;;
203 nec,wg1200cr)
204 caldata_extract "art" 0x5000 0x2f20
205 ath10k_patch_mac $(mtd_get_mac_ascii devdata wlan5mac)
206 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
207 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
208 ;;
209 netgear,ex6400|\
210 netgear,ex7300)
211 caldata_extract "caldata" 0x5000 0x2f20
212 ath10k_patch_mac $(mtd_get_mac_binary caldata 0xc)
213 ;;
214 phicomm,k2t)
215 caldata_extract "art" 0x5000 0x2f20
216 ath10k_patch_mac $(k2t_get_mac "5g_mac")
217 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
218 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
219 ;;
220 tplink,archer-c58-v1|\
221 tplink,archer-c59-v1|\
222 tplink,archer-c59-v2|\
223 tplink,archer-c60-v1|\
224 tplink,archer-c60-v2|\
225 tplink,archer-c60-v3|\
226 tplink,archer-c6-v2|\
227 tplink,archer-c6-v2-us)
228 caldata_extract "art" 0x5000 0x2f20
229 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary info 0x8) -1)
230 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
231 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
232 ;;
233 tplink,eap225-outdoor-v1|\
234 tplink,eap225-v3|\
235 tplink,eap225-wall-v2|\
236 tplink,tl-wpa8630p-v2-int|\
237 tplink,tl-wpa8630p-v2.0-eu|\
238 tplink,tl-wpa8630p-v2.1-eu)
239 caldata_extract "art" 0x5000 0x2f20
240 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary info 0x8) 1)
241 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
242 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
243 ;;
244 tplink,eap245-v3)
245 caldata_extract "art" 0x5000 0x2f20
246 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary info 0x8) 1)
247 ;;
248 yuncore,a782|\
249 yuncore,xd4200)
250 caldata_extract "art" 0x5000 0x2f20
251 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
252 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
253 ;;
254 esac
255 ;;
256 *)
257 exit 1
258 ;;
259 esac