ath79: convert OCEDO Raccoon WiFis to nvmem-cells
[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 ubnt,unifi-ap-pro|\
87 winchannel,wb2000)
88 caldata_extract "art" 0x5000 0x440
89 ;;
90 avm,fritz300e)
91 caldata_extract_reverse "urloader" 0x1541 0x440
92 ;;
93 buffalo,wzr-hp-g302h-a1a0|\
94 ubnt,unifi-ap-outdoor-plus)
95 caldata_extract "art" 0x1000 0xeb8
96 ;;
97 buffalo,wzr-hp-g450h|\
98 ubnt,unifi)
99 caldata_extract "art" 0x1000 0x440
100 ;;
101 dlink,dir-825-c1|\
102 dlink,dir-835-a1)
103 caldata_extract "art" 0x5000 0x440
104 ath9k_patch_mac $(macaddr_add $(mtd_get_mac_text "mac" 0x18) 1)
105 ;;
106 enterasys,ws-ap3705i)
107 caldata_extract "calibrate" 0x5000 0x440
108 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env0 RADIOADDR0)
109 ;;
110 meraki,mr12)
111 caldata_extract "art" 0x11000 0xeb8
112 ;;
113 netgear,wnr2200-8m|\
114 netgear,wnr2200-16m|\
115 pcs,cap324|\
116 tplink,tl-wr842n-v1)
117 caldata_extract "art" 0x1000 0x1000
118 ;;
119 openmesh,mr600-v1|\
120 openmesh,mr600-v2|\
121 openmesh,om5p-an)
122 caldata_extract "ART" 0x5000 0x440
123 ;;
124 openmesh,om2p-v1)
125 caldata_extract "ART" 0x1000 0x440
126 ;;
127 wd,mynet-n600|\
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,wndap360)
146 caldata_extract "art" 0x1000 0xeb8
147 ;;
148 dlink,dir-825-b1|\
149 trendnet,tew-673gru)
150 caldata_extract "caldata" 0x1000 0xeb8
151 ath9k_patch_mac_crc $(mtd_get_mac_text "caldata" 0xffa0) 0x20c
152 ;;
153 meraki,mr16)
154 caldata_extract "art" 0x11000 0xeb8
155 ;;
156 *)
157 caldata_die "board $board is not supported yet"
158 ;;
159 esac
160 ;;
161 "ath9k-eeprom-pci-0000:00:12.0.bin")
162 case $board in
163 buffalo,wzr-600dhp|\
164 buffalo,wzr-hp-ag300h|\
165 netgear,wndap360)
166 caldata_extract "art" 0x5000 0xeb8
167 ;;
168 dlink,dir-825-b1|\
169 trendnet,tew-673gru)
170 caldata_extract "caldata" 0x5000 0xeb8
171 ath9k_patch_mac_crc $(macaddr_add $(mtd_get_mac_text "caldata" 0xffb4) 1) 0x20c
172 ;;
173 meraki,mr16)
174 caldata_extract "art" 0x15000 0xeb8
175 ;;
176 *)
177 caldata_die "board $board is not supported yet"
178 ;;
179 esac
180 ;;
181 esac