mediatek: mt7622: add netdev rename preinit script
authorDaniel Golle <daniel@makrotopia.org>
Tue, 15 Oct 2024 23:10:28 +0000 (00:10 +0100)
committerDaniel Golle <daniel@makrotopia.org>
Tue, 15 Oct 2024 23:10:28 +0000 (00:10 +0100)
Add preinit script to rename network interfaces according to the
label provided in Device Tree.

Fixes: b6d8297510 ("mediatek: mt7622: add Adtran SmartRG SDG-841t6 device")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
target/linux/mediatek/mt7622/base-files/lib/preinit/04_set_netdev_label [new file with mode: 0644]

diff --git a/target/linux/mediatek/mt7622/base-files/lib/preinit/04_set_netdev_label b/target/linux/mediatek/mt7622/base-files/lib/preinit/04_set_netdev_label
new file mode 100644 (file)
index 0000000..110e023
--- /dev/null
@@ -0,0 +1,15 @@
+set_netdev_labels() {
+       local dir
+       local label
+       local netdev
+
+       for dir in /sys/class/net/*; do
+               [ -r "$dir/of_node/label" ] || continue
+               read -r label < "$dir/of_node/label"
+               netdev="${dir##*/}"
+               [ "$netdev" = "$label" ] && continue
+               ip link set "$netdev" name "$label"
+       done
+}
+
+boot_hook_add preinit_main set_netdev_labels