5fcfcaf64fa66acc1bb74748f4e9498a4ab376dd
[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 asus,pl-ac56|\
16 asus,rp-ac51|\
17 asus,rp-ac66)
18 caldata_extract "art" 0x1000 0x440
19 ;;
20 avm,fritz1750e|\
21 avm,fritz4020|\
22 avm,fritz450e|\
23 avm,fritzdvbc)
24 caldata_extract_reverse "urlader" 0x1541 0x440
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,wf1200cr|\
37 nec,wg1200cr|\
38 wd,mynet-n600|\
39 wd,mynet-n750)
40 caldata_extract "art" 0x1000 0x440
41 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan24mac")
42 ;;
43 engenius,ecb1200|\
44 engenius,ecb1750)
45 caldata_extract "art" 0x1000 0x440
46 ath9k_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env athaddr) 1)
47 ;;
48 engenius,epg5000|\
49 iodata,wn-ac1167dgr|\
50 iodata,wn-ac1600dgr|\
51 iodata,wn-ac1600dgr2|\
52 iodata,wn-ag300dgr|\
53 sitecom,wlr-7100|\
54 sitecom,wlr-8100)
55 caldata_extract "art" 0x1000 0x440
56 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env ethaddr)
57 ;;
58 enterasys,ws-ap3705i)
59 caldata_extract "calibrate" 0x1000 0x440
60 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env0 RADIOADDR1)
61 ;;
62 extreme-networks,ws-ap3805i)
63 caldata_extract "art" 0x1000 0x440
64 ath9k_patch_mac $(mtd_get_mac_ascii cfg1 RADIOADDR1)
65 ;;
66 nec,wg800hp)
67 caldata_extract "art" 0x1000 0x440
68 ath9k_patch_mac $(mtd_get_mac_text board_data 0x680)
69 ;;
70 qihoo,c301)
71 caldata_extract "radiocfg" 0x1000 0x440
72 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan24mac")
73 ;;
74 tplink,deco-s4-v2)
75 caldata_extract "art" 0x1000 0x440
76 base_mac=$(mtd_get_mac_encrypted_deco $(find_mtd_part config))
77 ath9k_patch_mac $(macaddr_add $base_mac 1)
78 ;;
79 *)
80 caldata_die "board $board is not supported yet"
81 ;;
82 esac
83 ;;
84 "ath9k-eeprom-pci-0000:00:00.0.bin")
85 case $board in
86 avm,fritz300e)
87 caldata_extract_reverse "urloader" 0x1541 0x440
88 ;;
89 ubnt,unifi-ap-outdoor-plus)
90 caldata_extract "art" 0x1000 0xeb8
91 ;;
92 buffalo,wzr-hp-g450h|\
93 ubnt,unifi)
94 caldata_extract "art" 0x1000 0x440
95 ;;
96 dlink,dir-825-c1|\
97 dlink,dir-835-a1)
98 caldata_extract "art" 0x5000 0x440
99 ath9k_patch_mac $(macaddr_add $(mtd_get_mac_text "mac" 0x18) 1)
100 ;;
101 enterasys,ws-ap3705i)
102 caldata_extract "calibrate" 0x5000 0x440
103 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env0 RADIOADDR0)
104 ;;
105 meraki,mr12)
106 caldata_extract "art" 0x11000 0xeb8
107 ;;
108 netgear,wnr2200-8m|\
109 netgear,wnr2200-16m|\
110 pcs,cap324|\
111 tplink,tl-wr842n-v1)
112 caldata_extract "art" 0x1000 0x1000
113 ;;
114 wd,mynet-n600|\
115 wd,mynet-n750)
116 caldata_extract "art" 0x5000 0x440
117 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan5mac")
118 ;;
119 wd,mynet-wifi-rangeextender)
120 caldata_extract "art" 0x1000 0x1000
121 ath9k_patch_mac $(nvram get wl0_hwaddr)
122 ;;
123 *)
124 caldata_die "board $board is not supported yet"
125 ;;
126 esac
127 ;;
128 "ath9k-eeprom-pci-0000:00:11.0.bin")
129 case $board in
130 buffalo,wzr-600dhp|\
131 buffalo,wzr-hp-ag300h|\
132 netgear,wndap360)
133 caldata_extract "art" 0x1000 0xeb8
134 ;;
135 dlink,dir-825-b1|\
136 trendnet,tew-673gru)
137 caldata_extract "caldata" 0x1000 0xeb8
138 ath9k_patch_mac_crc $(mtd_get_mac_text "caldata" 0xffa0) 0x20c
139 ;;
140 meraki,mr16)
141 caldata_extract "art" 0x11000 0xeb8
142 ;;
143 *)
144 caldata_die "board $board is not supported yet"
145 ;;
146 esac
147 ;;
148 "ath9k-eeprom-pci-0000:00:12.0.bin")
149 case $board in
150 buffalo,wzr-600dhp|\
151 buffalo,wzr-hp-ag300h|\
152 netgear,wndap360)
153 caldata_extract "art" 0x5000 0xeb8
154 ;;
155 dlink,dir-825-b1|\
156 trendnet,tew-673gru)
157 caldata_extract "caldata" 0x5000 0xeb8
158 ath9k_patch_mac_crc $(macaddr_add $(mtd_get_mac_text "caldata" 0xffb4) 1) 0x20c
159 ;;
160 meraki,mr16)
161 caldata_extract "art" 0x15000 0xeb8
162 ;;
163 *)
164 caldata_die "board $board is not supported yet"
165 ;;
166 esac
167 ;;
168 esac