aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/gemini/base-files
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/gemini/base-files')
-rw-r--r--target/linux/gemini/base-files/lib/preinit/05_set_ether_mac_gemini13
1 files changed, 13 insertions, 0 deletions
diff --git a/target/linux/gemini/base-files/lib/preinit/05_set_ether_mac_gemini b/target/linux/gemini/base-files/lib/preinit/05_set_ether_mac_gemini
new file mode 100644
index 000000000..499608120
--- /dev/null
+++ b/target/linux/gemini/base-files/lib/preinit/05_set_ether_mac_gemini
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+set_ether_mac() {
+ CONFIG_PARTITION="$(grep "VCTL" /proc/mtd | cut -d: -f1)"
+ MAC1="$(strings /dev/$CONFIG_PARTITION |grep MAC|cut -d: -f2|cut -c3-14|sed -e 's,\(..\),:\1,g' -e 's,^:,,')"
+ MAC2="$(strings /dev/$CONFIG_PARTITION |grep MAC|cut -d: -f8|cut -c3-14|sed -e 's,\(..\),:\1,g' -e 's,^:,,')"
+
+ ifconfig eth0 hw ether $MAC1 2>/dev/null
+ ifconfig eth1 hw ether $MAC2 2>/dev/null
+}
+
+boot_hook_add preinit_main set_ether_mac
+