summaryrefslogtreecommitdiffstats
path: root/target/linux/kirkwood/base-files/lib/preinit/07_set_iface_mac
blob: 75e9e886d9cbda0b48e2fb15cf1cd49817255f54 (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
. /lib/functions.sh
. /lib/functions/system.sh

preinit_set_mac_address() {
	local mac

	case $(board_name) in
	checkpoint,l-50)
		mac=$(mtd_get_mac_ascii bootldr-env lan1_mac_addr)

		ip link set dev lan1 address $mac 2>/dev/null
		ip link set dev lan2 address $(macaddr_add $mac 1) 2>/dev/null
		ip link set dev lan3 address $(macaddr_add $mac 2) 2>/dev/null
		ip link set dev lan4 address $(macaddr_add $mac 3) 2>/dev/null
		ip link set dev lan5 address $(macaddr_add $mac 4) 2>/dev/null
		ip link set dev lan6 address $(macaddr_add $mac 5) 2>/dev/null
		ip link set dev lan7 address $(macaddr_add $mac 6) 2>/dev/null
		ip link set dev lan8 address $(macaddr_add $mac 7) 2>/dev/null
		ip link set dev dmz address $(macaddr_add $mac 8) 2>/dev/null
		ip link set dev dsl address $(macaddr_add $mac 9) 2>/dev/null
		;;
	esac
}

boot_hook_add preinit_main preinit_set_mac_address