aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac')
-rw-r--r--target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac26
1 files changed, 26 insertions, 0 deletions
diff --git a/target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac b/target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac
new file mode 100644
index 0000000..876c08b
--- /dev/null
+++ b/target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac
@@ -0,0 +1,26 @@
+#
+# Copyright (C) 2014-2015 OpenWrt.org
+#
+
+preinit_set_mac_address() {
+ local mac
+
+ . /lib/functions.sh
+ . /lib/mvebu.sh
+
+ case $(mvebu_board_name) in
+ armada-xp-linksys-mamba)
+ mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
+ ifconfig eth0 hw ether $mac 2>/dev/null
+ ifconfig eth1 hw ether $mac 2>/dev/null
+ ;;
+ armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-shelby)
+ mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
+ mac_wan=$(macaddr_setbit_la "$mac")
+ ifconfig eth1 hw ether $mac 2>/dev/null
+ ifconfig eth0 hw ether $mac_wan 2>/dev/null
+ ;;
+ esac
+}
+
+boot_hook_add preinit_main preinit_set_mac_address