diff options
| author | Kenneth Kasilag | 2025-10-20 22:53:09 +0000 |
|---|---|---|
| committer | Robert Marko | 2025-10-29 21:01:23 +0000 |
| commit | 130306fab93656865178c5a9d40a08885f9d70d6 (patch) | |
| tree | c134b36060ebebe897f9fe53deef0b582f080734 | |
| parent | 120b70a6e267a23cc7675703b311a62769abe334 (diff) | |
| download | openwrt-130306fab93656865178c5a9d40a08885f9d70d6.tar.gz | |
airoha: support openwrt,netdev-name for renaming interfaces
Add support to the airoha target for the OpenWrt-specific DT property
`openwrt,netdev-name`. In particular, this is for interfaces under
non-DSA `airoha_eth` interfaces.
This will avoid conflicts with upstream code[1]; and maintain forward
compatibility with OpenWrt configurations if/when `airoha_eth` becomes
a full DSA driver.
[1] https://lore.kernel.org/netdev/20240709124503.pubki5nwjfbedhhy@skbuf/
Borrowed from d4d6c48 (mediatek: filogic: support openwrt,netdev-name for renaming interfaces)
Signed-off-by: Kenneth Kasilag <kenneth@kasilag.me>
Link: https://github.com/openwrt/openwrt/pull/20475
Signed-off-by: Robert Marko <robimarko@gmail.com>
| -rwxr-xr-x | target/linux/airoha/base-files/lib/preinit/04_set_netdev_label | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/target/linux/airoha/base-files/lib/preinit/04_set_netdev_label b/target/linux/airoha/base-files/lib/preinit/04_set_netdev_label new file mode 100755 index 0000000000..2042d56315 --- /dev/null +++ b/target/linux/airoha/base-files/lib/preinit/04_set_netdev_label @@ -0,0 +1,15 @@ +set_netdev_labels() { + local dir + local label + local netdev + + for dir in /sys/class/net/*; do + [ -r "$dir/of_node/openwrt,netdev-name" ] || continue + read -r label < "$dir/of_node/openwrt,netdev-name" + netdev="${dir##*/}" + [ "$netdev" = "$label" ] && continue + ip link set "$netdev" name "$label" + done +} + +boot_hook_add preinit_main set_netdev_labels |