ath79: add support for AVM FRITZ!WLAN Repeater 450E
[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 avm,fritz1750e|\
13 avm,fritz4020|\
14 avm,fritz450e)
15 caldata_extract_reverse "urlader" 0x1541 0x440
16 ;;
17 dlink,dir-505|\
18 dlink,dir-825-c1|\
19 dlink,dir-835-a1)
20 caldata_extract "art" 0x1000 0x440
21 ath9k_patch_mac $(mtd_get_mac_text "mac" 0x4)
22 ;;
23 dlink,dir-842-c1|\
24 dlink,dir-842-c2|\
25 dlink,dir-842-c3|\
26 dlink,dir-859-a1|\
27 nec,wg1200cr|\
28 wd,mynet-n750)
29 caldata_extract "art" 0x1000 0x440
30 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan24mac")
31 ;;
32 engenius,ecb1750)
33 caldata_extract "art" 0x1000 0x440
34 ath9k_patch_mac $(macaddr_add $(mtd_get_mac_ascii u-boot-env "athaddr") +1)
35 ;;
36 engenius,epg5000|\
37 iodata,wn-ac1167dgr|\
38 iodata,wn-ac1600dgr|\
39 iodata,wn-ac1600dgr2|\
40 iodata,wn-ag300dgr|\
41 sitecom,wlr-7100|\
42 sitecom,wlr-8100)
43 caldata_extract "art" 0x1000 0x440
44 ath9k_patch_mac $(mtd_get_mac_ascii u-boot-env ethaddr)
45 ;;
46 nec,wg800hp)
47 caldata_extract "art" 0x1000 0x440
48 ath9k_patch_mac $(mtd_get_mac_text board_data 0x680)
49 ;;
50 qihoo,c301)
51 caldata_extract "radiocfg" 0x1000 0x440
52 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan24mac")
53 ;;
54 *)
55 caldata_die "board $board is not supported yet"
56 ;;
57 esac
58 ;;
59 "ath9k-eeprom-pci-0000:00:00.0.bin")
60 case $board in
61 avm,fritz300e)
62 caldata_extract_reverse "urloader" 0x1541 0x440
63 ;;
64 buffalo,wzr-hp-g302h-a1a0)
65 caldata_extract "art" 0x1000 0xeb8
66 ;;
67 buffalo,wzr-hp-g450h)
68 caldata_extract "art" 0x1000 0x440
69 ;;
70 dlink,dir-825-c1|\
71 dlink,dir-835-a1)
72 caldata_extract "art" 0x5000 0x440
73 ath9k_patch_mac $(macaddr_add $(mtd_get_mac_text "mac" 0x18) 1)
74 ;;
75 ocedo,raccoon|\
76 tplink,tl-wdr3500-v1|\
77 tplink,tl-wdr3600-v1|\
78 tplink,tl-wdr4300-v1|\
79 tplink,tl-wdr4300-v1-il|\
80 tplink,tl-wdr4310-v1|\
81 tplink,tl-wdr4900-v2|\
82 winchannel,wb2000)
83 caldata_extract "art" 0x5000 0x440
84 ;;
85 netgear,wnr2200-8m|\
86 netgear,wnr2200-16m|\
87 pcs,cap324|\
88 tplink,tl-wr2543-v1|\
89 tplink,tl-wr842n-v1|\
90 ubnt,airrouter|\
91 ubnt,bullet-m-ar7240|\
92 ubnt,bullet-m-ar7241|\
93 ubnt,nanobridge-m|\
94 ubnt,nanostation-loco-m|\
95 ubnt,nanostation-m|\
96 ubnt,picostation-m|\
97 ubnt,rocket-m)
98 caldata_extract "art" 0x1000 0x1000
99 ;;
100 ubnt,unifi)
101 caldata_extract "art" 0x1000 0x800
102 ;;
103 wd,mynet-n750)
104 caldata_extract "art" 0x5000 0x440
105 ath9k_patch_mac $(mtd_get_mac_ascii devdata "wlan5mac")
106 ;;
107 wd,mynet-wifi-rangeextender)
108 caldata_extract "art" 0x1000 0x1000
109 ath9k_patch_mac $(nvram get wl0_hwaddr)
110 ;;
111 *)
112 caldata_die "board $board is not supported yet"
113 ;;
114 esac
115 ;;
116 "ath9k-eeprom-pci-0000:00:11.0.bin")
117 case $board in
118 buffalo,wzr-hp-ag300h|\
119 netgear,wndr3700|\
120 netgear,wndr3700-v2|\
121 netgear,wndr3800|\
122 netgear,wndr3800ch)
123 caldata_extract "art" 0x1000 0xeb8
124 ;;
125 dlink,dir-825-b1)
126 caldata_extract "caldata" 0x1000 0xeb8
127 ath9k_patch_mac_crc $(mtd_get_mac_text "caldata" 0xffa0) 0x20c
128 ;;
129 *)
130 caldata_die "board $board is not supported yet"
131 ;;
132 esac
133 ;;
134 "ath9k-eeprom-pci-0000:00:12.0.bin")
135 case $board in
136 buffalo,wzr-hp-ag300h|\
137 netgear,wndr3700|\
138 netgear,wndr3700-v2|\
139 netgear,wndr3800|\
140 netgear,wndr3800ch)
141 caldata_extract "art" 0x5000 0xeb8
142 ;;
143 dlink,dir-825-b1)
144 caldata_extract "caldata" 0x5000 0xeb8
145 ath9k_patch_mac_crc $(macaddr_add $(mtd_get_mac_text "caldata" 0xffb4) 1) 0x20c
146 ;;
147 *)
148 caldata_die "board $board is not supported yet"
149 ;;
150 esac
151 ;;
152 esac