IPQ5018 and Motorcomm YT9215s

Hi,

I am using an IPQ5018 board with a Motorcomm YT9215 switch chip, running the latest OpenWrt version. To save time, I used the DTS from MX2200 with some modifications.

  • Hardware connections: IPQ5018 with GE PHY as the WAN port, MDIO1 connected to the YT9215S switch as LAN. YT9215S on MDIO1 has PHY address = 29.

  • Problem: The kernel still detects the YT9215S ID, the CPU port fixed link shows up, but the LAN ports for connecting devices do not have link.

[This switch chip is quite new to me, and I’m not sure where to start. Could someone who has used it before give me some suggestions?

patch yt921x : ](https://lore.kernel.org/all/20250820075420.1601068-4-mmyangfl@gmail.com/)

Uboot :

DRAM:  smem ram ptable found: ver: 1 len: 4
512 MiB
NAND:  QPIC controller support serial NAND
ID = 21baef
Vendor = ef
Device = ba
Serial Nand Device Found With ID : 0xef 0xba
Serial NAND device Manufacturer:W25N01GWZEIG
Device Size:128 MiB, Page size:2048, Spare Size:64, ECC:4-bit
SF: Unsupported flash IDs: manuf 00, jedec 0000, ext_jedec 0000
ipq_spi: SPI Flash not found (bus/cs/speed/mode) = (0/0/48000000/0)
128 MiB
MMC:   sdhci: Node Not found, skipping initialization

PCI Link Intialized
In:    serial@78AF000
Out:   serial@78AF000
Err:   serial@78AF000
machid: 8040202
Uboot: reading press button state again
Press Esc to stop autoboot:  0 

Net:   cmbblk is stable 5
MAC0 addr:cc:d8:43:4c:1d:f0
PHY ID1: 0x4d
PHY ID2: 0xd0c0
MAC1 addr:50:88:11:84:59:d2
board_update_caldata: Unable to find slot-Id, Default CapIn/CapOut values used
eth0, eth1
IPQ5018# 
nknown command 'ry 'help'
IPQ5018# mii dev 'IPQ MDIO1'
IPQ5018# mii info
PHY 0x1D: OUI = 0x37AB77, Model = 0x2A, Rev = 0x0D, 100baseT, FDX
IPQ5018# 


DTS :

/*
 * ===============================================================
 *     _______________________         _______________________
 *    |        IPQ5018        |       |                       |
 *    | +------+   +--------+ |       | +--------+            |
 *    | | MAC0 |---| GE Phy | | ----- |    RJ45
 *    | +------+   +--------+ |       | +--------+   +------+ |
 *    | +------+   +--------+ |       | +--------+   +------+ |
 *    | | MAC1 |---| Uniphy |-+-SGMII-+-| SerDes |---| MAC| |
 *    | +------+   +--------+ |       | +--------+   +------+ |
 *    |_______________________|       |_______________________|
 *
 * ===============================================================
 */

&switch {
	status = "okay";

	switch_mac_mode = <MAC_MODE_SGMII_CHANNEL0>;

	qcom,port_phyinfo {
		port@0 {
			port_id = <1>;
			mdiobus = <&mdio0>;
			phy_address = <7>;
		};

		port@1 {
			port_id = <2>;
			forced-speed = <1000>;
			forced-duplex = <1>;
		};
	};
};

&dp1 {
	status = "okay";
	label = "wan";
};

&dp2 {
	status = "okay";
	fixed-link {
		speed = <1000>;
		full-duplex;
	};
};

&mdio0 {
	status = "okay";
};

&mdio1 {
    status = "okay";
    pinctrl-0 = <&mdio1_pins>;
    pinctrl-names = "default";

    switch@1d {
        compatible = "motorcomm,yt9215";
        reg = <29>;
        motorcomm,switch-id = <0>;
        reset-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;

        mdio {
            #address-cells = <1>;
            #size-cells = <0>;

            sw_phy0: phy@0 { reg = <0>; };
            sw_phy1: phy@1 { reg = <1>; };
            sw_phy2: phy@2 { reg = <2>; };
            sw_phy3: phy@3 { reg = <3>; };
            sw_phy4: phy@4 { reg = <4>; };
        };

        ports {
            #address-cells = <1>;
            #size-cells = <0>;

            port@0 {
                reg = <0>;
                label = "lan1";
                phy-mode = "internal";
                phy-handle = <&sw_phy0>;
            };

            port@1 {
                reg = <1>;
                label = "lan2";
                phy-mode = "internal";
                phy-handle = <&sw_phy1>;
            };

            port@2 {
                reg = <2>;
                label = "lan3";
                phy-mode = "internal";
                phy-handle = <&sw_phy2>;
            };

            port@3 {
                reg = <3>;
                label = "lan4";
                phy-mode = "internal";
                phy-handle = <&sw_phy3>;
            };

            port@4 {
                reg = <4>;
                label = "lan5";
                phy-mode = "internal";
                phy-handle = <&sw_phy4>;
            };

            /* CPU port */
            port@8 {
                reg = <8>;
                phy-mode = "sgmii";
                ethernet = <&dp2>;

                fixed-link {
                    speed = <1000>;
                    full-duplex;
                };
            };
        };
    };
};

&q6v5_wcss {
	status = "okay";

	memory-region = <&q6_mem_regions>;
	firmware-name = "ath11k/IPQ5018/hw1.0/q6_fw.mdt",
			"ath11k/IPQ5018/hw1.0/m3_fw.mdt",
			"ath11k/QCN6122/hw1.0/m3_fw.mdt";

	/* The QCN6102 radio should map to UPD ID 2. Without       */
	/* bootargs, the firmware will expect it to be on UPD ID 3 */
	boot-args = <
			/*       type:	*/	0x2	/* PCIE1	*/
			/*     length:	*/	4
			/*     UPD ID:	*/	2
			/* reset GPIO:	*/	18
			/*   reserved:	*/	0 0>;

	// IPQ5018
	q6_wcss_pd1: pd-1 {
		firmware-name = "ath11k/IPQ5018/hw1.0/q6_fw.mdt";

		resets =
			<&gcc GCC_WCSSAON_RESET>,
			<&gcc GCC_WCSS_BCR>,
			<&gcc GCC_CE_BCR>;
		reset-names =
			"wcss_aon_reset",
			"wcss_reset",
			"ce_reset";

		clocks =
			<&gcc GCC_WCSS_AHB_S_CLK>,
			<&gcc GCC_WCSS_ACMT_CLK>,
			<&gcc GCC_WCSS_AXI_M_CLK>;
		clock-names =
			"gcc_wcss_ahb_s_clk",
			"gcc_wcss_acmt_clk",
			"gcc_wcss_axi_m_clk";

		// qcom,halt-regs = <&tcsr_q6_block 0xa000 0xd000 0x0>;
		interrupts-extended =
			<&wcss_smp2p_in 8 IRQ_TYPE_NONE>,
			<&wcss_smp2p_in 9 IRQ_TYPE_NONE>,
			<&wcss_smp2p_in 12 IRQ_TYPE_NONE>,
			<&wcss_smp2p_in 11 IRQ_TYPE_NONE>;
		interrupt-names =
			"fatal",
			"ready",
			"spawn-ack",
			"stop-ack";

		qcom,smem-states =
			<&wcss_smp2p_out 8>,
			<&wcss_smp2p_out 9>,
			<&wcss_smp2p_out 10>;
		qcom,smem-state-names =
			"shutdown",
			"stop",
			"spawn";
		status = "okay";
	};

	// QCN6102 5G
	q6_wcss_pd2: pd-2 {
		firmware-name = "ath11k/IPQ5018/hw1.0/q6_fw.mdt";

		interrupts-extended =
			<&wcss_smp2p_in 16 IRQ_TYPE_NONE>,
			<&wcss_smp2p_in 17 IRQ_TYPE_NONE>,
			<&wcss_smp2p_in 20 IRQ_TYPE_NONE>,
			<&wcss_smp2p_in 19 IRQ_TYPE_NONE>;
		interrupt-names =
			"fatal",
			"ready",
			"spawn-ack",
			"stop-ack";

		qcom,smem-states =
			<&wcss_smp2p_out 16>,
			<&wcss_smp2p_out 17>,
			<&wcss_smp2p_out 18>;
		qcom,smem-state-names =
			"shutdown",
			"stop",
			"spawn";
		status = "okay";
	};
};

&wifi0 {
	// IPQ5018
	qcom,rproc = <&q6_wcss_pd1>;
	qcom,ath11k-fw-memory-mode = <1>;
	qcom,bdf-addr = <0x4c400000>;

	status = "okay";
};

&wifi1 {
	// QCN6102 5G
	qcom,rproc = <&q6_wcss_pd2>;
	qcom,userpd-subsys-name = "q6v5_wcss_userpd2";
	qcom,ath11k-fw-memory-mode = <1>;
	qcom,bdf-addr = <0x4d100000>;
	qcom,m3-dump-addr = <0x4df00000>;

	status = "okay";
};
Uboot: reading press button state again
Press Esc to stop autoboot:  0 
failsafe not enabled
ubi0: attaching mtd1
ubi0: scanning is finished
ubi0: volume 2 ("rootfs_data") re-sized from 9 to 108 LEBs
ubi0: attached mtd1 (name "mtd=0", size 30 MiB)
ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
ubi0: good PEBs: 239, bad PEBs: 1, corrupted PEBs: 0
ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 1753425687
ubi0: available PEBs: 0, total reserved PEBs: 239, PEBs reserved for bad PEB handling: 19
Read 0 bytes from volume kernel to 44000000
No size specified -> Using max size (4317184)
## Loading kernel from FIT Image at 44000000 ...
   Using 'config@mp03.3-c3' configuration
   Trying 'kernel-1' kernel subimage
     Description:  ARM64 OpenWrt Linux-6.12.39
     Type:         Kernel Image
     Compression:  lzma compressed
     Data Start:   0x440000e8
     Data Size:    4167980 Bytes = 4 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x41000000
     Entry Point:  0x41000000
     Hash algo:    crc32
     Hash value:   5a9c2ea4
     Hash algo:    sha1
     Hash value:   ef4b6dc9218ccbe828f380b21acbbc8dee458b7e
   Verifying Hash Integrity ... crc32+ sha1+ OK
## Loading fdt from FIT Image at 44000000 ...
   Using 'config@mp03.3-c3' configuration
   Trying 'fdt-1' fdt subimage
     Description:  ARM64 OpenWrt mx2000 device tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x443f9b54
     Data Size:    27170 Bytes = 26.5 KiB
     Architecture: AArch64
     Hash algo:    crc32
     Hash value:   6fa4f2ef
     Hash algo:    sha1
     Hash value:   857fa5294273b1312b6e668f68cc460658ca6c08
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Booting using the fdt blob at 0x443f9b54
   Uncompressing Kernel Image ... OK
   Loading Device Tree to 4a3f6000, end 4a3ffa21 ... OK
Using machid 0x8040202 from environment

Starting kernel ...

Jumping to AARCH64 kernel via monitor
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x51af8014]
[    0.000000] Linux version 6.12.39 (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 14.3.0 r30108-0bca24493e) 14.3.0, GNU ld (GNU Binutils) 2.42) #0 SMP Fri Jul 25 06:41:27 2025
[    0.000000] Machine model: MX2000
[    0.000000] OF: reserved mem: 0x000000004a400000..0x000000004a7fffff (4096 KiB) nomap non-reusable tz_apps@4a400000
[    0.000000] OF: reserved mem: 0x000000004a800000..0x000000004a9fffff (2048 KiB) nomap non-reusable bootloader@4a800000
[    0.000000] OF: reserved mem: 0x000000004aa00000..0x000000004aafffff (1024 KiB) nomap non-reusable sbl@4aa00000
[    0.000000] OF: reserved mem: 0x000000004ab00000..0x000000004abfffff (1024 KiB) nomap non-reusable smem@4ab00000
[    0.000000] OF: reserved mem: 0x000000004ac00000..0x000000004adfffff (2048 KiB) nomap non-reusable tz@4ac00000
[    0.000000] OF: reserved mem: 0x000000004b000000..0x000000004dffffff (49152 KiB) nomap non-reusable q6_mem_regions@4b000000
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000040000000-0x000000005fffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000040000000-0x000000004a3fffff]
[    0.000000]   node   0: [mem 0x000000004a400000-0x000000004adfffff]
[    0.000000]   node   0: [mem 0x000000004ae00000-0x000000004affffff]
[    0.000000]   node   0: [mem 0x000000004b000000-0x000000004dffffff]
[    0.000000]   node   0: [mem 0x000000004e000000-0x000000005fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000005fffffff]
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.0
[    0.000000] psci: OSI mode supported.
[    0.000000] psci: [Firmware Bug]: failed to set PC mode: -1
[    0.000000] percpu: Embedded 20 pages/cpu s43288 r8192 d30440 u81920
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: detected: Spectre-v4
[    0.000000] alternatives: applying boot alternatives
[    0.000000] Kernel command line: console=ttyMSM0,115200n8 ubi.mtd=rootfs root=mtd:ubi_rootfs rootfstype=squashfs rootwait root=/dev/ubiblock0_1 coherent_pool=2M
[    0.000000] Dentry cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] Inode-cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 131072
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 0MB
[    0.000000] software IO TLB: area num 2.
[    0.000000] software IO TLB: mapped [mem 0x000000005f540000-0x000000005f5c0000] (0MB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    0.000000] RCU Tasks Trace: Setting shift to 1 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=2.
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] Root IRQ handler: gic_handle_irq
[    0.000000] GICv2m: range[mem 0x0b00a000-0x0b00aff7], SPI[448:479]
[    0.000000] GICv2m: range[mem 0x0b00b000-0x0b00bff7], SPI[480:511]
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 and mmio timer(s) running at 24.00MHz (virt/virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000001] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000116] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[    0.000134] pid_max: default: 32768 minimum: 301
[    0.005105] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.005127] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.011312] rcu: Hierarchical SRCU implementation.
[    0.011325] rcu: 	Max phase no-delay instances is 1000.
[    0.011867] Timer migration: 1 hierarchy levels; 8 children per group; 1 crossnode level
[    0.012462] smp: Bringing up secondary CPUs ...
[    0.013476] Detected VIPT I-cache on CPU1
[    0.013620] CPU1: Booted secondary processor 0x0000000001 [0x51af8014]
[    0.013832] smp: Brought up 1 node, 2 CPUs
[    0.013850] SMP: Total of 2 processors activated.
[    0.013857] CPU: All CPU(s) started at EL1
[    0.013862] CPU features: detected: 32-bit EL0 Support
[    0.013869] CPU features: detected: CRC32 instructions
[    0.013949] alternatives: applying system-wide alternatives
[    0.014185] CPU features: emulated: Privileged Access Never (PAN) using TTBR0_EL1 switching
[    0.014446] Memory: 437736K/524288K available (8704K kernel code, 892K rwdata, 2760K rodata, 1728K init, 287K bss, 84708K reserved, 0K cma-reserved)
[    0.021574] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.021609] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.021731] 29120 pages in range for non-PLT usage
[    0.021740] 520640 pages in range for PLT usage
[    0.023882] pinctrl core: initialized pinctrl subsystem
[    0.026598] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.027632] DMA: preallocated 2048 KiB GFP_KERNEL pool for atomic allocations
[    0.027981] DMA: preallocated 2048 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.028294] DMA: preallocated 2048 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.028843] thermal_sys: Registered thermal governor 'step_wise'
[    0.029014] cpuidle: using governor menu
[    0.029345] ASID allocator initialised with 65536 entries
[    0.034646] /soc@0/interrupt-controller@b000000: Fixed dependency cycle(s) with /soc@0/interrupt-controller@b000000
[    0.072647] SCSI subsystem initialized
[    0.072999] usbcore: registered new interface driver usbfs
[    0.073100] usbcore: registered new interface driver hub
[    0.073164] usbcore: registered new device driver usb
[    0.073564] qcom_scm: convention: smc arm 64
[    0.076432] clocksource: Switched to clocksource arch_sys_counter
[    0.080486] NET: Registered PF_INET protocol family
[    0.080807] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.082994] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.083032] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.083057] TCP established hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.083112] TCP bind hash table entries: 4096 (order: 5, 131072 bytes, linear)
[    0.083295] TCP: Hash tables configured (established 4096 bind 4096)
[    0.083995] MPTCP token hash table entries: 512 (order: 1, 12288 bytes, linear)
[    0.084211] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.084249] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.084796] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.084886] PCI: CLS 0 bytes, default 64
[    0.087917] workingset: timestamp_bits=46 max_order=17 bucket_order=0
[    0.088569] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.088585] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.324709] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.326668] msm_serial 78af000.serial: msm_serial: detected port #0
[    0.326843] msm_serial 78af000.serial: uartclk = 1843199
[    0.327677] 78af000.serial: ttyMSM0 at MMIO 0x78af000 (irq = 21, base_baud = 115199) is a MSM
[    0.327823] msm_serial: console setup on port #0
[    0.327897] printk: legacy console [ttyMSM0] enabled
[    1.053621] msm_serial: driver initialized
[    1.067491] loop: module loaded
[    1.073515] spi-nand spi0.0: Winbond SPI NAND was found.
[    1.073566] spi-nand spi0.0: 128 MiB, block size: 128 KiB, page size: 2048, OOB size: 64
[    1.078823] qcom_snand 79b0000.qpic-nand: ECC strength requirement of 1-bit(s) is unsupported, trying 4-bits
[    1.086549] 21 fixed-partitions partitions found on MTD device spi0.0
[    1.095803] Creating 21 MTD partitions on "spi0.0":
[    1.102230] 0x000000000000-0x000000080000 : "0:SBL1"
[    1.109295] 0x000000080000-0x000000100000 : "0:MIBIB"
[    1.113948] 0x000000100000-0x000000140000 : "0:BOOTCONFIG"
[    1.118593] 0x000000140000-0x000000180000 : "0:BOOTCONFIG1"
[    1.123870] 0x000000180000-0x000000280000 : "0:QSEE_1"
[    1.130773] 0x000000280000-0x000000380000 : "0:QSEE"
[    1.135845] 0x000000380000-0x0000003c0000 : "0:DEVCFG_1"
[    1.140033] 0x0000003c0000-0x000000400000 : "0:DEVCFG"
[    1.145054] 0x000000400000-0x000000440000 : "0:CDT_1"
[    1.150045] 0x000000440000-0x000000480000 : "0:CDT"
[    1.155078] 0x000000480000-0x000000500000 : "0:APPSBLENV"
[    1.160242] 0x000000500000-0x000000640000 : "0:APPSBL_1"
[    1.167130] 0x000000640000-0x000000780000 : "0:APPSBL"
[    1.172489] 0x000000780000-0x000000880000 : "0:ART"
[    1.177372] 0x000000880000-0x000000900000 : "0:TRAINING"
[    1.180855] 0x000000900000-0x000000980000 : "bdata"
[    1.186498] 0x000000980000-0x000000a00000 : "crash"
[    1.191034] 0x000000a00000-0x000000a80000 : "crash_syslog"
[    1.195876] 0x000000a80000-0x000002880000 : "rootfs"
[    1.249215] mtd: setting mtd18 (rootfs) as root device
[    1.249890] mtdsplit: no squashfs found in "rootfs"
[    1.253301] 0x000002880000-0x000004680000 : "rootfs_1"
[    1.307742] 0x000004680000-0x000008000000 : "overlay"
[    1.551319] i2c_dev: i2c /dev entries driver
[    1.556199] sdhci: Secure Digital Host Controller Interface driver
[    1.556260] sdhci: Copyright(c) Pierre Ossman
[    1.561359] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.569190] remoteproc remoteproc0: releasing cd00000.remoteproc
[    1.804391] NET: Registered PF_INET6 protocol family
[    1.806754] Segment Routing with IPv6
[    1.808494] In-situ OAM (IOAM) with IPv6
[    1.812112] NET: Registered PF_PACKET protocol family
[    1.816491] 8021q: 802.1Q VLAN Support v1.8
[    1.874826] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 799999 KHz, changing to: 800000 KHz
[    1.877359] remoteproc remoteproc0: cd00000.remoteproc is available
[    1.884507] qcom-q6-mpd cd00000.remoteproc: pd-1 node found
[    1.892389] remoteproc remoteproc1: pd-1 is available
[    1.896196] qcom-q6-mpd cd00000.remoteproc: pd-2 node found
[    1.902848] remoteproc remoteproc2: pd-2 is available
[    1.908662] ubi0: attaching mtd18
[    2.083675] ubi0: scanning is finished
[    2.147561] ubi0: attached mtd18 (name "rootfs", size 30 MiB)
[    2.147636] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[    2.152328] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[    2.159194] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[    2.165954] ubi0: good PEBs: 239, bad PEBs: 1, corrupted PEBs: 0
[    2.172744] ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
[    2.179009] ubi0: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 1753425687
[    2.186008] ubi0: available PEBs: 0, total reserved PEBs: 239, PEBs reserved for bad PEB handling: 19
[    2.195347] ubi0: background thread "ubi_bgt0d" started, PID 546
[    2.197115] block ubiblock0_1: created from ubi0:1(rootfs)
�[    2.237566] VFS: Mounted root (squashfs filesystem) readonly on device 254:0.
[    2.238687] Freeing unused kernel memory: 1728K
[    2.243814] Run /sbin/init as init process
[    2.668961] init: Console is alive
[    2.669385] init: - watchdog -
[    3.416415] random: crng init done
[    3.695499] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.811520] gpio_button_hotplug: loading out-of-tree module taints kernel.
[    3.828230] ssdk_dt_parse_mac_mode[300]:INFO:mac mode1 doesn't exit!
[    3.828278] ssdk_dt_parse_mac_mode[308]:INFO:mac mode2 doesn't exit!
[    3.833779] ssdk_dt_parse_port_bmp[1064]:INFO:port_bmp doesn't exist!
[    3.840087] ssdk_dt_parse_interrupt[942]:INFO:intr-gpio does not exist
[    5.356382] ssdk_mp_reset_init[1311]:INFO:MP reset successfully!
[    5.687390] _adpt_mp_uniphy_clk_output_ctrl_set[264]:INFO:uniphy will output clock as 25000000Hz
[    5.687558] regi_init[2548]:INFO:Initializing SCOMPHY Done!!
[    5.695458] regi_init[2574]:INFO:qca-ssdk module init succeeded!
[    5.704062] GMAC1(ffffff8002e70940) Invalid MAC@ - using e2:93:64:36:d3:21
[    5.707051] nss-dp 39c00000.dp1 wan (uninitialized): nss_dp_gmac: Registering netdev wan(qcom-id:1) with GMAC, mac_base: 0xffffffc0816e0000
[    5.777822] Qualcomm Atheros IPQ5018 internal PHY 88000.mdio-1:07: attached PHY driver (mii_bus:phy_addr=88000.mdio-1:07, irq=POLL)
[    5.875298] GMAC2(ffffff8002ee0940) Invalid MAC@ - using 76:16:50:67:be:63
[    5.875516] nss-dp 39d00000.dp2 (unnamed net_device) (uninitialized): nss_dp_gmac: Registering netdev eth%d(qcom-id:2) with GMAC, mac_base: 0xffffffc081710000
[    5.882252] Generic PHY fixed-0:00: attached PHY driver (mii_bus:phy_addr=fixed-0:00, irq=POLL)
[    5.897378] **********************************************************
[    5.903836] * NSS Data Plane driver
[    5.910622] **********************************************************
[    5.937461] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    5.943188] init: - preinit -
[    5.993507] yt921x 90000.mdio-1:1d: Motorcomm YT9215S switch, chipid: 0x90020002, chipmode: 0x2 0x0
[    6.503161] yt921x 90000.mdio-1:1d: configuring for fixed/sgmii link mode
[    6.508232] yt921x 90000.mdio-1:1d: Link is Up - 1Gbps/Full - flow control off
[    6.523443] yt921x 90000.mdio-1:1d lan1 (uninitialized): PHY [90000.mdio-1:1d:00] driver [Generic PHY] (irq=POLL)
[    6.555475] yt921x 90000.mdio-1:1d lan2 (uninitialized): PHY [90000.mdio-1:1d:01] driver [Generic PHY] (irq=POLL)
[    6.588270] yt921x 90000.mdio-1:1d lan3 (uninitialized): PHY [90000.mdio-1:1d:02] driver [Generic PHY] (irq=POLL)
[    6.620440] yt921x 90000.mdio-1:1d lan4 (uninitialized): PHY [90000.mdio-1:1d:03] driver [Generic PHY] (irq=POLL)
[    6.659314] yt921x 90000.mdio-1:1d lan5 (uninitialized): PHY [90000.mdio-1:1d:04] driver [Generic PHY] (irq=POLL)
[    6.675754] nss-dp 39d00000.dp2 eth0: entered promiscuous mode
[    6.675967] DSA: tree 0 setup
Cannot parse config file '/etc/fw_env.config': No such file or directory
Failed to find NVMEM device
[    7.329428] nss-dp 39d00000.dp2 eth0: PHY Link up speed: 1000
[    7.329876] yt921x 90000.mdio-1:1d lan1: configuring for phy/internal link mode
[    7.349466] adpt_mp_port_netdev_change_notify[1186]:ERROR:netdev change notify with incorrect port 0
[    7.349522] ssdk_dev_event[2313]:ERROR:netdev change notify failed
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[   12.034050] UBIFS (ubi0:2): default file-system created
[   12.035051] UBIFS (ubi0:2): Mounting in unauthenticated mode
[   12.038404] UBIFS (ubi0:2): background thread "ubifs_bgt0_2" started, PID 748
[   12.135050] UBIFS (ubi0:2): UBIFS: mounted UBI device 0, volume 2, name "rootfs_data"
[   12.135104] UBIFS (ubi0:2): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[   12.141946] UBIFS (ubi0:2): FS size: 12443648 bytes (11 MiB, 98 LEBs), max 108 LEBs, journal size 1015809 bytes (0 MiB, 6 LEBs)
[   12.151801] UBIFS (ubi0:2): reserved for root: 587743 bytes (573 KiB)
[   12.163092] UBIFS (ubi0:2): media format: w5/r0 (latest is w5/r0), UUID 9E7E4893-E965-42BF-98A4-66462391248E, small LPT model
[   12.172561] mount_root: overlay filesystem has not been fully initialized yet
[   12.181821] mount_root: switching to ubifs overlay
[   12.192615] overlayfs: null uuid detected in lower fs '/', falling back to xino=off,index=off,nfs_export=off.
[   12.200478] urandom-seed: Seed file not found (/etc/urandom.seed)
[   12.396030] procd: - early -
[   12.396291] procd: - watchdog -
[   13.053452] procd: - watchdog -
[   13.142134] procd: - ubus -
[   13.298105] procd: - init -
Please press Enter to activate this console.
[   13.977085] kmodloader: loading kernel modules from /etc/modules.d/*
[   14.291031] urngd: v1.0.2 started.
[   14.352296] Loading modules backported from Linux version v6.14.11-0-gb9d5d463c216
[   14.352341] Backport generated by backports.git v6.1.110-1-43-g2e32643b84e8
[   14.384955] NET: Registered PF_QIPCRTR protocol family
[   14.648788] PPP generic driver version 2.4.2
[   14.651165] NET: Registered PF_PPPOX protocol family
[   14.672557] ath11k c000000.wifi: ipq5018 hw1.0
[   14.672607] ath11k c000000.wifi: FW memory mode: 1
[   14.781857] remoteproc remoteproc1: powering up pd-1
[   14.782692] remoteproc remoteproc1: Booting fw image ath11k/IPQ5018/hw1.0/q6_fw.mdt, size 1820
[   14.785936] remoteproc remoteproc0: powering up cd00000.remoteproc
[   14.794433] remoteproc remoteproc0: Booting fw image ath11k/IPQ5018/hw1.0/q6_fw.mdt, size 1820
[   17.228483] remoteproc remoteproc0: remote processor cd00000.remoteproc is now up
[   17.246483] remoteproc remoteproc1: remote processor pd-1 is now up
[   17.249838] ath11k b00a040.wifi1: Multipd architecture - userpd: 2
[   17.252300] ath11k b00a040.wifi1: qcn6122 hw1.0
[   17.257908] ath11k b00a040.wifi1: FW memory mode: 1
[   17.355048] kmodloader: done loading kernel modules from /etc/modules.d/*
[   32.402316] nss-dp 39d00000.dp2 eth0: PHY Link is down
[   32.416682] nss-dp 39d00000.dp2 eth0: PHY Link up speed: 1000
[   32.527391] yt921x 90000.mdio-1:1d lan1: configuring for phy/internal link mode
[   32.575165] br-lan: port 1(lan1) entered blocking state
[   32.575240] br-lan: port 1(lan1) entered disabled state
[   32.586499] yt921x 90000.mdio-1:1d lan1: entered allmulticast mode
[   32.586577] nss-dp 39d00000.dp2 eth0: entered allmulticast mode
[   32.618843] yt921x 90000.mdio-1:1d lan1: entered promiscuous mode
[   32.769769] yt921x 90000.mdio-1:1d lan2: configuring for phy/internal link mode
[   32.818037] br-lan: port 2(lan2) entered blocking state
[   32.818113] br-lan: port 2(lan2) entered disabled state
[   32.822494] yt921x 90000.mdio-1:1d lan2: entered allmulticast mode
[   32.844051] yt921x 90000.mdio-1:1d lan2: entered promiscuous mode
[   32.956047] yt921x 90000.mdio-1:1d lan3: configuring for phy/internal link mode
[   32.994312] br-lan: port 3(lan3) entered blocking state
[   32.994370] br-lan: port 3(lan3) entered disabled state
[   32.999165] yt921x 90000.mdio-1:1d lan3: entered allmulticast mode
[   33.019450] yt921x 90000.mdio-1:1d lan3: entered promiscuous mode
[   33.446773] adpt_mp_port_netdev_change_notify[1186]:ERROR:netdev change notify with incorrect port 0
[   33.446837] ssdk_dev_event[2313]:ERROR:netdev change notify failed
[   36.167132] nss-dp 39c00000.dp1 wan: PHY Link up speed: 1000



BusyBox v1.37.0 (2025-07-25 06:41:27 UTC) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt SNAPSHOT, r30512-ac9a97e49b
 -----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------

 OpenWrt recently switched to the "apk" package manager!

 OPKG Command           APK Equivalent      Description
 ------------------------------------------------------------------
 opkg install <pkg>     apk add <pkg>       Install a package
 opkg remove <pkg>      apk del <pkg>       Remove a package
 opkg upgrade           apk upgrade         Upgrade all packages
 opkg files <pkg>       apk info -L <pkg>   List package contents
 opkg list-installed    apk info            List installed packages
 opkg update            apk update          Update package lists
 opkg search <pkg>      apk search <pkg>    Search for packages
 ------------------------------------------------------------------

For more https://openwrt.org/docs/guide-user/additional-software/opkg-to-apk-cheatsheet

root@OpenWrt:~# ifconfig
br-lan    Link encap:Ethernet  HWaddr 76:16:50:67:BE:63  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eth0      Link encap:Ethernet  HWaddr 76:16:50:67:BE:63  
          inet6 addr: fe80::7416:50ff:fe67:be63/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1508  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:17 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:1850 (1.8 KiB)
          Interrupt:40 

lan1      Link encap:Ethernet  HWaddr 76:16:50:67:BE:63  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:4 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lan2      Link encap:Ethernet  HWaddr 76:16:50:67:BE:63  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lan3      Link encap:Ethernet  HWaddr 76:16:50:67:BE:63  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:68 errors:0 dropped:0 overruns:0 frame:0
          TX packets:68 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:6463 (6.3 KiB)  TX bytes:6463 (6.3 KiB)

wan       Link encap:Ethernet  HWaddr E2:93:64:36:D3:21  
          inet addr:192.168.9.6  Bcast:192.168.9.255  Mask:255.255.255.0
          inet6 addr: fe80::e093:64ff:fe36:d321/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:31 errors:0 dropped:0 overruns:0 frame:0
          TX packets:37 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4766 (4.6 KiB)  TX bytes:5398 (5.2 KiB)
          Interrupt:39 

root@OpenWrt:~# 



WAN (ge phy) OK
But lan port (yt9215s) No link

Pretty sure @hzyitc did some work on the Motorcomm x 5018 driver. Have you had a look at what he's done for the ax3000 ?

probably some useful insights there...hope it helps

I also referred to his repo, however it did not work for my case.

Hi, you could try my lastest debug driver https://github.com/yangfl/linux/tree/yt9215 and see what is going wrong in dmesg log.

Also, you may need this patch https://github.com/the-tcpdump-group/libpcap/pull/1451 for tcpdump.

Do you have the stock boot log?

Here are the areas I would look into:

  • The boot logs say that the generic PHY driver is used for the switch’s PHYs. I couldn’t quickly find it, but is there no PHY driver specific to yt921x? I see there is one in mainline for 8511/8521/8531/8531S/8821 PHYs.
  • The DSA driver for the qca8337 switch needed a patch to explicitly enable auto negotiation for the fixed link to work.

Thank you, I have tried your driver, here is the latest log, however all ports show No link, and tcpdump does not capture any packets on any LAN port. There are no signs on any of the ports, even the PC does not detect a physical connection.

   1.050249] spi-nand spi0.0: Winbond SPI NAND was found.
[    1.050301] spi-nand spi0.0: 128 MiB, block size: 128 KiB, page size: 2048, OOB size: 64
[    1.057583] 21 qcomsmem partitions found on MTD device spi0.0
[    1.062832] Creating 21 MTD partitions on "spi0.0":
[    1.068400] 0x000000000000-0x000000080000 : "0:sbl1"
[    1.075318] 0x000000080000-0x000000100000 : "0:mibib"
[    1.080341] 0x000000100000-0x000000140000 : "0:bootconfig"
[    1.085176] 0x000000140000-0x000000180000 : "0:bootconfig1"
[    1.090227] 0x000000180000-0x000000280000 : "0:qsee"
[    1.097073] 0x000000280000-0x000000380000 : "0:qsee_1"
[    1.102006] 0x000000380000-0x0000003c0000 : "0:devcfg"
[    1.105780] 0x0000003c0000-0x000000400000 : "0:devcfg_1"
[    1.110830] 0x000000400000-0x000000440000 : "0:cdt"
[    1.116466] 0x000000440000-0x000000480000 : "0:cdt_1"
[    1.120852] 0x000000480000-0x000000500000 : "0:appsblenv"
[    1.126573] 0x000000500000-0x000000640000 : "0:appsbl"
[    1.133186] 0x000000640000-0x000000780000 : "0:appsbl_1"
[    1.138113] 0x000000780000-0x000000880000 : "0:art"
[    1.143346] 0x000000880000-0x000000900000 : "0:training"
[    1.147068] 0x000000900000-0x000000980000 : "bdata"
[    1.152838] 0x000000980000-0x000000a00000 : "crash"
[    1.157265] 0x000000a00000-0x000000a80000 : "crash_syslog"
[    1.162080] 0x000000a80000-0x000002880000 : "rootfs"
[    1.215398] mtd: setting mtd18 (rootfs) as root device
[    1.216034] mtdsplit: no squashfs found in "rootfs"
[    1.219510] 0x000002880000-0x000004680000 : "rootfs_1"
[    1.273824] 0x000004680000-0x000008000000 : "overlay"
[    1.386841] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 799999 KHz, changing to: 800000 KHz
[    1.388654] ubi0: attaching mtd18
[    1.609189] ubi0: scanning is finished
[    1.674104] ubi0: attached mtd18 (name "rootfs", size 30 MiB)
[    1.674178] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[    1.678871] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[    1.685701] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[    1.692500] ubi0: good PEBs: 239, bad PEBs: 1, corrupted PEBs: 0
[    1.699285] ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
[    1.705534] ubi0: max/mean erase counter: 2/0, WL threshold: 4096, image sequence number: 1758196871
[    1.712554] ubi0: available PEBs: 0, total reserved PEBs: 239, PEBs reserved for bad PEB handling: 19
[    1.721880] ubi0: background thread "ubi_bgt0d" started, PID 525
[    1.723518] block ubiblock0_1: created from ubi0:1(rootfs)
[    1.737100] ubi: mtd18 is already attached to ubi0
[    1.742323] UBI error: cannot attach mtd�[    1.760431] VFS: Mounted root (squashfs filesystem) readonly on device 254:0.
[    1.760987] Freeing unused kernel memory: 960K
[    1.766726] Run /sbin/init as init process
[    2.117866] init: Console is alive
[    2.118299] init: - watchdog -
[    2.965213] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.137468] gpio_button_hotplug: loading out-of-tree module taints kernel.
[    3.194573] ssdk_dt_parse_mac_mode[300]:INFO:mac mode1 doesn't exit!
[    3.194630] ssdk_dt_parse_mac_mode[308]:INFO:mac mode2 doesn't exit!
[    3.200141] ssdk_dt_parse_port_bmp[1064]:INFO:port_bmp doesn't exist!
[    3.206460] ssdk_dt_parse_interrupt[942]:INFO:intr-gpio does not exist
[    4.722625] ssdk_mp_reset_init[1311]:INFO:MP reset successfully!
[    5.053787] regi_init[2548]:INFO:Initializing SCOMPHY Done!!
[    5.054025] regi_init[2574]:INFO:qca-ssdk module init succeeded!
[    5.061714] nss-dp 39c00000.dp1 wan (uninitialized): nss_dp_gmac: Registering netdev wan(qcom-id:1) with GMAC, mac_base: 0xffffffc081600000
[    5.134089] Qualcomm Atheros IPQ5018 internal PHY 88000.mdio-1:07: attached PHY driver (mii_bus:phy_addr=88000.mdio-1:07, irq=POLL)
[    5.261189] nss-dp 39d00000.dp2 (unnamed net_device) (uninitialized): nss_dp_gmac: Registering netdev eth%d(qcom-id:2) with GMAC, mac_base: 0xffffffc081630000
[    5.262264] Generic PHY fixed-0:00: attached PHY driver (mii_bus:phy_addr=fixed-0:00, irq=POLL)
[    5.276543] **********************************************************
[    5.282999] * NSS Data Plane driver
[    5.289473] **********************************************************
[    5.317811] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    5.324650] init: - preinit -
[    5.376363] yt921x 90000.mdio-1:1d: Motorcomm YT9215S ethernet switch, chipid: 0x90020002, chipmode: 0x2 0x0
[    5.662679] random: crng init done
[    5.902527] yt921x_dsa_port_setup: port 8
[    5.904519] yt921x_phylink_mac_link_down: port 8
[    5.906902] yt921x 90000.mdio-1:1d: configuring for fixed/2500base-x link mode
[    5.911343] yt921x_dsa_port_setup: port 0
[    5.922404] yt921x 90000.mdio-1:1d: Link is Up - 2.5Gbps/Full - flow control rx/tx
[    5.951624] yt921x 90000.mdio-1:1d lan1 (uninitialized): PHY [90000.mdio-1:1d:00] driver [Generic PHY] (irq=POLL)
[    5.952165] yt921x_dsa_port_change_mtu: port 8, mtu 1500, frame size 1526
[    5.961510] yt921x_dsa_port_change_mtu: port 0, mtu 1500, frame size 1518
[    5.971439] yt921x_dsa_port_setup: port 1
[    5.994308] yt921x 90000.mdio-1:1d lan2 (uninitialized): PHY [90000.mdio-1:1d:01] driver [Generic PHY] (irq=POLL)
[    5.994405] yt921x_dsa_port_change_mtu: port 1, mtu 1500, frame size 1518
[    6.006618] yt921x_dsa_port_setup: port 2
[    6.033886] yt921x 90000.mdio-1:1d lan3 (uninitialized): PHY [90000.mdio-1:1d:02] driver [Generic PHY] (irq=POLL)
[    6.033969] yt921x_dsa_port_change_mtu: port 2, mtu 1500, frame size 1518
[    6.049922] yt921x_dsa_port_setup: port 3
[    6.071920] yt921x 90000.mdio-1:1d lan4 (uninitialized): PHY [90000.mdio-1:1d:03] driver [Generic PHY] (irq=POLL)
[    6.072013] yt921x_dsa_port_change_mtu: port 3, mtu 1500, frame size 1518
[    6.084417] yt921x_dsa_port_setup: port 4
[    6.105646] yt921x 90000.mdio-1:1d lan5 (uninitialized): PHY [90000.mdio-1:1d:04] driver [Generic PHY] (irq=POLL)
[    6.105733] yt921x_dsa_port_change_mtu: port 4, mtu 1500, frame size 1518
[    6.117655] yt921x_dsa_port_setup: port 5
[    6.123151] yt921x_dsa_port_setup: port 6
[    6.127077] yt921x_dsa_port_setup: port 7
[    6.131130] yt921x_dsa_port_setup: port 9
[    6.136633] yt921x_dsa_port_setup: port 10
[    6.140981] nss-dp 39d00000.dp2 eth0: entered promiscuous mode
[    6.141825] DSA: tree 0 setup
Cannot parse config file '/etc/fw_env.config': No such file or directory
Failed to find NVMEM device
[    6.655187] nss-dp 39d00000.dp2 eth0: PHY Link up speed: 2500
[    6.655637] yt921x 90000.mdio-1:1d lan1: configuring for phy/internal link mode
[    6.661819] adpt_mp_port_netdev_change_notify[1186]:ERROR:netdev change notify with incorrect port 0
[    6.667112] ssdk_dev_event[2313]:ERROR:netdev change notify failed
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[   10.987508] UBIFS (ubi0:2): Mounting in unauthenticated mode
[   10.987802] UBIFS (ubi0:2): background thread "ubifs_bgt0_2" started, PID 727
[   11.049170] UBIFS (ubi0:2): recovery needed
[   11.200453] UBIFS (ubi0:2): recovery completed
[   11.200643] UBIFS (ubi0:2): UBIFS: mounted UBI device 0, volume 2, name "rootfs_data"
[   11.203874] UBIFS (ubi0:2): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[   11.211725] UBIFS (ubi0:2): FS size: 12570624 bytes (11 MiB, 99 LEBs), max 109 LEBs, journal size 1015809 bytes (0 MiB, 6 LEBs)
[   11.221641] UBIFS (ubi0:2): reserved for root: 593741 bytes (579 KiB)
[   11.232929] UBIFS (ubi0:2): media format: w5/r0 (latest is w5/r0), UUID 54C7F9C2-3EF9-4AA7-8479-13BB09D8336F, small LPT model
[   11.244965] mount_root: switching to ubifs overlay
[   11.259973] overlayfs: null uuid detected in lower fs '/', falling back to xino=off,index=off,nfs_export=off.
[   11.269562] urandom-seed: Seeding with /etc/urandom.seed
[   11.377986] procd: - early -
[   11.378245] procd: - watchdog -
[   12.043791] procd: - watchdog -
[   12.131009] procd: - ubus -
[   12.289280] procd: - init -
Please press Enter to activate this console.
[   12.985155] kmodloader: loading kernel modules from /etc/modules.d/*
[   13.337289] urngd: v1.0.2 started.
[   13.350204] Loading modules backported from Linux version v6.16-0-g038d61fd6422
[   13.350251] Backport generated by backports.git v6.1.145-1-47-g6194bf852a3e
[   13.378656] NET: Registered PF_QIPCRTR protocol family
[   13.709432] PPP generic driver version 2.4.2
[   13.711689] NET: Registered PF_PPPOX protocol family
[   13.798975] kmodloader: done loading kernel modules from /etc/modules.d/*
[   21.504189] nss-dp 39d00000.dp2 eth0: PHY Link is down
[   21.516744] nss-dp 39d00000.dp2 eth0: PHY Link up speed: -1
[   21.596805] yt921x 90000.mdio-1:1d lan1: configuring for phy/internal link mode
[   21.627219] br-lan: port 1(lan1) entered blocking state
[   21.627295] br-lan: port 1(lan1) entered disabled state
[   21.631507] yt921x 90000.mdio-1:1d lan1: entered allmulticast mode
[   21.636620] nss-dp 39d00000.dp2 eth0: entered allmulticast mode
[   21.660513] yt921x_dsa_port_bridge_join: port 0, mask 0x101
[   21.663117] yt921x_dsa_port_vlan_add: port 8, vid 1, flags 0x25
[   21.665012] yt921x_dsa_port_bridge_flags: port 0, mask 0x20, flags 0x20
[   21.665070] yt921x_dsa_port_fdb_add: port 8
[   21.674363] yt921x_dsa_port_bridge_flags: port 0, mask 0x40, flags 0x40
[   21.688628] yt921x_dsa_port_bridge_flags: port 0, mask 0x800, flags 0x800
[   21.688703] yt921x_dsa_port_bridge_flags: port 0, mask 0x4000, flags 0x4000
[   21.695314] yt921x_dsa_port_bridge_flags: port 0, mask 0x200000, flags 0x0
[   21.701986] yt921x_dsa_set_ageing_time: 300000
[   21.710243] yt921x 90000.mdio-1:1d lan1: entered promiscuous mode
[   21.715781] yt921x_dsa_port_fdb_add: port 8
[   21.716479] yt921x_dsa_port_vlan_add: port 0, vid 1, flags 0x6
[   21.732977] yt921x_dsa_port_fdb_add: port 8
[   21.739612] yt921x_dsa_port_fdb_del: port 8
[   21.837879] yt921x 90000.mdio-1:1d lan2: configuring for phy/internal link mode
[   21.864891] br-lan: port 2(lan2) entered blocking state
[   21.864953] br-lan: port 2(lan2) entered disabled state
[   21.872717] yt921x 90000.mdio-1:1d lan2: entered allmulticast mode
[   21.874971] yt921x_dsa_port_bridge_join: port 1, mask 0x103
[   21.883366] yt921x_dsa_port_bridge_flags: port 1, mask 0x20, flags 0x20
[   21.887075] yt921x_dsa_port_bridge_flags: port 1, mask 0x40, flags 0x40
[   21.892479] yt921x_dsa_port_bridge_flags: port 1, mask 0x800, flags 0x800
[   21.899289] yt921x_dsa_port_bridge_flags: port 1, mask 0x4000, flags 0x4000
[   21.906083] yt921x_dsa_port_bridge_flags: port 1, mask 0x200000, flags 0x0
[   21.912881] yt921x_dsa_set_ageing_time: 300000
[   21.933203] yt921x 90000.mdio-1:1d lan2: entered promiscuous mode
[   21.933624] yt921x_dsa_port_vlan_add: port 1, vid 1, flags 0x6
[   22.003072] yt921x 90000.mdio-1:1d lan3: configuring for phy/internal link mode
[   22.037641] br-lan: port 3(lan3) entered blocking state
[   22.037707] br-lan: port 3(lan3) entered disabled state
[   22.041959] yt921x 90000.mdio-1:1d lan3: entered allmulticast mode
[   22.053206] yt921x_dsa_port_bridge_join: port 2, mask 0x107
[   22.054877] yt921x_dsa_port_bridge_flags: port 2, mask 0x20, flags 0x20
[   22.063240] yt921x_dsa_port_bridge_flags: port 2, mask 0x40, flags 0x40
[   22.065233] yt921x_dsa_port_bridge_flags: port 2, mask 0x800, flags 0x800
[   22.071821] yt921x_dsa_port_bridge_flags: port 2, mask 0x4000, flags 0x4000
[   22.078889] yt921x_dsa_port_bridge_flags: port 2, mask 0x200000, flags 0x0
[   22.085631] yt921x_dsa_set_ageing_time: 300000
[   22.122929] yt921x 90000.mdio-1:1d lan3: entered promiscuous mode
[   22.123268] yt921x_dsa_port_vlan_add: port 2, vid 1, flags 0x6
[   22.171925] yt921x 90000.mdio-1:1d lan4: configuring for phy/internal link mode
[   22.190655] br-lan: port 4(lan4) entered blocking state
[   22.190721] br-lan: port 4(lan4) entered disabled state
[   22.195489] yt921x 90000.mdio-1:1d lan4: entered allmulticast mode
[   22.201016] yt921x_dsa_port_bridge_join: port 3, mask 0x10f
[   22.208529] yt921x_dsa_port_bridge_flags: port 3, mask 0x20, flags 0x20
[   22.211918] yt921x_dsa_port_bridge_flags: port 3, mask 0x40, flags 0x40
[   22.218314] yt921x_dsa_port_bridge_flags: port 3, mask 0x800, flags 0x800
[   22.224875] yt921x_dsa_port_bridge_flags: port 3, mask 0x4000, flags 0x4000
[   22.231782] yt921x_dsa_port_bridge_flags: port 3, mask 0x200000, flags 0x0
[   22.238604] yt921x_dsa_set_ageing_time: 300000
[   22.246575] yt921x 90000.mdio-1:1d lan4: entered promiscuous mode
[   22.250221] yt921x_dsa_port_vlan_add: port 3, vid 1, flags 0x6
[   22.552954] adpt_mp_port_netdev_change_notify[1186]:ERROR:netdev change notify with incorrect port 0
[   22.553038] ssdk_dev_event[2313]:ERROR:netdev change notify failed
[   25.433367] nss-dp 39c00000.dp1 wan: PHY Link up speed: 1000


The OEM stock boot log is based on QSDK with a customized swconfig. There are no .o modules, and the original DTS does not expose the ports, only a single reg 29 entry, so I cannot extract anything useful from it.

Tue Sep 23 23:55:55 2025 kern.notice kernel: [    5.102477] 0x00000f900000-0x00000fa00000 : "reserved"
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.105524] spi_qup 78b5000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
Tue Sep 23 23:55:55 2025 kern.err kernel: [    5.107698] spi-nor spi0.0: unrecognized JEDEC id bytes: 00 00 00 00 00 00
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.114590] yt9215s soc:yt@29: cannot find mdio bus from bus handle (yet)
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.121480] mdio_bus fixed-0: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.121493] mdio_bus fixed-0: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.121502] mdio_bus fixed-0: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.121527] libphy: Fixed MDIO Bus: probed
Tue Sep 23 23:55:55 2025 kern.err kernel: [    5.347760] qca-mdio 88000.mdio: CIG clk_div =f
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.347921] of_get_named_gpiod_flags: can't parse 'phy-reset-gpio' property of node '/soc/mdio@88000[0]'
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.347930] qca-mdio 88000.mdio: Could not find phy-reset-gpio
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.351452] mdio_bus 88000.mdio: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.351461] mdio_bus 88000.mdio: using device tree for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.351483] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/soc/mdio@88000[0]'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.351499] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/soc/mdio@88000[0]'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.351512] mdio_bus 88000.mdio: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.351521] mdio_bus 88000.mdio: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.351526] libphy: qca_mdio: probed
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.357672] mdio_bus 88000.mdio:07: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.357685] mdio_bus 88000.mdio:07: using device tree for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.357720] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/soc/mdio@88000/ethernet-phy@0[0]'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.357740] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/soc/mdio@88000/ethernet-phy@0[0]'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.357752] mdio_bus 88000.mdio:07: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.357763] mdio_bus 88000.mdio:07: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.357946] qca-mdio 88000.mdio: qca-mdio driver was registered
Tue Sep 23 23:55:55 2025 kern.err kernel: [    5.581242] qca-mdio 90000.mdio: CIG clk_div =ff
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.581505] of_get_named_gpiod_flags: parsed 'phy-reset-gpio' property of node '/soc/mdio@90000[0]' - status (0)
Tue Sep 23 23:55:55 2025 kern.warn kernel: [    5.581530] active vlaue is 1, 0
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.805120] of_get_named_gpiod_flags: can't parse 'phy-reset-gpio' property of node '/soc/mdio@90000[1]'
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.805131] qca-mdio 90000.mdio: Could not find phy-reset-gpio
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.805511] mdio_bus 90000.mdio: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.805522] mdio_bus 90000.mdio: using device tree for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.805543] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/soc/mdio@90000[0]'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.805560] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/soc/mdio@90000[0]'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.805572] mdio_bus 90000.mdio: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.805580] mdio_bus 90000.mdio: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.805587] libphy: qca_mdio: probed
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.810837] mdio_bus 90000.mdio:1d: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.810848] mdio_bus 90000.mdio:1d: using device tree for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.810873] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/soc/mdio@90000/ethernet-phy@0[0]'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.810893] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/soc/mdio@90000/ethernet-phy@0[0]'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.810904] mdio_bus 90000.mdio:1d: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    5.810913] mdio_bus 90000.mdio:1d: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.811070] qca-mdio 90000.mdio: qca-mdio driver was registered
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.924154] i2c /dev entries driver
Tue Sep 23 23:55:55 2025 kern.err kernel: [    5.925328] qcom-tsens 4a9000.thermal-sensor: tsens device is not enabled
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.928000] device-mapper: ioctl: 4.41.0-ioctl (2019-09-16) initialised: dm-devel@redhat.com
Tue Sep 23 23:55:55 2025 kern.warn kernel: [    5.934653] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 799999 KHz
Tue Sep 23 23:55:55 2025 kern.warn kernel: [    5.942274] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 800000 KHz
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.950189] sdhci: Secure Digital Host Controller Interface driver
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.957783] sdhci: Copyright(c) Pierre Ossman
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.963682] sdhci-pltfm: SDHCI platform and OF driver helper
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.968708]
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.968708] Version Rollback Feature Disabled
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.976470] remoteproc remoteproc0: cd00000.remoteproc is available
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.980729] remoteproc remoteproc1: 4ab000.remoteproc_pd1 is available
Tue Sep 23 23:55:55 2025 kern.info kernel: [    5.986746] remoteproc remoteproc2: cd00000.remoteproc:remoteproc_pd2 is available
Tue Sep 23 23:55:55 2025 kern.err kernel: [    5.993041] coresight-tmc 6047000.tmc: failed to get flush cti, defer probe
Tue Sep 23 23:55:55 2025 kern.warn kernel: [    6.000170] coresight-dynamic-funnel 6041000.funnel: Uses obsolete Coresight DT bindings
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.009695] coresight coresight-etm0: CPU0: ETM v4.0 initialized
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.014998] coresight-etm4x 619c000.etm: CPU0: (null) initialized
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.021642] coresight coresight-etm1: CPU1: ETM v4.0 initialized
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.026978] coresight-etm4x 619d000.etm: CPU1: (null) initialized
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.033475] coresight-stm 6002000.stm: coresight-stm : stm_register_device failed, probing deferred
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.039378] OF: graph: no port node found in /soc/cti@6010000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.048331] OF: graph: no port node found in /soc/cti@6011000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.054185] OF: graph: no port node found in /soc/cti@6012000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.059889] OF: graph: no port node found in /soc/cti@6013000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.065622] OF: graph: no port node found in /soc/cti@6014000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.071331] OF: graph: no port node found in /soc/cti@6015000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.077081] OF: graph: no port node found in /soc/cti@6016000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.082868] OF: graph: no port node found in /soc/cti@6017000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.088619] OF: graph: no port node found in /soc/cti@6018000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.094217] OF: graph: no port node found in /soc/cti@6019000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.100081] OF: graph: no port node found in /soc/cti@601a000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.105642] OF: graph: no port node found in /soc/cti@601b000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.111533] OF: graph: no port node found in /soc/cti@601c000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.117109] OF: graph: no port node found in /soc/cti@601d000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.122967] OF: graph: no port node found in /soc/cti@601e000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.128636] OF: graph: no port node found in /soc/cti@601f000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.134379] OF: graph: no port node found in /soc/cti@6198000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.140118] OF: graph: no port node found in /soc/cti@6199000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.145848] OF: graph: no port node found in /soc/cti@610c000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.152743] OF: graph: no port node found in /soc/hwevent@6101000
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.157007] coresight-hwevent 6101000.hwevent: No csr data
Tue Sep 23 23:55:55 2025 kern.err kernel: [    6.163471] OF: graph: no port node found in /soc/csr@6001000
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.168664] coresight-csr 6001000.csr: CSR initialized: coresight-csr
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.176502] NET: Registered protocol family 10
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.181982] Segment Routing with IPv6
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.185036] NET: Registered protocol family 17
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    6.188899] Bridge firewalling registered
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.193108] 8021q: 802.1Q VLAN Support v1.8
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    6.197420] Registering SWP/SWPB emulation handler
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    6.201388] Loading compiled-in X.509 certificates
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.206563] pstore: Using crash dump compression: deflate
Tue Sep 23 23:55:55 2025 kern.info kernel: [    6.224302] yt9215s soc:yt@29: using MDIO bus 'qca_mdio'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.109001] mdio_bus soc:yt@29: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.109011] mdio_bus soc:yt@29: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.109018] mdio_bus soc:yt@29: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.116422] mdio_bus soc:yt@29:00: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.116431] mdio_bus soc:yt@29:00: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.116439] mdio_bus soc:yt@29:00: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.123924] mdio_bus soc:yt@29:01: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.123933] mdio_bus soc:yt@29:01: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.123940] mdio_bus soc:yt@29:01: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.131393] mdio_bus soc:yt@29:02: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.131403] mdio_bus soc:yt@29:02: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.131412] mdio_bus soc:yt@29:02: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.138855] mdio_bus soc:yt@29:03: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.138865] mdio_bus soc:yt@29:03: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.138872] mdio_bus soc:yt@29:03: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.146297] mdio_bus soc:yt@29:04: GPIO lookup for consumer reset
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.146306] mdio_bus soc:yt@29:04: using lookup tables for GPIO lookup
Tue Sep 23 23:55:55 2025 kern.debug kernel: [    8.146313] mdio_bus soc:yt@29:04: No GPIO consumer reset found
Tue Sep 23 23:55:55 2025 kern.info kernel: [    8.146427] libphy: soc:yt@29: probed
Tue Sep 23 23:55:55 2025 kern.info kernel: [    8.150505] sps_register_bam_device: sps:BAM 0x06064000 is registered
Tue Sep 23 23:55:55 2025 kern.info kernel: [    8.151914] coresight coresight-stm: STM32 initialized
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.156485] ubi0: attaching mtd20
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.496135] ubi0: scanning is finished
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.502843] ubi0: attached mtd20 (name "rootfs", size 80 MiB)
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.503045] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.507705] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.514503] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.521383] ubi0: good PEBs: 640, bad PEBs: 0, corrupted PEBs: 0
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.528071] ubi0: user volume: 5, internal volumes: 1, max. volumes count: 128
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.534380] ubi0: max/mean erase counter: 3/1, WL threshold: 4096, image sequence number: 163228406
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.541426] ubi0: available PEBs: 40, total reserved PEBs: 600, PEBs reserved for bad PEB handling: 40
Tue Sep 23 23:55:55 2025 kern.notice kernel: [    8.550420] ubi0: background thread "ubi_bgt0d" started, PID 86
Tue Sep 23 23:55:55 2025 kern.info kernel: [    8.554151] hctosys: unable to open rtc device (rtc0)
Tue Sep 23 23:55:55 2025 kern.info kernel: [    8.566135] ALSA device list:
Tue Sep 23 23:55:55 2025 kern.info kernel: [    8.570794]   No soundcards found.
Tue Sep 23 23:55:55 2025 kern.info kernel: [    8.577736] VFS: Mounted root (squashfs filesystem) readonly on device 31:29.
Tue Sep 23 23:55:55 2025 kern.info kernel: [    8.579884] Freeing unused kernel memory: 1024K
Tue Sep 23 23:55:55 2025 kern.info kernel: [    8.607828] Run /sbin/init as init process
Tue Sep 23 23:55:55 2025 user.info kernel: [    8.917916] init: Console is alive
Tue Sep 23 23:55:55 2025 user.info kernel: [    8.918366] init: - watchdog -
Tue Sep 23 23:55:55 2025 user.info kernel: [   10.760729] kmodloader: loading kernel modules from /etc/modules-boot.d/*
Tue Sep 23 23:55:55 2025 kern.info kernel: [   10.784388] Button Hotplug driver version 0.4.1
Tue Sep 23 23:55:55 2025 kern.debug kernel: [   10.786193] of_get_named_gpiod_flags: parsed 'gpios' property of node '/soc/gpio_keys/button@1[0]' - status (0)
Tue Sep 23 23:55:55 2025 kern.debug kernel: [   10.786226] of_get_named_gpiod_flags: parsed 'gpios' property of node '/soc/gpio_keys/button@2[0]' - status (0)
Tue Sep 23 23:55:55 2025 kern.debug kernel: [   10.786261] gpio-492 (rst): gpiod_set_debounce: missing set() or set_config() operations
Tue Sep 23 23:55:55 2025 kern.debug kernel: [   10.786275] gpio-491 (wps): gpiod_set_debounce: missing set() or set_config() operations
Tue Sep 23 23:55:55 2025 kern.info kernel: [   10.788722] kmod of oui-bwm is started
Tue Sep 23 23:55:55 2025 user.info kernel: [   10.789242] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
Tue Sep 23 23:55:55 2025 user.info kernel: [   10.800683] init: - preinit -
Tue Sep 23 23:55:55 2025 user.warn kernel: [   15.848841] urandom-seed: Seed file not found (/etc/urandom.seed)
Tue Sep 23 23:55:55 2025 user.info kernel: [   15.896630] procd: - early -
Tue Sep 23 23:55:55 2025 user.info kernel: [   15.896854] procd: - watchdog -
Tue Sep 23 23:55:55 2025 user.info kernel: [   16.497744] procd: - watchdog -
Tue Sep 23 23:55:55 2025 user.info kernel: [   16.498260] procd: - ubus -
Tue Sep 23 23:55:55 2025 user.info kernel: [   16.561969] procd: - init -
Tue Sep 23 23:55:55 2025 kern.err kernel: [   16.702715] cnss: INFO: IPC Logging is disabled!
Tue Sep 23 23:55:55 2025 kern.err kernel: [   16.704043] cnss[2]: INFO: Platform driver probed successfully. plat 0x4d2833db tgt 0xfffc
Tue Sep 23 23:55:55 2025 kern.err kernel: [   16.708751] cnss[41]: INFO: Platform driver probed successfully. plat 0x0a9485ae tgt 0xfffb
Tue Sep 23 23:55:55 2025 kern.err kernel: [   16.715953] cnss: INFO: cnss_plat_ipc_qmi_svc_init: CNSS Platform IPC QMI Service is started
Tue Sep 23 23:55:55 2025 kern.err kernel: [   16.723020] cnss[41]: INFO: Default MLO configuration is set!
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   16.787907] ubi1: attaching mtd22
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   16.951483] ubi1: scanning is finished
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   16.962741] ubi1: attached mtd22 (name "aei_cfg", size 16 MiB)
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   16.962910] ubi1: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   16.967800] ubi1: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   16.974515] ubi1: VID header offset: 2048 (aligned 2048), data offset: 4096
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   16.981329] ubi1: good PEBs: 128, bad PEBs: 0, corrupted PEBs: 0
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   16.989177] ubi1: user volume: 1, internal volumes: 1, max. volumes count: 128
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   16.994314] ubi1: max/mean erase counter: 38/16, WL threshold: 4096, image sequence number: 2059161461
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.001524] ubi1: available PEBs: 0, total reserved PEBs: 128, PEBs reserved for bad PEB handling: 40
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.011049] ubi1: background thread "ubi_bgt1d" started, PID 194
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.055184] UBIFS (ubi1:0): Mounting in unauthenticated mode
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.055779] UBIFS (ubi1:0): background thread "ubifs_bgt1_0" started, PID 209
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.088354] UBIFS (ubi1:0): recovery needed
Tue Sep 23 23:55:55 2025 kern.err kernel: [   17.168127] cnss: INFO: cnss_plat_ipc_qmi_reg_client_req_handler: QMI Client Connected. QMI Socket Node: 1 Port: 16392 ID: 1
Tue Sep 23 23:55:55 2025 kern.err kernel: [   17.168352] cnss: INFO: CNSS Daemon connected
Tue Sep 23 23:55:55 2025 kern.err kernel: [   17.180385] cnss: INFO: cnss_plat_ipc_qmi_init_setup_req_handler: MAC: 0 HW_TRC: 0 CAL: 0
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.330602] UBIFS (ubi1:0): recovery completed
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.331007] UBIFS (ubi1:0): UBIFS: mounted UBI device 1, volume 0, name "aei_cfg"
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.334805] UBIFS (ubi1:0): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.342014] UBIFS (ubi1:0): FS size: 9396224 bytes (8 MiB, 74 LEBs), journal size 1015809 bytes (0 MiB, 6 LEBs)
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.351839] UBIFS (ubi1:0): reserved for root: 443806 bytes (433 KiB)
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.362285] UBIFS (ubi1:0): media format: w5/r0 (latest is w5/r0), UUID AADF1575-402B-4226-8DDB-B870C7EDB96E, small LPT model
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.458205] ubi2: attaching mtd24
Tue Sep 23 23:55:55 2025 user.info kernel: [   17.464876] urngd: v1.0.2 started.
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.685637] ubi2: scanning is finished
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.692599] ubi2: attached mtd24 (name "aei_app", size 44 MiB)
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.692804] ubi2: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.697485] ubi2: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.704314] ubi2: VID header offset: 2048 (aligned 2048), data offset: 4096
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.711233] ubi2: good PEBs: 352, bad PEBs: 0, corrupted PEBs: 0
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.717912] ubi2: user volume: 1, internal volumes: 1, max. volumes count: 128
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.724224] ubi2: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 540118384
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.731271] ubi2: available PEBs: 0, total reserved PEBs: 352, PEBs reserved for bad PEB handling: 40
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.740243] ubi2: background thread "ubi_bgt2d" started, PID 258
Tue Sep 23 23:55:55 2025 kern.err kernel: [   17.742522] ubi: mtd20 is already attached to ubi0
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.796347] UBIFS (ubi2:0): Mounting in unauthenticated mode
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.796887] UBIFS (ubi2:0): background thread "ubifs_bgt2_0" started, PID 276
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.826894] UBIFS (ubi2:0): recovery needed
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.923759] UBIFS (ubi2:0): recovery completed
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.924053] UBIFS (ubi2:0): UBIFS: mounted UBI device 2, volume 0, name "aei_app"
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.927326] UBIFS (ubi2:0): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.934973] UBIFS (ubi2:0): FS size: 37838848 bytes (36 MiB, 298 LEBs), journal size 1904640 bytes (1 MiB, 15 LEBs)
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.946052] UBIFS (ubi2:0): reserved for root: 1787221 bytes (1745 KiB)
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   17.955811] UBIFS (ubi2:0): media format: w5/r0 (latest is w5/r0), UUID DFC2C05E-85F1-43BF-BA42-853BC38E33AF, small LPT model
Tue Sep 23 23:55:55 2025 kern.err kernel: [   18.051703] ubi: mtd20 is already attached to ubi0
Tue Sep 23 23:55:55 2025 kern.err kernel: [   18.068355] ubi: mtd22 is already attached to ubi1
Tue Sep 23 23:55:55 2025 kern.err kernel: [   18.772227] ubi: mtd24 is already attached to ubi2
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.802722] ssdk_switch_device_num_init[1375]:INFO:ess-switch dts node number: 1
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.802892] ssdk_dt_get_switch_node[1164]:INFO:ess-switch DT exist!
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.809537] ssdk_dt_parse_access_mode[1039]:INFO:switch_access_mode: local bus
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.815347] ssdk_dt_parse_access_mode[1052]:INFO:switchreg_base_addr: 0x39c00000
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.822708] ssdk_dt_parse_access_mode[1053]:INFO:switchreg_size: 0x200000
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.830281] ssdk_dt_parse_mac_mode[328]:INFO:mac mode = 0xc
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.836874] ssdk_dt_parse_mac_mode[334]:INFO:mac mode1 doesn't exit!
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.842363] ssdk_dt_parse_mac_mode[343]:INFO:mac mode2 doesn't exit!
Tue Sep 23 23:55:55 2025 kern.debug kernel: [   24.849016] of_get_named_gpiod_flags: can't parse 'phy-reset-gpio' property of node '/soc/mdio@88000[0]'
Tue Sep 23 23:55:55 2025 kern.debug kernel: [   24.849060] of_get_named_gpiod_flags: parsed 'phy-reset-gpio' property of node '/soc/mdio@90000[0]' - status (0)
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.849068] ssdk_dt_parse_phy_info[787]:INFO:port2's phy-reset-gpio is GPIO500
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.855230] ssdk_dt_parse_port_bmp[940]:INFO:port_bmp doesn't exist!
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.862496] ssdk_dt_parse_uniphy[365]:INFO:ess-uniphy DT exist!
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.868745] ssdk_dt_parse_led[1137]:INFO:current dts led_source_num is 1
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   24.874535] ssdk_plat_init[1698]:INFO:ssdk_plat_init start
Tue Sep 23 23:55:55 2025 user.info kernel: [   26.153368] kmodloader: loading kernel modules from /etc/modules.d/*
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   26.191614] cfg80211: Loading compiled-in X.509 certificates for regulatory database
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   26.567270] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
Tue Sep 23 23:55:55 2025 kern.info kernel: [   26.570919] NET: Registered protocol family 15
Tue Sep 23 23:55:55 2025 kern.info kernel: [   26.575585] Initializing XFRM netlink socket
Tue Sep 23 23:55:55 2025 kern.info kernel: [   26.580005] tun: Universal TUN/TAP device driver, 1.6
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   26.588220] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   26.588430] platform regulatory.0: Falling back to sysfs fallback for: regulatory.db
Tue Sep 23 23:55:55 2025 kern.info kernel: [   26.714398] cfg80211: failed to load regulatory.db
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.447641] ssdk_mp_reset_init[818]:INFO:MP reset successfully!
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.447887] ssdk_gcc_clock_init[1234]:INFO:SSDK gcc clock init successfully!
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.453729] mpge_phy_api_ops_init[1092]:INFO:qca probe mpge phy driver succeeded!
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.460263] regi_init[4065]:INFO:Initializing SCOMPHY!
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.467299] _ssdk_mac_sw_sync_chip_check[1683]:ERROR:Unsupported chip version 0
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.833735] ssdk_led_init[152]:INFO:ssdk_led_mode:3, ssdk_led_map:ffc, ssdk_led_src_id:0
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.834038] ssdk_switch_register[2044]:INFO:Chip version 0xee
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.841039] qca_link_polling_select[1498]:INFO:link-polling-required node does not exist
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.846695] ssdk_switch_register[2078]:INFO:polling is selected
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.854869] regi_init[4075]:INFO:Initializing SCOMPHY Done!!
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.860532] regi_init[4106]:INFO:qca-ssdk module init succeeded!
Tue Sep 23 23:55:55 2025 kern.info kernel: [   27.868531] (unnamed net_device) (uninitialized): nss_dp_gmac: Registering netdev eth%d(qcom-id:1) with GMAC, mac_base: 0xa0110000
Tue Sep 23 23:55:55 2025 kern.info kernel: [   27.874828] (unnamed net_device) (uninitialized): nss_dp_gmac: Registering netdev eth%d(qcom-id:2) with GMAC, mac_base: 0xa0130000
Tue Sep 23 23:55:55 2025 kern.info kernel: [   27.885819] **********************************************************
Tue Sep 23 23:55:55 2025 kern.info kernel: [   27.895682] * NSS Data Plane driver
Tue Sep 23 23:55:55 2025 kern.info kernel: [   27.902279] **********************************************************
Tue Sep 23 23:55:55 2025 kern.info kernel: [   27.923428] l2tp_core: L2TP core driver, V2.0
Tue Sep 23 23:55:55 2025 kern.info kernel: [   27.926864] l2tp_netlink: L2TP netlink interface
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.966305] qca-nss 7a00000.nss: Direct firmware load for qca-nss0.bin failed with error -2
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   27.966516] qca-nss 7a00000.nss: Falling back to sysfs fallback for: qca-nss0.bin
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.663002] nss_driver - fw of size 785404  bytes copied to load addr: 40000000, nss_id : 0
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.665347] Supported Frequencies -
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.665351] 850 MHz
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.670400] 1 GHz
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.674206]
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.678950] 7f3658c0: set sdma 9d4edb00
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.680088] node size 2 # items 4
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.683388] memory: 40000000 536870912 (avl 472969216) items 4 active_cores 1
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.686782] addr/size storage words 2 2 # words 4 in DTS, ddr size 1000000
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.694063] 7f3658c0: NSS core 0 DDR from 40000000 to 41000000
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.700902] 7f3658c0: meminfo init succeed
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.707784] 7f3658c0: All resources initialized and nss core0 has been brought out of reset
Tue Sep 23 23:55:55 2025 kern.info kernel: [   28.724779] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
Tue Sep 23 23:55:55 2025 user.warn kernel: [   28.727299] loading qca-wifi
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.739430] node size 2 # items 4
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   28.739579] nat46: module (version 1182f30785e4274913f01a8c3d7e1b5437ae3819) loaded.
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.741073] memory: 40000000 536870912 (avl 472969216) items 4 active_cores 1
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.752272] addr/size storage words 2 2 # words 4 in DTS, ddr size 1000000
Tue Sep 23 23:55:55 2025 kern.info kernel: [   28.754906] gre: GRE over IPv4 demultiplexor driver
Tue Sep 23 23:55:55 2025 kern.alert kernel: [   28.759211] 7f3658c0: nss core 0 booted successfully
Tue Sep 23 23:55:55 2025 kern.info kernel: [   28.767841] ip_gre: GRE over IPv4 tunneling driver
Tue Sep 23 23:55:55 2025 kern.info kernel: [   28.781442] ip6_gre: GRE over IPv6 tunneling driver
Tue Sep 23 23:55:55 2025 kern.info kernel: [   28.789418] Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Tue Sep 23 23:55:55 2025 kern.err kernel: [   28.805357] rmnet_nss_init(): initializing rmnet_nss
Tue Sep 23 23:55:55 2025 kern.info kernel: [   28.818077] PPP generic driver version 2.4.2
Tue Sep 23 23:55:55 2025 kern.info kernel: [   28.819389] NET: Registered protocol family 24
Tue Sep 23 23:55:55 2025 kern.info kernel: [   28.823099] PPTP driver version 0.8.5
Tue Sep 23 23:55:55 2025 kern.info kernel: [   28.898262] openvswitch: Open vSwitch switching datapath
Tue Sep 23 23:55:55 2025 kern.warn kernel: [   28.908635] QCA Hy-Fi multicast installation successfully
Tue Sep 23 23:55:55 2025 kern.notice kernel: [   28.929744] nss_lag_init[352]:LAG Manager Installed

Can you add mdio-tools do you build and run:

mdio 9*

Yes, I’d be happy to. Here’s what I got from the mdio tools in the OpenWrt DSA build I compiled.

root@OpenWrt:~# mdio
88000.mdio-1
90000.mdio-1
90000.mdio-1:1d
fixed-0
root@OpenWrt:~# mdio 90000.mdio-1
 DEV      PHY-ID  LINK
0x1d  0xdeaddead  up
root@OpenWrt:~# 

2500base-x is known broken (for the moment), you may try (rev-)sgmii instead.

Also, can you try

mdio 90000.mdio-1:1d

before and after plugging the ethernet cable.

Even when I set 2500baseX to SGMII - 1000Mbps, there is still no link on the ports, carrier = 0, Tx/Rx = 0. On the original OEM firmware, if I use swconfig switch0, the CPU port is shown as port 5, but I think that’s just a logical label from the manufacturer. I’m wondering whether my hardware is different from other router models on the market that use yt9125s + ipq5018. This model was custom-made by the service provider.
Could you tell me the name of the device you tested on?

I’m using Xiaomi CR881x, and I’ve tested it against the ax3000 repo above, and the DSA driver (and their swconfig driver works well with 2500baseX but I can only bring SGMII up).

So maybe the hardware is different; my code belongs to another manufacturer, perhaps they changed something.

You need to add port_mac_sel = "QGMAC_PORT"; which tells the QSDK to switch to sgmii+ mode.

See the DTS for AX6000 and SPNMX56