|
|
@@ -57,9 +57,33 @@ ipq807x_setup_interfaces()
|
|
|
esac
|
|
|
}
|
|
|
|
|
|
+ipq807x_setup_macs()
|
|
|
+{
|
|
|
+ local board="$1"
|
|
|
+ local lan_mac=""
|
|
|
+ local wan_mac=""
|
|
|
+ local label_mac=""
|
|
|
+
|
|
|
+ case "$board" in
|
|
|
+ linksys,mx4200v1|\
|
|
|
+ linksys,mx4200v2)
|
|
|
+ label_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
|
|
|
+ for i in $(seq 3 5); do
|
|
|
+ [ "$(mtd_get_mac_ascii u_env eth${i}addr)" != "$label_mac" ] && lan_mac=$label_mac
|
|
|
+ done
|
|
|
+ [ "$(mtd_get_mac_ascii u_env eth2addr)" != "$label_mac" ] && wan_mac=$label_mac
|
|
|
+ ;;
|
|
|
+ esac
|
|
|
+
|
|
|
+ [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
|
|
|
+ [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
|
|
|
+ [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
|
|
|
+}
|
|
|
+
|
|
|
board_config_update
|
|
|
board=$(board_name)
|
|
|
ipq807x_setup_interfaces $board
|
|
|
+ipq807x_setup_macs $board
|
|
|
board_config_flush
|
|
|
|
|
|
exit 0
|