[RFC 5/6] qoriq: dts and board.d changes to fix device names

Evan Jobling evan.jobling at mslsc.com.au
Wed Oct 9 01:08:08 PDT 2024


initial port naming does not match factory.
This required changes to preinit.
Altnames being set is future work.
Setting DSA conduit master is future work.

Initial dsa port names match upstream sw0p<port> for
consistency. The only conflicts are p0 and p1
which were previously named sweth3 / sweth4.

eth3 and eth4 are renamed conduit1 and conduit0.

Switch ports sweth3-sweth7 are renamed
eth3-eth7 per factory.

Device image compat update as breaking changes to
interface naming.

Signed-off-by: Evan Jobling <evan.jobling at mslsc.com.au>
---
 .../qoriq/base-files/etc/board.d/02_network   | 34 +++++++++++++++----
 .../base-files/etc/board.d/05_compat-version  |  2 +-
 .../boot/dts/fsl/watchguard-firebox-m300.dts  | 10 +++---
 target/linux/qoriq/image/generic.mk           |  4 +--
 4 files changed, 36 insertions(+), 14 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
index 355c8d37a4..5e2780ea53 100644
--- a/target/linux/qoriq/base-files/etc/board.d/02_network
+++ b/target/linux/qoriq/base-files/etc/board.d/02_network
@@ -19,15 +19,37 @@ watchguard,firebox-m300)
 	ucidef_set_interfaces_lan_wan "eth1" "eth0"
 	wg_set_opt_interface "eth2" "2"
 
-	sweth_mac_offset=0x186d
+        ucidef_set_network_device_path "conduit0" "platform/ffe000000.soc/ffe400000.fman/ffe4e6000.ethernet"
+        ucidef_set_network_device_path "conduit1" "platform/ffe000000.soc/ffe400000.fman/ffe4e4000.ethernet"
 
-	for sweth in $(find /sys/class/net/ -name 'sweth*' -print); do
-		device="$(basename "$sweth")"
-		mac="$(mtd_get_mac_text wg_cfg0 "$sweth_mac_offset")"
+        ucidef_set_network_device_label "sw0p0" "eth3"
+        ucidef_set_network_device_label "sw0p1" "eth4"
+        ucidef_set_network_device_label "sw0p2" "eth5"
+        ucidef_set_network_device_label "sw0p3" "eth5"
+        ucidef_set_network_device_label "sw0p4" "eth7"
+
+        ucidef_set_network_device_altname "eth3" "sweth3"
+        ucidef_set_network_device_altname "eth4" "sweth4"
+        ucidef_set_network_device_altname "eth5" "sweth5"
+        ucidef_set_network_device_altname "eth5" "sweth6"
+        ucidef_set_network_device_altname "eth7" "sweth7"
+
+        ucidef_set_network_device_conduit "eth3" "conduit0"
+        ucidef_set_network_device_conduit "eth4" "conduit0"
+        ucidef_set_network_device_conduit "eth5" "conduit0"
+        ucidef_set_network_device_conduit "eth6" "conduit0"
+        ucidef_set_network_device_conduit "eth7" "conduit0"
+
+
+	eth_mac_offset=0x186d
+
+	for eth in $(find /sys/class/net/ -name 'eth[3-7]' -print); do
+		device="$(basename "$eth")"
+		mac="$(mtd_get_mac_text wg_cfg0 "$eth_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)))
+		wg_set_opt_interface "$device" "${device#eth}"
+                eth_mac_offset=$(printf "0x%X\n" $(( $eth_mac_offset + 0x14)))
 	done
 
 	;;
diff --git a/target/linux/qoriq/base-files/etc/board.d/05_compat-version b/target/linux/qoriq/base-files/etc/board.d/05_compat-version
index 2036fbcc95..fc9885054a 100644
--- a/target/linux/qoriq/base-files/etc/board.d/05_compat-version
+++ b/target/linux/qoriq/base-files/etc/board.d/05_compat-version
@@ -7,7 +7,7 @@ board_config_update
 
 case "$(board_name)" in
 	watchguard,firebox-m300)
-		ucidef_set_compat_version "1.1"
+		ucidef_set_compat_version "1.2"
 		;;
 esac
 
diff --git a/target/linux/qoriq/files/arch/powerpc/boot/dts/fsl/watchguard-firebox-m300.dts b/target/linux/qoriq/files/arch/powerpc/boot/dts/fsl/watchguard-firebox-m300.dts
index c611263099..abc0f24570 100644
--- a/target/linux/qoriq/files/arch/powerpc/boot/dts/fsl/watchguard-firebox-m300.dts
+++ b/target/linux/qoriq/files/arch/powerpc/boot/dts/fsl/watchguard-firebox-m300.dts
@@ -235,31 +235,31 @@
 
 			port at 0 {
 				reg = <0>;
-				label = "sweth3";
+				label = "sw0p0";
 				phy-handle = <&switch0phy0>;
 			};
 
 			port at 1 {
 				reg = <1>;
-				label = "sweth4";
+				label = "sw0p1";
 				phy-handle = <&switch0phy1>;
 			};
 
 			port at 2 {
 				reg = <2>;
-				label = "sweth5";
+				label = "sw0p2";
 				phy-handle = <&switch0phy2>;
 			};
 
 			port at 3 {
 				reg = <3>;
-				label = "sweth6";
+				label = "sw0p3";
 				phy-handle = <&switch0phy3>;
 			};
 
 			port at 4 {
 				reg = <4>;
-				label = "sweth7";
+				label = "sw0p4";
 				phy-handle = <&switch0phy4>;
 			};
 
diff --git a/target/linux/qoriq/image/generic.mk b/target/linux/qoriq/image/generic.mk
index d2b60d2296..5fd43f061c 100644
--- a/target/linux/qoriq/image/generic.mk
+++ b/target/linux/qoriq/image/generic.mk
@@ -2,8 +2,8 @@ define Device/watchguard_firebox-m300
   DEVICE_VENDOR := WatchGuard
   DEVICE_MODEL := Firebox M300
   DEVICE_COMPAT_MESSAGE := \
-	Kernel switched to FIT uImage. Update U-Boot environment.
-  DEVICE_COMPAT_VERSION := 1.1
+	Device ethernet naming changed to match factory.
+  DEVICE_COMPAT_VERSION := 1.2
   DEVICE_DTS_DIR := $(DTS_DIR)/fsl
   DEVICE_PACKAGES := \
 	kmod-gpio-button-hotplug kmod-hwmon-w83793 kmod-leds-gpio kmod-ptp-qoriq \
-- 
2.39.5




More information about the openwrt-devel mailing list