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