summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/ixp4xx/Makefile2
-rwxr-xr-xtarget/linux/ixp4xx/base-files/etc/preinit.arch8
2 files changed, 9 insertions, 1 deletions
diff --git a/target/linux/ixp4xx/Makefile b/target/linux/ixp4xx/Makefile
index e6b15e537..7b95752cb 100644
--- a/target/linux/ixp4xx/Makefile
+++ b/target/linux/ixp4xx/Makefile
@@ -22,6 +22,6 @@ define Kernel/Configure
$(if $(CONFIG_EABI_SUPPORT),echo '# CONFIG_OABI_COMPAT is not set' >> $(LINUX_DIR)/.config)
endef
-DEFAULT_PACKAGES += ixp4xx-microcode
+DEFAULT_PACKAGES += ixp4xx-microcode fconfig
$(eval $(call BuildTarget))
diff --git a/target/linux/ixp4xx/base-files/etc/preinit.arch b/target/linux/ixp4xx/base-files/etc/preinit.arch
new file mode 100755
index 000000000..1ee1d7404
--- /dev/null
+++ b/target/linux/ixp4xx/base-files/etc/preinit.arch
@@ -0,0 +1,8 @@
+RB_CONFIG="$(grep "RedBoot config" /proc/mtd | cut -d: -f1)"
+
+for npe in eth0 eth1
+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