aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/qoriq/base-files/etc/board.d/02_network
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/qoriq/base-files/etc/board.d/02_network')
-rw-r--r--target/linux/qoriq/base-files/etc/board.d/02_network38
1 files changed, 38 insertions, 0 deletions
diff --git a/target/linux/qoriq/base-files/etc/board.d/02_network b/target/linux/qoriq/base-files/etc/board.d/02_network
new file mode 100644
index 0000000000..35b7ce9f32
--- /dev/null
+++ b/target/linux/qoriq/base-files/etc/board.d/02_network
@@ -0,0 +1,38 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+. /lib/functions/uci-defaults.sh
+. /lib/functions.sh
+. /lib/functions/system.sh
+
+board_config_update
+board=$(board_name)
+
+wg_set_opt_interface() {
+ local device="$1"
+ local offset="$2"
+
+ ucidef_set_interface "$device" device "$device" protocol static ipaddr "10.0.${offset}.1" netmask 255.255.255.0
+}
+
+case "$board" in
+watchguard,firebox-m300)
+ ucidef_set_interfaces_lan_wan "eth1" "eth0"
+ wg_set_opt_interface "eth2" "2"
+
+ sweth_mac_offset=0x186d
+
+ for sweth in /sys/class/net/sweth*; do
+ device="$(basename "$sweth")"
+ mac="$(mtd_get_mac_text wg_cfg0 "$sweth_mac_offset")"
+ switchports="$switchports $device"
+ ucidef_set_network_device_mac "$device" "$mac"
+ wg_set_opt_interface "$device" "${device#sweth}"
+ sweth_mac_offset=$(printf "0x%X\n" $(( $sweth_mac_offset + 0x14)))
+ done
+
+ ;;
+esac
+
+board_config_flush
+
+exit 0