2e520ac0678f5dc390d019edc1366ba529ea5b99
[openwrt/openwrt.git] / target / linux / ath79 / generic / base-files / etc / hotplug.d / firmware / 10-ath9k-eeprom
1 #!/bin/sh
2
3 [ -e /lib/firmware/$FIRMWARE ] && exit 0
4
5 . /lib/functions/caldata.sh
6
7 board=$(board_name)
8
9 case "$FIRMWARE" in
10 "ath9k-eeprom-ahb-18100000.wmac.bin")
11 case $board in
12 8dev,lima)
13 caldata_extract "art" 0x1000 0x800
14 ;;
15 avm,fritz1750e|\
16 avm,fritz4020|\
17 avm,fritz450e|\
18 avm,fritzdvbc)
19 caldata_extract_reverse "urlader" 0x1541 0x440
20 ;;
21 dlink,dap-2695-a1)
22 caldata_extract "art" 0x1000 0x440
23 ath9k_patch_mac $(mtd_get_mac_ascii bdcfg "wlanmac")
24 ;;
25 dlink,dir-505|\
26 dlink,dir-825-c1|\
27 dlink,dir-835-a1)
28 caldata_extract "art" 0x1000 0x440
29 ath9k_patch_mac $(mtd_get_mac_text "mac" 0x4)
30 ;;
31 dlink,dir-842-c1|\
32 dlink,dir-842-c2|\
33 dlink,dir-842-c3|\
34 dlink,dir-859-a1|\
35 nec,wg1200cr|\
36 wd,mynet-n750)
37 caldata_extract "art" 0x1000 0x440
38 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan24mac")
39 ;;
40 engenius,ecb1200|\
41 engenius,ecb1750)
42 caldata_extract "art" 0x1000 0x440
43 ath9k_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env athaddr) +1)
44 ;;
45 engenius,epg5000|\
46 iodata,wn-ac1167dgr|\
47 iodata,wn-ac1600dgr|\
48 iodata,wn-ac1600dgr2|\
49 iodata,wn-ag300dgr|\
50 sitecom,wlr-7100|\
51 sitecom,wlr-8100)
52 caldata_extract "art" 0x1000 0x440
53 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env ethaddr)
54 ;;
55 enterasys,ws-ap3705i)
56 caldata_extract "calibrate" 0x1000 0x440
57 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env0 RADIOADDR1)
58 ;;
59 meraki,mr12)
60 caldata_extract "art" 0x11000 0xeb8
61 ;;
62 nec,wg800hp)
63 caldata_extract "art" 0x1000 0x440
64 ath9k_patch_mac $(mtd_get_mac_text board_data 0x680)
65 ;;
66 qihoo,c301)
67 caldata_extract "radiocfg" 0x1000 0x440
68 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan24mac")
69 ;;
70 *)
71 caldata_die "board $board is not supported yet"
72 ;;
73 esac
74 ;;
75 "ath9k-eeprom-pci-0000:00:00.0.bin")
76 case $board in
77 avm,fritz300e)
78 caldata_extract_reverse "urloader" 0x1541 0x440
79 ;;
80 buffalo,wzr-hp-g302h-a1a0|\
81 ubnt,unifi-ap-outdoor-plus)
82 caldata_extract "art" 0x1000 0xeb8
83 ;;
84 buffalo,wzr-hp-g450h|\
85 ubnt,unifi)
86 caldata_extract "art" 0x1000 0x440
87 ;;
88 dlink,dir-825-c1|\
89 dlink,dir-835-a1)
90 caldata_extract "art" 0x5000 0x440
91 ath9k_patch_mac $(macaddr_add $(mtd_get_mac_text "mac" 0x18) 1)
92 ;;
93 engenius,eap600|\
94 engenius,ecb600|\
95 mercury,mw4530r-v1|\
96 ocedo,raccoon|\
97 tplink,tl-wdr3500-v1|\
98 tplink,tl-wdr3600-v1|\
99 tplink,tl-wdr4300-v1|\
100 tplink,tl-wdr4300-v1-il|\
101 tplink,tl-wdr4310-v1|\
102 tplink,tl-wdr4900-v2|\
103 ubnt,unifi-ap-pro|\
104 winchannel,wb2000)
105 caldata_extract "art" 0x5000 0x440
106 ;;
107 enterasys,ws-ap3705i)
108 caldata_extract "calibrate" 0x5000 0x440
109 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env0 RADIOADDR0)
110 ;;
111 netgear,wnr2200-8m|\
112 netgear,wnr2200-16m|\
113 pcs,cap324|\
114 tplink,tl-wr2543-v1|\
115 tplink,tl-wr842n-v1|\
116 ubnt,airrouter|\
117 ubnt,bullet-m-ar7240|\
118 ubnt,bullet-m-ar7241|\
119 ubnt,nanobridge-m|\
120 ubnt,nanostation-loco-m|\
121 ubnt,nanostation-m|\
122 ubnt,picostation-m|\
123 ubnt,powerbridge-m|\
124 ubnt,rocket-m)
125 caldata_extract "art" 0x1000 0x1000
126 ;;
127 openmesh,mr600-v1|\
128 openmesh,mr600-v2)
129 caldata_extract "ART" 0x5000 0x440
130 ;;
131 wd,mynet-n750)
132 caldata_extract "art" 0x5000 0x440
133 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan5mac")
134 ;;
135 wd,mynet-wifi-rangeextender)
136 caldata_extract "art" 0x1000 0x1000
137 ath9k_patch_mac $(nvram get wl0_hwaddr)
138 ;;
139 *)
140 caldata_die "board $board is not supported yet"
141 ;;
142 esac
143 ;;
144 "ath9k-eeprom-pci-0000:00:11.0.bin")
145 case $board in
146 buffalo,wzr-600dhp|\
147 buffalo,wzr-hp-ag300h|\
148 netgear,wndr3700|\
149 netgear,wndr3700-v2|\
150 netgear,wndr3800|\
151 netgear,wndr3800ch|\
152 netgear,wndrmac-v1|\
153 netgear,wndrmac-v2)
154 caldata_extract "art" 0x1000 0xeb8
155 ;;
156 dlink,dir-825-b1)
157 caldata_extract "caldata" 0x1000 0xeb8
158 ath9k_patch_mac_crc $(mtd_get_mac_text "caldata" 0xffa0) 0x20c
159 ;;
160 meraki,mr16)
161 caldata_extract "art" 0x11000 0xeb8
162 ;;
163 *)
164 caldata_die "board $board is not supported yet"
165 ;;
166 esac
167 ;;
168 "ath9k-eeprom-pci-0000:00:12.0.bin")
169 case $board in
170 buffalo,wzr-600dhp|\
171 buffalo,wzr-hp-ag300h|\
172 netgear,wndr3700|\
173 netgear,wndr3700-v2|\
174 netgear,wndr3800|\
175 netgear,wndr3800ch|\
176 netgear,wndrmac-v1|\
177 netgear,wndrmac-v2)
178 caldata_extract "art" 0x5000 0xeb8
179 ;;
180 dlink,dir-825-b1)
181 caldata_extract "caldata" 0x5000 0xeb8
182 ath9k_patch_mac_crc $(macaddr_add $(mtd_get_mac_text "caldata" 0xffb4) 1) 0x20c
183 ;;
184 meraki,mr16)
185 caldata_extract "art" 0x15000 0xeb8
186 ;;
187 *)
188 caldata_die "board $board is not supported yet"
189 ;;
190 esac
191 ;;
192 esac