aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/base-files/lib/preinit/05_layerscape_reorder_eth
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/layerscape/base-files/lib/preinit/05_layerscape_reorder_eth')
-rw-r--r--target/linux/layerscape/base-files/lib/preinit/05_layerscape_reorder_eth28
1 files changed, 28 insertions, 0 deletions
diff --git a/target/linux/layerscape/base-files/lib/preinit/05_layerscape_reorder_eth b/target/linux/layerscape/base-files/lib/preinit/05_layerscape_reorder_eth
new file mode 100644
index 0000000000..c4feec42bc
--- /dev/null
+++ b/target/linux/layerscape/base-files/lib/preinit/05_layerscape_reorder_eth
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+reorder_layerscape_interfaces() {
+ if [ ! -f /tmp/sysinfo/board_name ]; then
+ echo "No board name found, not doing reorder_layerscape_interfaces"
+ return 0
+ fi
+
+ board=$(cat /tmp/sysinfo/board_name)
+ case "$board" in
+ "traverse,ls1043v" | \
+ "traverse,ls1043s")
+
+ # Reorder ethernet interfaces to match the physical order
+ ip link set eth2 name fm1-mac3
+ ip link set eth4 name eth2
+ ip link set eth3 name fm1-mac4
+ ip link set eth5 name eth3
+ ip link set fm1-mac3 name eth4
+ ip link set fm1-mac4 name eth5
+ ;;
+ default)
+ echo "Unknown board $board"
+ ;;
+ esac
+}
+
+boot_hook_add preinit_main reorder_layerscape_interfaces