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