aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ath79/nand/base-files
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ath79/nand/base-files')
-rwxr-xr-xtarget/linux/ath79/nand/base-files/etc/board.d/02_network4
-rw-r--r--target/linux/ath79/nand/base-files/lib/preinit/10_fix_eth_mac.sh14
2 files changed, 14 insertions, 4 deletions
diff --git a/target/linux/ath79/nand/base-files/etc/board.d/02_network b/target/linux/ath79/nand/base-files/etc/board.d/02_network
index 1626ec31ca..b2191eed92 100755
--- a/target/linux/ath79/nand/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/nand/base-files/etc/board.d/02_network
@@ -48,10 +48,6 @@ ath79_setup_macs()
netgear,wndr4500-v3)
wan_mac=$(mtd_get_mac_binary caldata 0x6)
;;
- zyxel,nbg6716)
- lan_mac=$(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) +2)
- wan_mac=$(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) +3)
- ;;
esac
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
diff --git a/target/linux/ath79/nand/base-files/lib/preinit/10_fix_eth_mac.sh b/target/linux/ath79/nand/base-files/lib/preinit/10_fix_eth_mac.sh
new file mode 100644
index 0000000000..fdd8381f56
--- /dev/null
+++ b/target/linux/ath79/nand/base-files/lib/preinit/10_fix_eth_mac.sh
@@ -0,0 +1,14 @@
+. /lib/functions.sh
+. /lib/functions/system.sh
+
+preinit_set_mac_address() {
+ case $(board_name) in
+ zyxel,nbg6716)
+ ethaddr=$(mtd_get_mac_ascii u-boot-env ethaddr)
+ ip link set dev eth0 address $(macaddr_add $ethaddr 2)
+ ip link set dev eth1 address $(macaddr_add $ethaddr 3)
+ ;;
+ esac
+}
+
+boot_hook_add preinit_main preinit_set_mac_address