summaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/base-files/lib/preinit/06_set_iface_mac
blob: fcfb86bd59031e85eed3dd806478efd389071015 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#
# Copyright (C) 2011 OpenWrt.org
#

preinit_set_mac_address() {
	local mac

	. /lib/functions.sh
	. /lib/ramips.sh

	case $(ramips_board_name) in
	3g-6200n |\
	3g300m | \
	mzk-w300nh2 |\
	wl-330n |\
	wl-330n3g)
		mac=$(mtd_get_mac_binary factory 4)
		ifconfig eth0 hw ether $mac 2>/dev/null
		;;
	bc2 |\
	broadway |\
	dir-620-a1 |\
	esr-9753 |\
	freestation5 |\
	nw718 |\
	psr-680w |\
	rt-n56u |\
	sl-r7205)
		mac=$(mtd_get_mac_binary factory 4)
		mac=$(macaddr_setbit_la "$mac")
		ifconfig eth0 hw ether $mac 2>/dev/null
		;;
	dir-300-b1 |\
	dir-300-b2 |\
	dir-600-b1)
                mac=$(mtd_get_mac_binary devdata 16388)
                ifconfig eth0 hw ether $mac 2>/dev/null
                ;;
	dir-645)
		mac=$(mtd_get_mac_ascii nvram lanmac)
		mac=$(macaddr_setbit_la "$mac")
		ifconfig eth0 hw ether $mac 2>/dev/null
		;;
	dap-1350)
		mac=$(mtd_get_mac_binary devdata 46)
		ifconfig eth0 hw ether $mac 2>/dev/null
                ;;
	all0239-3g |\
	all0256n |\
	all5002 |\
	carambola |\
	dir-615-h1 |\
	fonera20n |\
	rt-n13u |\
	hw550-3g |\
	nbg-419n |\
	omni-emb |\
	omni-emb-hpm |\
	tew-691gr |\
	tew-692gr |\
	w306r-v20 |\
	w502u    |\
	wr6202 |\
	xdxrn502j)
		mac=$(mtd_get_mac_binary factory 40)
		ifconfig eth0 hw ether $mac 2>/dev/null
		;;
	wl341v3)
		mac=$(mtd_get_mac_binary board-nvram 65440)
		ifconfig eth0 hw ether $mac 2>/dev/null
		;;
	rt-n10-plus)
		mac=$(mtd_get_mac_binary devconf 4)
		ifconfig eth0 hw ether $mac 2>/dev/null
		;;
	esac
}

boot_hook_add preinit_main preinit_set_mac_address