ramips: add support for Cudy X6
[openwrt/openwrt.git] / target / linux / ramips / mt7621 / base-files / etc / hotplug.d / ieee80211 / 10_fix_wifi_mac
1 [ "$ACTION" == "add" ] || exit 0
2
3 PHYNBR=${DEVPATH##*/phy}
4
5 [ -n $PHYNBR ] || exit 0
6
7 . /lib/functions.sh
8 . /lib/functions/system.sh
9
10 board=$(board_name)
11
12 case "$board" in
13 beeline,smartbox-flash)
14 hw_mac_addr_ra0="$(mtd_get_mac_ascii u-boot-env ra0macaddr)"
15 hw_mac_addr_rax0="$(mtd_get_mac_ascii u-boot-env rax0macaddr)"
16 [ "$PHYNBR" = "0" ] && echo -n $hw_mac_addr_ra0 > /sys${DEVPATH}/macaddress
17 [ "$PHYNBR" = "1" ] && echo -n $hw_mac_addr_rax0 > /sys${DEVPATH}/macaddress
18 ;;
19 cudy,x6)
20 hw_mac_addr="$(mtd_get_mac_binary factory 0x4)"
21 macaddr_add $hw_mac_addr "$PHYNBR" > /sys${DEVPATH}/macaddress
22 ;;
23 dlink,dir-853-a3)
24 [ "$PHYNBR" = "0" ] && \
25 macaddr_setbit_la "$(mtd_get_mac_binary factory 0xe000)" \
26 > /sys${DEVPATH}/macaddress
27 ;;
28 dlink,dir-853-r1|\
29 phicomm,k2p)
30 if [ "$PHYNBR" = "0" ]; then
31 base_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" -1)
32 macaddr_setbit_la "$base_mac" > /sys${DEVPATH}/macaddress
33 fi
34 ;;
35 glinet,gl-mt1300)
36 [ "$PHYNBR" = "1" ] && \
37 macaddr_add "$(mtd_get_mac_binary factory 0x4)" 1 > /sys${DEVPATH}/macaddress
38 ;;
39 hiwifi,hc5962)
40 label_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ")
41 [ "$PHYNBR" = "0" ] && [ -n "$label_mac" ] && \
42 echo -n "$label_mac" > /sys${DEVPATH}/macaddress
43 [ "$PHYNBR" = "1" ] && [ -n "$label_mac" ] && \
44 macaddr_unsetbit "$label_mac" 6 > /sys${DEVPATH}/macaddress
45 ;;
46 iptime,a3002mesh|\
47 iptime,a3004t)
48 hw_mac_addr="$(mtd_get_mac_binary factory 0x4)"
49 [ "$PHYNBR" = "0" ] && \
50 macaddr_setbit_la "$(macaddr_add $hw_mac_addr 3)" > /sys${DEVPATH}/macaddress
51 [ "$PHYNBR" = "1" ] && echo -n "$hw_mac_addr" > /sys${DEVPATH}/macaddress
52 ;;
53 iptime,ax2004m)
54 if [ "$PHYNBR" = "1" ]; then
55 hw_mac_addr="$(mtd_get_mac_binary factory 0x4)"
56 macaddr_setbit_la "$(macaddr_add $hw_mac_addr 3)" > /sys${DEVPATH}/macaddress
57 fi
58 ;;
59 jcg,q20)
60 [ "$PHYNBR" = "1" ] && \
61 macaddr_setbit_la "$(mtd_get_mac_binary Factory 0x4)" > /sys${DEVPATH}/macaddress
62 ;;
63 jcg,y2)
64 [ "$PHYNBR" = "1" ] && \
65 macaddr_setbit_la "$(mtd_get_mac_binary factory 0x4)" > /sys${DEVPATH}/macaddress
66 ;;
67 linksys,e5600|\
68 linksys,ea6350-v4|\
69 linksys,ea7300-v1|\
70 linksys,ea7300-v2|\
71 linksys,ea7500-v2|\
72 linksys,ea8100-v1|\
73 linksys,ea8100-v2)
74 hw_mac_addr=$(mtd_get_mac_ascii devinfo hw_mac_addr)
75 [ "$PHYNBR" = "0" ] && macaddr_add $hw_mac_addr 1 > /sys${DEVPATH}/macaddress
76 [ "$PHYNBR" = "1" ] && macaddr_add $hw_mac_addr 2 > /sys${DEVPATH}/macaddress
77 ;;
78 oraybox,x3a)
79 if [ "$PHYNBR" = "1" ]; then
80 hw_mac_addr="$(mtd_get_mac_binary factory 0x4)"
81 macaddr_setbit_la "$(macaddr_add $hw_mac_addr 0x100000)" > /sys${DEVPATH}/macaddress
82 fi
83 ;;
84 raisecom,msg1500-x-00)
85 [ "$PHYNBR" = "0" ] && \
86 macaddr_setbit_la "$(mtd_get_mac_ascii Config protest_lan_mac)" \
87 > /sys${DEVPATH}/macaddress
88 ;;
89 tenbay,t-mb5eu-v01)
90 hw_mac_addr="$(mtd_get_mac_binary factory 0x4)"
91 [ "$PHYNBR" = "1" ] && macaddr_add $hw_mac_addr "0x100000" > /sys${DEVPATH}/macaddress
92 ;;
93 yuncore,ax820)
94 [ "$PHYNBR" = "1" ] && \
95 macaddr_setbit_la "$(mtd_get_mac_binary Factory 0xe000)" > /sys${DEVPATH}/macaddress
96 ;;
97 esac