aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ixp4xx/base-files/lib/preinit
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2010-01-25 17:11:17 +0000
committerFelix Fietkau <nbd@openwrt.org>2010-01-25 17:11:17 +0000
commit56bc02a305ae8d8a7e927622d924cdab56d4f012 (patch)
tree079702f93a3ad4420b99f31bc99c1b9b2b9a8a08 /target/linux/ixp4xx/base-files/lib/preinit
parent35170c48928e99dda69d46274c2749bc9bff972d (diff)
downloadupstream-56bc02a305ae8d8a7e927622d924cdab56d4f012.tar.gz
upstream-56bc02a305ae8d8a7e927622d924cdab56d4f012.tar.bz2
upstream-56bc02a305ae8d8a7e927622d924cdab56d4f012.zip
add preinit modularization work by Daniel Dickinson (cshore)
SVN-Revision: 19331
Diffstat (limited to 'target/linux/ixp4xx/base-files/lib/preinit')
-rw-r--r--target/linux/ixp4xx/base-files/lib/preinit/05_set_ether_mac_ixp4xx23
1 files changed, 23 insertions, 0 deletions
diff --git a/target/linux/ixp4xx/base-files/lib/preinit/05_set_ether_mac_ixp4xx b/target/linux/ixp4xx/base-files/lib/preinit/05_set_ether_mac_ixp4xx
new file mode 100644
index 0000000000..e19e0ec250
--- /dev/null
+++ b/target/linux/ixp4xx/base-files/lib/preinit/05_set_ether_mac_ixp4xx
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+set_ether_mac() {
+
+ RB_CONFIG="$(grep "RedBoot config" /proc/mtd | cut -d: -f1)"
+
+ for npe in eth0 eth1 eth2
+ do
+ if [ "$(ifconfig $npe 2>/dev/null | grep -c 00:00:00:00:00:00)" == "1" ]; then
+ ifconfig $npe hw ether $(fconfig -s -r -d /dev/$RB_CONFIG -n npe_"$npe"_esa)
+ fi
+ done
+
+ # Some developers should be shot on sight at Zcom/Netgear
+ # -- Fixup for the WG302v1, need someone with a WAG302v1 to fix that, too
+
+ if [ "$(ifconfig eth0 2>/dev/null | grep -c 00:00:00:00:00:00)" == "1" ]; then
+ ifconfig eth0 hw ether $(fconfig -s -r -d /dev/$RB_CONFIG -n zcom_npe_esa)
+ fi
+}
+
+boot_hook_add preinit_main set_ether_mac
+