dd821dd339f084175d9aa27e84bd1b04472dcfe3
[openwrt/staging/wigyori.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 avm,fritz1750e)
14 caldata_extract "urlader" 0x198a 0x844
15 ;;
16 comfast,cf-wr650ac-v1|\
17 comfast,cf-wr650ac-v2|\
18 devolo,magic-2-wifi|\
19 ubnt,unifiac-lite|\
20 ubnt,unifiac-lr|\
21 ubnt,unifiac-mesh|\
22 ubnt,unifiac-mesh-pro|\
23 ubnt,lap-120|\
24 ubnt,litebeam-ac-gen2|\
25 ubnt,nanobeam-ac|\
26 ubnt,nanostation-ac|\
27 ubnt,nanostation-ac-loco|\
28 ubnt,unifiac-pro|\
29 yuncore,a770)
30 caldata_extract "art" 0x5000 0x844
31 ;;
32 devolo,dvl1200e|\
33 devolo,dvl1200i|\
34 devolo,dvl1750c|\
35 devolo,dvl1750e|\
36 devolo,dvl1750i|\
37 devolo,dvl1750x)
38 caldata_extract "art" 0x5000 0x844
39 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x0) -1)
40 ;;
41 dlink,dir-859-a1)
42 caldata_extract "art" 0x5000 0x844
43 ath10k_patch_mac $(mtd_get_mac_ascii devdata "wlan5mac")
44 ;;
45 elecom,wrc-1750ghbk2-i)
46 caldata_extract "art" 0x5000 0x844
47 ;;
48 engenius,ecb1750)
49 caldata_extract "art" 0x5000 0x844
50 ath10k_patch_mac $(mtd_get_mac_ascii u-boot-env athaddr)
51 ;;
52 engenius,epg5000|\
53 iodata,wn-ac1167dgr|\
54 iodata,wn-ac1600dgr2|\
55 sitecom,wlr-7100)
56 caldata_extract "art" 0x5000 0x844
57 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) +1)
58 ;;
59 engenius,ews511ap)
60 caldata_extract "art" 0x5000 0x844
61 ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +1)
62 ;;
63 glinet,gl-ar750)
64 caldata_extract "art" 0x5000 0x844
65 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x0) +1)
66 ;;
67 glinet,gl-x750)
68 caldata_extract "art" 0x5000 0x844
69 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x0) +2)
70 ;;
71 nec,wg800hp)
72 caldata_extract "art" 0x5000 0x844
73 ath10k_patch_mac $(mtd_get_mac_text board_data 0x880)
74 ;;
75 ocedo,koala|\
76 ocedo,ursus)
77 caldata_extract "art" 0x5000 0x844
78 ath10k_patch_mac $(mtd_get_mac_binary art 0xc)
79 ;;
80 openmesh,om5p-ac-v2)
81 caldata_extract "art" 0x5000 0x844
82 ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +16)
83 ;;
84 qihoo,c301)
85 caldata_extract "radiocfg" 0x5000 0x844
86 ath10k_patch_mac $(mtd_get_mac_ascii devdata wlan5mac)
87 ;;
88 tplink,archer-a7-v5|\
89 tplink,archer-c2-v3|\
90 tplink,archer-c7-v4|\
91 tplink,archer-c7-v5|\
92 tplink,archer-c25-v1)
93 caldata_extract "art" 0x5000 0x844
94 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary info 0x8) -1)
95 ;;
96 tplink,archer-c5-v1|\
97 tplink,archer-c7-v2)
98 caldata_extract "art" 0x5000 0x844
99 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary u-boot 0x1fc00) -1)
100 ;;
101 tplink,archer-d50-v1)
102 caldata_extract "art" 0x5000 0x844
103 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary romfile 0xf100) +2)
104 ;;
105 tplink,archer-d7-v1|\
106 tplink,archer-d7b-v1)
107 caldata_extract "art" 0x5000 0x844
108 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary romfs 0xf100) +2)
109 ;;
110 tplink,re350k-v1)
111 caldata_extract "art" 0x5000 0x844
112 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary config 0x10008) +2)
113 ;;
114 tplink,re355-v1|\
115 tplink,re450-v1)
116 caldata_extract "art" 0x5000 0x844
117 ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -2)
118 ;;
119 tplink,re450-v2)
120 caldata_extract "art" 0x5000 0x844
121 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary info 0x8) +1)
122 ;;
123 tplink,tl-wr902ac-v1)
124 caldata_extract "art" 0x5000 0x844
125 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary tplink 0x8) -1)
126 ;;
127 esac
128 ;;
129 "ath10k/cal-pci-0000:01:00.0.bin")
130 case $board in
131 sitecom,wlr-8100)
132 caldata_extract "art" 0x5000 0x844
133 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) +1)
134 ;;
135 esac
136 ;;
137 "ath10k/pre-cal-pci-0000:00:00.0.bin")
138 case $board in
139 comfast,cf-e313ac)
140 caldata_extract "art" 0x5000 0x2f20
141 ath10k_patch_mac $(mtd_get_mac_binary art 0x6)
142 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
143 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
144 rm /lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
145 ;;
146 comfast,cf-e560ac|\
147 comfast,cf-ew72|\
148 comfast,cf-wr752ac-v1)
149 caldata_extract "art" 0x5000 0x2f20
150 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary art 0x0) +2)
151 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
152 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
153 rm /lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
154 ;;
155 dlink,dir-842-c1|\
156 dlink,dir-842-c2|\
157 dlink,dir-842-c3|\
158 nec,wg1200cr)
159 caldata_extract "art" 0x5000 0x2f20
160 ath10k_patch_mac $(mtd_get_mac_ascii devdata wlan5mac)
161 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
162 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
163 ;;
164 netgear,ex6400|\
165 netgear,ex7300)
166 caldata_extract "caldata" 0x5000 0x2f20
167 ath10k_patch_mac $(mtd_get_mac_binary caldata 0xc)
168 ;;
169 phicomm,k2t)
170 caldata_extract "art" 0x5000 0x2f20
171 ath10k_patch_mac $(k2t_get_mac "5g_mac")
172 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
173 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
174 ;;
175 tplink,archer-c58-v1|\
176 tplink,archer-c59-v1|\
177 tplink,archer-c59-v2|\
178 tplink,archer-c60-v1|\
179 tplink,archer-c60-v2|\
180 tplink,archer-c60-v3|\
181 tplink,archer-c6-v2|\
182 tplink,archer-c6-v2-us)
183 caldata_extract "art" 0x5000 0x2f20
184 ath10k_patch_mac $(macaddr_add $(mtd_get_mac_binary mac 0x8) -1)
185 ln -sf /lib/firmware/ath10k/pre-cal-pci-0000\:00\:00.0.bin \
186 /lib/firmware/ath10k/QCA9888/hw2.0/board.bin
187 ;;
188 yuncore,a782|\
189 yuncore,xd4200)
190 caldata_extract "art" 0x5000 0x2f20
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 esac
195 ;;
196 *)
197 exit 1
198 ;;
199 esac