ath79: add support for Ubiquiti UniFi AP Outdoor+
[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 nec,wg800hp)
60 caldata_extract "art" 0x1000 0x440
61 ath9k_patch_mac $(mtd_get_mac_text board_data 0x680)
62 ;;
63 qihoo,c301)
64 caldata_extract "radiocfg" 0x1000 0x440
65 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan24mac")
66 ;;
67 *)
68 caldata_die "board $board is not supported yet"
69 ;;
70 esac
71 ;;
72 "ath9k-eeprom-pci-0000:00:00.0.bin")
73 case $board in
74 avm,fritz300e)
75 caldata_extract_reverse "urloader" 0x1541 0x440
76 ;;
77 buffalo,wzr-hp-g302h-a1a0|\
78 ubnt,unifi-ap-outdoor-plus)
79 caldata_extract "art" 0x1000 0xeb8
80 ;;
81 buffalo,wzr-hp-g450h|\
82 ubnt,unifi)
83 caldata_extract "art" 0x1000 0x440
84 ;;
85 dlink,dir-825-c1|\
86 dlink,dir-835-a1)
87 caldata_extract "art" 0x5000 0x440
88 ath9k_patch_mac $(macaddr_add $(mtd_get_mac_text "mac" 0x18) 1)
89 ;;
90 engenius,eap600|\
91 engenius,ecb600|\
92 mercury,mw4530r-v1|\
93 ocedo,raccoon|\
94 tplink,tl-wdr3500-v1|\
95 tplink,tl-wdr3600-v1|\
96 tplink,tl-wdr4300-v1|\
97 tplink,tl-wdr4300-v1-il|\
98 tplink,tl-wdr4310-v1|\
99 tplink,tl-wdr4900-v2|\
100 ubnt,unifi-ap-pro|\
101 winchannel,wb2000)
102 caldata_extract "art" 0x5000 0x440
103 ;;
104 enterasys,ws-ap3705i)
105 caldata_extract "calibrate" 0x5000 0x440
106 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env0 RADIOADDR0)
107 ;;
108 netgear,wnr2200-8m|\
109 netgear,wnr2200-16m|\
110 pcs,cap324|\
111 tplink,tl-wr2543-v1|\
112 tplink,tl-wr842n-v1|\
113 ubnt,airrouter|\
114 ubnt,bullet-m-ar7240|\
115 ubnt,bullet-m-ar7241|\
116 ubnt,nanobridge-m|\
117 ubnt,nanostation-loco-m|\
118 ubnt,nanostation-m|\
119 ubnt,picostation-m|\
120 ubnt,powerbridge-m|\
121 ubnt,rocket-m)
122 caldata_extract "art" 0x1000 0x1000
123 ;;
124 openmesh,mr600-v1|\
125 openmesh,mr600-v2)
126 caldata_extract "ART" 0x5000 0x440
127 ;;
128 wd,mynet-n750)
129 caldata_extract "art" 0x5000 0x440
130 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan5mac")
131 ;;
132 wd,mynet-wifi-rangeextender)
133 caldata_extract "art" 0x1000 0x1000
134 ath9k_patch_mac $(nvram get wl0_hwaddr)
135 ;;
136 *)
137 caldata_die "board $board is not supported yet"
138 ;;
139 esac
140 ;;
141 "ath9k-eeprom-pci-0000:00:11.0.bin")
142 case $board in
143 buffalo,wzr-600dhp|\
144 buffalo,wzr-hp-ag300h|\
145 netgear,wndr3700|\
146 netgear,wndr3700-v2|\
147 netgear,wndr3800|\
148 netgear,wndr3800ch|\
149 netgear,wndrmac-v1|\
150 netgear,wndrmac-v2)
151 caldata_extract "art" 0x1000 0xeb8
152 ;;
153 dlink,dir-825-b1)
154 caldata_extract "caldata" 0x1000 0xeb8
155 ath9k_patch_mac_crc $(mtd_get_mac_text "caldata" 0xffa0) 0x20c
156 ;;
157 meraki,mr16)
158 caldata_extract "art" 0x11000 0xeb8
159 ;;
160 *)
161 caldata_die "board $board is not supported yet"
162 ;;
163 esac
164 ;;
165 "ath9k-eeprom-pci-0000:00:12.0.bin")
166 case $board in
167 buffalo,wzr-600dhp|\
168 buffalo,wzr-hp-ag300h|\
169 netgear,wndr3700|\
170 netgear,wndr3700-v2|\
171 netgear,wndr3800|\
172 netgear,wndr3800ch|\
173 netgear,wndrmac-v1|\
174 netgear,wndrmac-v2)
175 caldata_extract "art" 0x5000 0xeb8
176 ;;
177 dlink,dir-825-b1)
178 caldata_extract "caldata" 0x5000 0xeb8
179 ath9k_patch_mac_crc $(macaddr_add $(mtd_get_mac_text "caldata" 0xffb4) 1) 0x20c
180 ;;
181 meraki,mr16)
182 caldata_extract "art" 0x15000 0xeb8
183 ;;
184 *)
185 caldata_die "board $board is not supported yet"
186 ;;
187 esac
188 ;;
189 esac