ath79: add support for Ubiquiti UniFi AP Pro
[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 ubnt,unifi)
14 caldata_extract "art" 0x1000 0x800
15 ;;
16 avm,fritz1750e|\
17 avm,fritz4020|\
18 avm,fritz450e|\
19 avm,fritzdvbc)
20 caldata_extract_reverse "urlader" 0x1541 0x440
21 ;;
22 dlink,dap-2695-a1)
23 caldata_extract "art" 0x1000 0x440
24 ath9k_patch_mac $(mtd_get_mac_ascii bdcfg "wlanmac")
25 ;;
26 dlink,dir-505|\
27 dlink,dir-825-c1|\
28 dlink,dir-835-a1)
29 caldata_extract "art" 0x1000 0x440
30 ath9k_patch_mac $(mtd_get_mac_text "mac" 0x4)
31 ;;
32 dlink,dir-842-c1|\
33 dlink,dir-842-c2|\
34 dlink,dir-842-c3|\
35 dlink,dir-859-a1|\
36 nec,wg1200cr|\
37 wd,mynet-n750)
38 caldata_extract "art" 0x1000 0x440
39 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan24mac")
40 ;;
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 engenius,enh202-v1)
79 caldata_extract "art" 0x1000 0xeb8
80 ;;
81 buffalo,wzr-hp-g450h)
82 caldata_extract "art" 0x1000 0x440
83 ;;
84 dlink,dir-825-c1|\
85 dlink,dir-835-a1)
86 caldata_extract "art" 0x5000 0x440
87 ath9k_patch_mac $(macaddr_add $(mtd_get_mac_text "mac" 0x18) 1)
88 ;;
89 enterasys,ws-ap3705i)
90 caldata_extract "calibrate" 0x5000 0x440
91 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env0 RADIOADDR0)
92 ;;
93 mercury,mw4530r-v1|\
94 ocedo,raccoon|\
95 tplink,tl-wdr3500-v1|\
96 tplink,tl-wdr3600-v1|\
97 tplink,tl-wdr4300-v1|\
98 tplink,tl-wdr4300-v1-il|\
99 tplink,tl-wdr4310-v1|\
100 tplink,tl-wdr4900-v2|\
101 ubnt,unifi-ap-pro|\
102 winchannel,wb2000)
103 caldata_extract "art" 0x5000 0x440
104 ;;
105 netgear,wnr2200-8m|\
106 netgear,wnr2200-16m|\
107 pcs,cap324|\
108 tplink,tl-wr2543-v1|\
109 tplink,tl-wr842n-v1|\
110 ubnt,airrouter|\
111 ubnt,bullet-m-ar7240|\
112 ubnt,bullet-m-ar7241|\
113 ubnt,nanobridge-m|\
114 ubnt,nanostation-loco-m|\
115 ubnt,nanostation-m|\
116 ubnt,picostation-m|\
117 ubnt,powerbridge-m|\
118 ubnt,rocket-m)
119 caldata_extract "art" 0x1000 0x1000
120 ;;
121 wd,mynet-n750)
122 caldata_extract "art" 0x5000 0x440
123 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan5mac")
124 ;;
125 wd,mynet-wifi-rangeextender)
126 caldata_extract "art" 0x1000 0x1000
127 ath9k_patch_mac $(nvram get wl0_hwaddr)
128 ;;
129 *)
130 caldata_die "board $board is not supported yet"
131 ;;
132 esac
133 ;;
134 "ath9k-eeprom-pci-0000:00:11.0.bin")
135 case $board in
136 buffalo,wzr-600dhp|\
137 buffalo,wzr-hp-ag300h|\
138 netgear,wndr3700|\
139 netgear,wndr3700-v2|\
140 netgear,wndr3800|\
141 netgear,wndr3800ch|\
142 netgear,wndrmac-v1|\
143 netgear,wndrmac-v2)
144 caldata_extract "art" 0x1000 0xeb8
145 ;;
146 dlink,dir-825-b1)
147 caldata_extract "caldata" 0x1000 0xeb8
148 ath9k_patch_mac_crc $(mtd_get_mac_text "caldata" 0xffa0) 0x20c
149 ;;
150 meraki,mr16)
151 caldata_extract "art" 0x11000 0xeb8
152 ;;
153 *)
154 caldata_die "board $board is not supported yet"
155 ;;
156 esac
157 ;;
158 "ath9k-eeprom-pci-0000:00:12.0.bin")
159 case $board in
160 buffalo,wzr-600dhp|\
161 buffalo,wzr-hp-ag300h|\
162 netgear,wndr3700|\
163 netgear,wndr3700-v2|\
164 netgear,wndr3800|\
165 netgear,wndr3800ch|\
166 netgear,wndrmac-v1|\
167 netgear,wndrmac-v2)
168 caldata_extract "art" 0x5000 0xeb8
169 ;;
170 dlink,dir-825-b1)
171 caldata_extract "caldata" 0x5000 0xeb8
172 ath9k_patch_mac_crc $(macaddr_add $(mtd_get_mac_text "caldata" 0xffb4) 1) 0x20c
173 ;;
174 meraki,mr16)
175 caldata_extract "art" 0x15000 0xeb8
176 ;;
177 *)
178 caldata_die "board $board is not supported yet"
179 ;;
180 esac
181 ;;
182 esac