Vimin VM-S100-0800T support on Realtek RTL9303 Realtek 8x8261BE Rj45

Hello everyone! I recently purchased a Vimin VM-S100-0800T at a very low price! The switch is unmanaged! After searching through threads and disassembling the device, I discovered that the hardware is quite powerful to be locked into Chinese firmware, so I decided to flash it to OpenVRT! I decided to replace the 16MB flash drive with a 32MB one! I used a similar dts rtl9303_xikestor_sks8300-8t! But I ran into one huge problem: when booting from RAM, all ports work—there is a link—but when booting from a flash drive, the first four ports don't work, and naturally, the web interface doesn't work!
I've tried everything I could, but nothing helps!

My DTS

// SPDX-License-Identifier: GPL-2.0-or-later

#include "rtl930x.dtsi"
#include <dt-bindings/input/input.h>
#include <dt-bindings/gpio/gpio.h>

/ {
	compatible = "vimin,vm-s100-0800T", "realtek,rtl9303-soc";
	model = "Vimin VM-S100-0800T";

	aliases {
		label-mac-device = &ethernet0;
	};

	memory@0 {
		device_type = "memory";
		reg = <0x00000000 0x10000000>, /* first 256 MiB */
		      <0x20000000 0x10000000>; /* remaining 256 MiB */
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	led_set {
		compatible = "realtek,rtl9300-leds";
		active-low;

		led_set0 = <(RTL93XX_LED_SET_10M | RTL93XX_LED_SET_100M |
			     RTL93XX_LED_SET_1G | RTL93XX_LED_SET_2P5G |
			     RTL93XX_LED_SET_5G | RTL93XX_LED_SET_LINK |
			     RTL93XX_LED_SET_ACT)
			    (RTL93XX_LED_SET_10G | RTL93XX_LED_SET_LINK |
			     RTL93XX_LED_SET_ACT)>;
	};
};

&spi0 {
	status = "okay";

	flash@0 {
		compatible = "jedec,spi-nor";
		reg = <0>;
		spi-max-frequency = <20000000>;

partitions {
			compatible = "fixed-partitions";
			#address-cells = <1>;
			#size-cells = <1>;

			/* LOADER: 0xe0000 @ 0x000000 */
			partition@0 {
				label = "u-boot";
				reg = <0x0 0xe0000>;
				read-only;
			};

			/* BDINFO: 0x10000 @ 0x0e0000 */
			partition@e0000 {
				label = "u-boot-env";
				reg = <0xe0000 0x10000>;
			};

			/* SYSINFO: 0x10000 @ 0x0f0000 */
			partition@f0000 {
				label = "sysinfo";
				reg = <0xf0000 0x10000>;
				read-only;
			};

			/* JFFS2_CFG: 0x100000 @ 0x100000 */
			partition@100000 {
				label = "jffs2_cfg";
				reg = <0x100000 0x100000>;
			};

			/* JFFS2_LOG: 0x100000 @ 0x200000 */
			partition@200000 {
				label = "jffs2_log";
				reg = <0x200000 0x100000>;
			};
			
			partition@300000 {
				compatible = "openwrt,uimage", "denx,uimage";
				label = "firmware";
				reg = <0x300000 0x1d00000>; 
				openwrt,ih-magic = <0x93000000>;
				openwrt,offset = <0x10>;
			};
		};
	};
};
  
&mdio_bus0 {
	status = "okay";
	reg = <0>;
	#address-cells = <1>;
	#size-cells = <0>;
	
	phy0: ethernet-phy@0 {
		compatible = "ethernet-phy-ieee802.3-c45";
		reg = <0>;
	};

	phy8: ethernet-phy@8 {
		compatible = "ethernet-phy-ieee802.3-c45";
		reg = <8>;
		realtek,smi-address = <1>;
	};

	phy16: ethernet-phy@16 {
		compatible = "ethernet-phy-ieee802.3-c45";
		reg = <16>;
		realtek,smi-address = <2>;
	};

	phy20: ethernet-phy@20 {
		compatible = "ethernet-phy-ieee802.3-c45";
		reg = <20>;
		realtek,smi-address = <3>;
	};
};

&mdio_bus1 {
	status = "okay";
	reg = <1>;
	#address-cells = <1>;
	#size-cells = <0>;
	
	phy24: ethernet-phy@24 {
		compatible = "ethernet-phy-ieee802.3-c45";
		reg = <24>;
		realtek,smi-address = <0>;
	};

	phy25: ethernet-phy@25 {
		compatible = "ethernet-phy-ieee802.3-c45";
		reg = <25>;
		realtek,smi-address = <1>;
	};

	phy26: ethernet-phy@26 {
		compatible = "ethernet-phy-ieee802.3-c45";
		reg = <26>;
		realtek,smi-address = <2>;
	};

	phy27: ethernet-phy@27 {
		compatible = "ethernet-phy-ieee802.3-c45";
		reg = <27>;
		realtek,smi-address = <3>;
	};
};

&ethernet0 {
	generate-mac-address;
	status = "okay";
};


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

		SWITCH_PORT_SDS(0, 1, 2, usxgmii)
		SWITCH_PORT_SDS(8, 2, 3, usxgmii)
		SWITCH_PORT_SDS(16, 3, 4, usxgmii)
		SWITCH_PORT_SDS(20, 4, 5, usxgmii)
		SWITCH_PORT_SDS(24, 5, 6, usxgmii)
		SWITCH_PORT_SDS(25, 6, 7, usxgmii)
		SWITCH_PORT_SDS(26, 7, 8, usxgmii)
		SWITCH_PORT_SDS(27, 8, 9, usxgmii)

		port@28 {
			ethernet = <&ethernet0>;
			reg = <28>;
			phy-mode = "internal";
			fixed-link {
				speed = <10000>;
				full-duplex;
			};
		};
	};
};

sys dump hwp all

RTK.0> sys dump hwp all
    Profile Information (C00A6A5C):
      Profile-Name: RTL9303_8x8261BE
      Profile-ID: 9300019
      Profile-ID-Type: 0
      CPU Type: Embedded
      SW Desc IDX: 0
      Slave Interrupt Pin: 255
      Chip count: 1
      Cascade Mode: No
        unit  0, 9303(1) (cpu)
          swcore support: 1
          swcore-CPU Interface(1:normal, 2:SPI, 3: PCIe): 1
          nic support: 1
          port count: 9
          macId: 0, 8,16,20,24,25,26,27,28,
          CpuMacId: 28  (attr)
          Ether   cnt: 8, macId(m/M): 0/27 msk:0x0f110101 0x00000000 (A)
          Uplink  cnt: 4, macId(m/M):24/27 msk:0x0f000000 0x00000000 (A)
          XGE     cnt: 8, macId(m/M): 0/27 msk:0x0f110101 0x00000000 (E)
          Copper  cnt: 8, macId(m/M): 0/27 msk:0x0f110101 0x00000000 (M)
          port: 0, phyIdx0
          port: 8, phyIdx1
          port:16, phyIdx2
          port:20, phyIdx3
          port:24, phyIdx4
          port:25, phyIdx5
          port:26, phyIdx6
          port:27, phyIdx7
          port:28, phyIdx255

          PHY Count:8
            type:36(RTL8261BE   ) port:1 baseMac:0
            type:36(RTL8261BE   ) port:1 baseMac:8
            type:36(RTL8261BE   ) port:1 baseMac:16
            type:36(RTL8261BE   ) port:1 baseMac:20
            type:36(RTL8261BE   ) port:1 baseMac:24
            type:36(RTL8261BE   ) port:1 baseMac:25
            type:36(RTL8261BE   ) port:1 baseMac:26
            type:36(RTL8261BE   ) port:1 baseMac:27
          PHY[0]: chipID 36, baseMacId  0, phy_max  1
          PHY[1]: chipID 36, baseMacId  8, phy_max  1
          PHY[2]: chipID 36, baseMacId 16, phy_max  1
          PHY[3]: chipID 36, baseMacId 20, phy_max  1
          PHY[4]: chipID 36, baseMacId 24, phy_max  1
          PHY[5]: chipID 36, baseMacId 25, phy_max  1
          PHY[6]: chipID 36, baseMacId 26, phy_max  1
          PHY[7]: chipID 36, baseMacId 27, phy_max  1
unitMapStruct[0].pUnitInfo:8fcb0014,parsed_info=8fcb0000,swDescp=c00a6ab4
unitMapStruct[1].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[2].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[3].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[4].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[5].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[6].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[7].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[8].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[9].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[10].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[11].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[12].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[13].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[14].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
unitMapStruct[15].pUnitInfo:c00c009c,parsed_info=0,swDescp=0
(&parsedInfoEmpty.unitInfo[EMPTY]=c00c009c)
info->hwp=RTL9303_8x8261BE(c00a6a5c)
info->hwp_localUnitCnt=1
info->hwp_embeddedCpuUnitId=0
info->hwp_cascade_mode=0
info->hwp_cascadeSlaveUnitID=0
info->hwp->swDescp[0]=c00a6ab4
info->hwp->swDescp[1]=0
info->hwp->swDescp[2]=0
info->hwp->swDescp[3]=0
info->hwp->swDescp[4]=0
info->hwp->swDescp[5]=0
info->unitInfo[0].hwp_chip_id=93030000
info->unitInfo[0].hwp_chip_revision=1
info->unitInfo[0].hwp_chip_family_id=93000000
info->unitInfo[0].hwp_maxMacId=28
info->unitInfo[0].hwp_minMacId=0
info->unitInfo[0].hwp_macID2PortDescp:
p[0]=c00a6ac8,mac_id=0,phyIdx=0,sdsIdx=0,smi=0,phy_addr=0,attr=1,eth=16,medi=1,
p[8]=c00a6adc,mac_id=8,phyIdx=1,sdsIdx=1,smi=0,phy_addr=1,attr=1,eth=16,medi=1,
p[16]=c00a6af0,mac_id=16,phyIdx=2,sdsIdx=2,smi=0,phy_addr=2,attr=1,eth=16,medi=1,
p[20]=c00a6b04,mac_id=20,phyIdx=3,sdsIdx=3,smi=0,phy_addr=3,attr=1,eth=16,medi=1,
p[24]=c00a6b18,mac_id=24,phyIdx=4,sdsIdx=4,smi=1,phy_addr=0,attr=3,eth=16,medi=1,
p[25]=c00a6b2c,mac_id=25,phyIdx=5,sdsIdx=5,smi=1,phy_addr=1,attr=3,eth=16,medi=1,
p[26]=c00a6b40,mac_id=26,phyIdx=6,sdsIdx=6,smi=1,phy_addr=2,attr=3,eth=16,medi=1,
p[27]=c00a6b54,mac_id=27,phyIdx=7,sdsIdx=7,smi=1,phy_addr=3,attr=3,eth=16,medi=1,
p[28]=c00a6b68,mac_id=28,phyIdx=255,sdsIdx=255,smi=255,phy_addr=255,attr=8,eth=255,medi=255,

info->unitInfo[0].hwp_macID2SerdesID:
  p[0]=2,p[1]=255,p[2]=255,p[3]=255,p[4]=255,p[5]=255,p[6]=255,p[7]=255,p[8]=3,p[9]=255,p[10]=255,p[11]=255,p[12]=255,p[13]=255,p[14]=255,p[15]=255,p[16]=4,p[17]=255,p[18]=255,p[19]=255,p[20]=5,p[21]=255,p[22]=255,p[23]=255,p[24]=6,p[25]=7,p[26]=8,p[27]=9,p[28]=255,p[29]=255,p[30]=255,p[31]=255,p[32]=255,p[33]=255,p[34]=255,p[35]=255,p[36]=255,p[37]=255,p[38]=255,p[39]=255,p[40]=255,p[41]=255,p[42]=255,p[43]=255,p[44]=255,p[45]=255,p[46]=255,p[47]=255,p[48]=255,p[49]=255,p[50]=255,p[51]=255,p[52]=255,p[53]=255,p[54]=255,p[55]=255,p[56]=255,p[57]=255,p[58]=255,p[59]=255,p[60]=255,p[61]=255,p[62]=255,p[63]=255,
info->unitInfo[0].hwp_portCpuMacId=28
Ether  : count=8, max=27, min=0
Uplink : count=4, max=27, min=24
Cascade: count=0, max=0, min=64
Fe     : count=0, max=0, min=64
Ge     : count=0, max=0, min=64
Xge    : count=8, max=27, min=0
SXge   : count=0, max=0, min=64
Copper : count=8, max=27, min=0
Fiber  : count=0, max=0, min=64
Combo  : count=0, max=0, min=64
Serdes : count=0, max=0, min=64
info->unitInfo[0].hwp_sdsID2phyType:
 SDS  2 PHY:36
SDS  3 PHY:36
SDS  4 PHY:36
SDS  5 PHY:36
SDS  6 PHY:36
SDS  7 PHY:36
SDS  8 PHY:36
SDS  9 PHY:36


U-Boot

U-Boot 2011.12.(3.6.11.55242) (Dec 22 2023 - 09:16:14)
Board: RTL9300 CPU:800MHz LX:175MHz DDR:600MHz
DRAM:  512 MB
SPI-F: WINBOND/EF4018/MMIO16-1/ModeC 1x16 MB (plr_flash_info @ 83f8a03c)
Loading 65536B env. variables from offset 0xe0000
Net:   Net Initialization Skipped
No ethernet found.
read uid
Hit Esc key to stop autoboot:  0
## Booting image from partition ... 0
## Booting kernel from Legacy Image at 81000000 ...
   Image Name:   RTK_SDK
   Created:      2024-02-22   7:07:43 UTC
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    4860538 Bytes = 4.6 MB
   Load Address: 80000000
   Entry Point:  80284d30
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK

Starting kernel ...

console [ttyS0] enabled
bootconsole [early0] disabled
Calibrating delay loop... 531.66 BogoMIPS (lpj=2658304)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
NET: Registered protocol family 16
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
TCP established hash table entries: 2048 (order: 1, 8192 bytes)
TCP bind hash table entries: 2048 (order: 3, 40960 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP: reno registered
UDP hash table entries: 256 (order: 1, 12288 bytes)
UDP-Lite hash table entries: 256 (order: 1, 12288 bytes)
NET: Registered protocol family 1
futex hash table entries: 256 (order: 0, 7168 bytes)
msgmni has been set to 484
random: modprobe urandom read with 1 bits of entropy available
bounce: pool size: 64 pages
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
serial8250: ttyS0 at MMIO 0x0 (irq = 47, base_baud = 10764700) is a 16550A
RTK_SPI_FLASH_MIO driver is bypassed
RTK_NORSFG3 driver is used
=================================================================
init_luna_nor_spi_map: flash map at 0xb4000000
SPI NOR driver probe...
WINBOND/read uid
PASS!
EF4018/MMIO16-1/ModeC add SPI NOR partition
MTD partitions obtained from built-in array
Creating 7 MTD partitions on "rtk_norsf_g3":
0x000000000000-0x0000000e0000 : "LOADER"
0x0000000e0000-0x0000000f0000 : "BDINFO"
0x0000000f0000-0x000000100000 : "SYSINFO"
0x000000100000-0x000000200000 : "JFFS2 CFG"
0x000000200000-0x000000300000 : "JFFS2 LOG"
0x000000300000-0x000000980000 : "RUNTIME"
0x000000980000-0x000001000000 : "RUNTIME2"
=================================================================
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
rtk_gen1_hcd_cs_init: rtk_gen1_hcd_cs_init()!
rtk_gen1_hcd_cs_init: register rtk_gen1_ehci ok!
usb_phy_configure_process: usb_phy_configure_process()!
rtk_gen1-ehci rtk_gen1-ehci: Realtek On-Chip EHCI Host Controller
rtk_gen1-ehci rtk_gen1-ehci: new USB bus registered, assigned bus number 1
rtk_gen1-ehci rtk_gen1-ehci: irq 28, io mem 0x18021000
rtk_gen1-ehci rtk_gen1-ehci: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
usbcore: registered new interface driver usbtmc
usbcore: registered new interface driver usb-storage
TCP: cubic registered
NET: Registered protocol family 17
Freeing unused kernel memory: 3628K (803a5000 - 80730000)
init started:  BusyBox v1.00 (2023.12.21-13:09+0000) multi-call binary
Starting pid 25, console : '/etc/rc'
RTCORE LKM Insert...
RTCORE Driver Module Initialize
  IOAL init
  Log init
  Hardware-profile probe (RTL9303_8x8261BE)
  Hardware-profile init
  GPIO probe (unit 0): (found)
  GPIO Init
  SPI init (unit 0) (type3)
    SPI Master init
  Intr Probe (unit 0)
  TC probe (unit 0): (found)
  TC init (unit 0)
    TC util init (unit 0)
    TC util init (isr)
  Watchdog probe (unit 0): (found)
  Watchdog init (unit 0)
  I2C probe (unit 0)
  I2C init (unit 0)
  RTL8231 probe (unit 0): (found)
  RTL8231 init (unit 0)
  NIC probe (unit 0)
  IOAL init
  L2Ntfy probe (unit 0): (found)
RTK Driver Module Initialize
  MAC probe (unit 0)
    Chip 9303 (found)
  MAC init (unit 0)
led init
  SMI protocol probe (unit 0)
  PHY probe (unit 0)
  Chip Construct (unit 0)
    Chip Construct
    Disable PHY Polling
    PHY Reset
    MAC Construct
    Turn Off Serdes
    Serdes Construct
    PHY Construct
    Turn On Serdes
    Mac_Polling_PHY Config
    Enable PHY Polling
    Misc
  PHY init (unit 0)
  Mgmt_dev init (unit 0)
set vlan
Copyright @ 2023 Sirivision
All rights reserved.
Tel:  0755-29402631
Website:  www.sirivision.com
RTNIC Driver Module Initialize
RTDRV Driver Module Initialize
route: not found
U-Boot 2011.12.(3.6.11.55242) (Dec 22 2023 - 09:16:14)
Board: RTL9300 CPU:800MHz LX:175MHz DDR:600MHz
DRAM:  512 MB
SPI-F: WINBOND/EF4018/MMIO16-1/ModeC 1x16 MB (plr_flash_info @ 83f8a03c)
Loading 65536B env. variables from offset 0xe0000
Net:   Net Initialization Skipped
No ethernet found.
read uid
Hit Esc key to stop autoboot:  0
## Booting image from partition ... 0
## Booting kernel from Legacy Image at 81000000 ...
   Image Name:   RTK_SDK
   Created:      2024-02-22   7:07:43 UTC
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    4860538 Bytes = 4.6 MB
   Load Address: 80000000
   Entry Point:  80284d30
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK

Starting kernel ...

console [ttyS0] enabled
bootconsole [early0] disabled
Calibrating delay loop... 531.66 BogoMIPS (lpj=2658304)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
NET: Registered protocol family 16
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
TCP established hash table entries: 2048 (order: 1, 8192 bytes)
TCP bind hash table entries: 2048 (order: 3, 40960 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP: reno registered
UDP hash table entries: 256 (order: 1, 12288 bytes)
UDP-Lite hash table entries: 256 (order: 1, 12288 bytes)
NET: Registered protocol family 1
futex hash table entries: 256 (order: 0, 7168 bytes)
msgmni has been set to 484
random: modprobe urandom read with 1 bits of entropy available
bounce: pool size: 64 pages
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
serial8250: ttyS0 at MMIO 0x0 (irq = 47, base_baud = 10764700) is a 16550A
RTK_SPI_FLASH_MIO driver is bypassed
RTK_NORSFG3 driver is used
=================================================================
init_luna_nor_spi_map: flash map at 0xb4000000
SPI NOR driver probe...
WINBOND/read uid
PASS!
EF4018/MMIO16-1/ModeC add SPI NOR partition
MTD partitions obtained from built-in array
Creating 7 MTD partitions on "rtk_norsf_g3":
0x000000000000-0x0000000e0000 : "LOADER"
0x0000000e0000-0x0000000f0000 : "BDINFO"
0x0000000f0000-0x000000100000 : "SYSINFO"
0x000000100000-0x000000200000 : "JFFS2 CFG"
0x000000200000-0x000000300000 : "JFFS2 LOG"
0x000000300000-0x000000980000 : "RUNTIME"
0x000000980000-0x000001000000 : "RUNTIME2"
=================================================================
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
rtk_gen1_hcd_cs_init: rtk_gen1_hcd_cs_init()!
rtk_gen1_hcd_cs_init: register rtk_gen1_ehci ok!
usb_phy_configure_process: usb_phy_configure_process()!
rtk_gen1-ehci rtk_gen1-ehci: Realtek On-Chip EHCI Host Controller
rtk_gen1-ehci rtk_gen1-ehci: new USB bus registered, assigned bus number 1
rtk_gen1-ehci rtk_gen1-ehci: irq 28, io mem 0x18021000
rtk_gen1-ehci rtk_gen1-ehci: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
usbcore: registered new interface driver usbtmc
usbcore: registered new interface driver usb-storage
TCP: cubic registered
NET: Registered protocol family 17
Freeing unused kernel memory: 3628K (803a5000 - 80730000)
init started:  BusyBox v1.00 (2023.12.21-13:09+0000) multi-call binary
Starting pid 25, console : '/etc/rc'
RTCORE LKM Insert...
RTCORE Driver Module Initialize
  IOAL init
  Log init
  Hardware-profile probe (RTL9303_8x8261BE)
  Hardware-profile init
  GPIO probe (unit 0): (found)
  GPIO Init
  SPI init (unit 0) (type3)
    SPI Master init
  Intr Probe (unit 0)
  TC probe (unit 0): (found)
  TC init (unit 0)
    TC util init (unit 0)
    TC util init (isr)
  Watchdog probe (unit 0): (found)
  Watchdog init (unit 0)
  I2C probe (unit 0)
  I2C init (unit 0)
  RTL8231 probe (unit 0): (found)
  RTL8231 init (unit 0)
  NIC probe (unit 0)
  IOAL init
  L2Ntfy probe (unit 0): (found)
RTK Driver Module Initialize
  MAC probe (unit 0)
    Chip 9303 (found)
  MAC init (unit 0)
led init
  SMI protocol probe (unit 0)
  PHY probe (unit 0)
  Chip Construct (unit 0)
    Chip Construct
    Disable PHY Polling
    PHY Reset
    MAC Construct
    Turn Off Serdes
    Serdes Construct
    PHY Construct
    Turn On Serdes
    Mac_Polling_PHY Config
    Enable PHY Polling
    Misc
  PHY init (unit 0)
  Mgmt_dev init (unit 0)
set vlan
Copyright @ 2023 Sirivision
All rights reserved.
Tel:  0755-29402631
Website:  www.sirivision.com
RTNIC Driver Module Initialize
RTDRV Driver Module Initialize
route: not found

OpenWRT

Starting kernel ...

[    0.000000] Linux version 6.12.69 (builder@debian) (mips-openwrt-linux-musl-gcc (OpenWrt GCC 14.3.0 r33046-d0c82dbb17) 14.3.0, GNU ld (GNU Binutils) 2.44) #0 SMP Thu Feb 12 22:55:29 2026
[    0.000000] Realtek RTL9303 rev B (6487) SoC with 512 MB
[    0.000000] highmem kernel on RTL930x with > 256 MB RAM, adapt SoC memory mapping
[    0.000000] printk: legacy bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 00019555 (MIPS 34Kc)
[    0.000000] MIPS: machine is Vimin VM-S100-0800T
[    0.000000] earlycon: ns16550a0 at MMIO 0x18002000 (options '115200n8')
[    0.000000] printk: legacy bootconsole [ns16550a0] enabled
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Using appended Device Tree.
[    0.000000] OF: reserved mem: Reserved memory: No reserved-memory node in the DT
[    0.000000] Detected 1 available secondary CPU(s)
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x000000001fffffff]
[    0.000000]   HighMem  [mem 0x0000000020000000-0x000000002fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000]   node   0: [mem 0x0000000020000000-0x000000002fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000002fffffff]
[    0.000000] On node 0, zone HighMem: 65536 pages in unavailable ranges
[    0.000000] percpu: Embedded 12 pages/cpu s18128 r8192 d22832 u49152
[    0.000000] pcpu-alloc: s18128 r8192 d22832 u49152 alloc=12*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1
[    0.000000] Kernel command line: earlycon
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes, linear)
[    0.000000] Writing ErrCtl register=00061e56
[    0.000000] Readback ErrCtl register=00061e56
[    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] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    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: 256
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] Failed to get CPU clock: -2
[    0.000000] CPU frequency from device tree: 800MHz
[    0.000000] clocksource: realtek_otto_timer: mask: 0xfffffff max_cycles: 0xfffffff, max_idle_ns: 38225208801 ns
[    0.000003] sched_clock: 28 bits at 3125kHz, resolution 320ns, wraps every 42949672800ns
[    0.009041] Calibrating delay loop... 531.66 BogoMIPS (lpj=2658304)
[    0.065728] pid_max: default: 32768 minimum: 301
[    0.082125] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.090182] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.112530] rcu: Hierarchical SRCU implementation.
[    0.117783] rcu:     Max phase no-delay instances is 1000.
[    0.125582] smp: Bringing up secondary CPUs ...
[    0.132554] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.132613] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.132708] CPU1 revision is: 00019555 (MIPS 34Kc)
[    0.208924] Counter synchronization [CPU#0 -> CPU#1]: passed
[    0.236266] smp: Brought up 1 node, 2 CPUs
[    0.242313] Memory: 504444K/524288K available (7508K kernel code, 718K rwdata, 1696K rodata, 1272K init, 243K bss, 18724K reserved, 0K cma-reserved, 262144K highmem)
[    0.264732] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.275613] futex hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.289831] pinctrl core: initialized pinctrl subsystem
[    0.298999] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.306264] thermal_sys: Registered thermal governor 'step_wise'
[    0.327534] clocksource: Switched to clocksource realtek_otto_timer
[    0.352900] NET: Registered PF_INET protocol family
[    0.358686] IP idents hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.367982] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.377150] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.385680] TCP established hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.394193] TCP bind hash table entries: 2048 (order: 3, 32768 bytes, linear)
[    0.402208] TCP: Hash tables configured (established 2048 bind 2048)
[    0.410127] MPTCP token hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.418602] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.425793] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.434537] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.444024] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[    0.454424] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.461024] jffs2: version 2.2 (NAND) (SUMMARY) (ZLIB) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.479346] pinctrl-single 1b000200.pinmux: 32 pins, size 4
[    0.485981] pinctrl-single 1b00c600.pinmux: 32 pins, size 4
[    0.492881] pinctrl-single 1b00cc00.pinmux: 32 pins, size 4
[    0.503373] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.512360] printk: legacy console [ttyS0] disabled
[    0.519429] 18002000.uart: ttyS0 at MMIO 0x18002000 (irq = 30, base_baud = 10937500) is a 16550A
[    0.529223] printk: legacy console [ttyS0] enabled
[    0.529223] printk: legacy console [ttyS0] enabled
[    0.539953] printk: legacy bootconsole [early0] disabled
[    0.539953] printk: legacy bootconsole [early0] disabled
[    0.552019] printk: legacy bootconsole [ns16550a0] disabled
[    0.552019] printk: legacy bootconsole [ns16550a0] disabled
[    0.600075] brd: module loaded
[    0.608545] 6 fixed-partitions partitions found on MTD device spi0.0
[    0.615961] Creating 6 MTD partitions on "spi0.0":
[    0.621450] 0x000000000000-0x0000000e0000 : "u-boot"
[    0.628806] 0x0000000e0000-0x0000000f0000 : "u-boot-env"
[    0.637132] 0x0000000f0000-0x000000100000 : "sysinfo"
[    0.644864] 0x000000100000-0x000000200000 : "jffs2_cfg"
[    0.651836] 0x000000200000-0x000000300000 : "jffs2_log"
[    0.659783] 0x000000300000-0x000002000000 : "firmware"
[    0.668300] 2 uimage-fw partitions found on MTD device firmware
[    0.674925] Creating 2 MTD partitions on "firmware":
[    0.680579] 0x000000000000-0x0000002e0000 : "kernel"
[    0.688607] 0x0000002e0000-0x000001d00000 : "rootfs"
[    0.696991] mtd: setting mtd7 (rootfs) as root device
[    0.702813] 1 squashfs-split partitions found on MTD device rootfs
[    0.709784] 0x000000580000-0x000001d00000 : "rootfs_data"
[    0.765046] skip polling setup for unknown PHY 001ccaf3 on port 0
[    0.772287] skip polling setup for unknown PHY 001ccaf3 on port 8
[    0.779424] skip polling setup for unknown PHY 001ccaf3 on port 16
[    0.786540] skip polling setup for unknown PHY 001ccaf3 on port 20
[    0.794202] skip polling setup for unknown PHY 001ccaf3 on port 24
[    0.801439] skip polling setup for unknown PHY 001ccaf3 on port 25
[    0.808713] skip polling setup for unknown PHY 001ccaf3 on port 26
[    0.815800] skip polling setup for unknown PHY 001ccaf3 on port 27
[    0.870819] realtek-otto-serdes-mdio 1b000000.switchcore:mdio-serdes: Realtek SerDes mdio bus initialized, 12 SerDes, 64 pages, 32 registers
[    0.885604] realtek-otto-pcs 1b000000.switchcore:pcs: Realtek PCS driver initialized
[    0.895102] Probing RTL838X eth device pdev: 818e3000, dev: 818e3010
[    0.904343] Using MAC 00:e0:4c:00:00:00
[    0.910282] i2c_dev: i2c /dev entries driver
[    0.921541] NET: Registered PF_INET6 protocol family
[    0.932470] Segment Routing with IPv6
[    0.936741] In-situ OAM (IOAM) with IPv6
[    0.941621] NET: Registered PF_PACKET protocol family
[    0.948210] 8021q: 802.1Q VLAN Support v1.8
[    1.012288] rtldsa_93xx_setup called
[    1.016366] In rtldsa_vlan_setup
[    1.020151] rtl83xx-switch switch@1b000000: MC_PMASK_ALL_PORTS: 000000001fffffff
[    2.037544] rtldsa_enable_phy_polling:          f110101
[    2.043727] rtl83xx-switch switch@1b000000: led_set0 has 2 LEDs configured
[    2.051620] rtl83xx-switch switch@1b000000: configuring for fixed/internal link mode
[    2.060601] Realtek RTL8261N realtek-mdio:00: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:0
[    2.073030] rtl83xx-switch switch@1b000000 lan1 (uninitialized): PHY [realtek-mdio:00] driver [Realtek RTL8261N] (irq=POLL)
[    2.088212] Realtek RTL8261N realtek-mdio:08: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:8
[    2.100737] rtl83xx-switch switch@1b000000 lan2 (uninitialized): PHY [realtek-mdio:08] driver [Realtek RTL8261N] (irq=POLL)
[    2.115496] Realtek RTL8261N realtek-mdio:10: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:16
[    2.128108] rtl83xx-switch switch@1b000000 lan3 (uninitialized): PHY [realtek-mdio:10] driver [Realtek RTL8261N] (irq=POLL)
[    2.142432] Realtek RTL8261N realtek-mdio:14: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:20
[    2.155047] rtl83xx-switch switch@1b000000 lan4 (uninitialized): PHY [realtek-mdio:14] driver [Realtek RTL8261N] (irq=POLL)
[    2.169682] Realtek RTL8261N realtek-mdio:18: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:24
[    2.182350] rtl83xx-switch switch@1b000000 lan5 (uninitialized): PHY [realtek-mdio:18] driver [Realtek RTL8261N] (irq=POLL)
[    2.196433] Realtek RTL8261N realtek-mdio:19: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:25
[    2.209091] rtl83xx-switch switch@1b000000 lan6 (uninitialized): PHY [realtek-mdio:19] driver [Realtek RTL8261N] (irq=POLL)
[    2.223274] Realtek RTL8261N realtek-mdio:1a: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:26
[    2.235964] rtl83xx-switch switch@1b000000 lan7 (uninitialized): PHY [realtek-mdio:1a] driver [Realtek RTL8261N] (irq=POLL)
[    2.250170] Realtek RTL8261N realtek-mdio:1b: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:27
[    2.262833] rtl83xx-switch switch@1b000000 lan8 (uninitialized): PHY [realtek-mdio:1b] driver [Realtek RTL8261N] (irq=POLL)
[    2.277232] rtl838x-eth 1b000000.switchcore:ethernet eth0: entered promiscuous mode
[    2.286037] DSA: tree 0 setup
[    2.289524] LINK state irq: 23
[    2.293137] rtl930x_dbgfs_init called
[    2.297314] rtl83xx-switch switch@1b000000: Link is Up - 10Gbps/Full - flow control off
[    2.307841] clk: Disabling unused clocks
[    2.321762] VFS: Mounted root (squashfs filesystem) readonly on device 31:7.
[    2.335555] Freeing unused kernel image (initmem) memory: 1272K
[    2.342287] This architecture does not have kernel memory protection.
[    2.349589] Run /sbin/init as init process
[    2.354169]   with arguments:
[    2.357573]     /sbin/init
[    2.360603]   with environment:
[    2.364087]     HOME=/
[    2.366702]     TERM=linux
[    2.952517] init: Console is alive
[    2.956868] init: - watchdog -

Sorry for my English! I use Google Translate.

Are you saying that OpenWRT works fine when using initramfs, but when you write it to onboard flash and let uboot boot from that, you don't get the PHYs working?

Can you provide the boot logs from the initramfs and the squashfs boots (one of each)?

I don't recall seeing this before, so I'd say it's not ideal. But is this an initramfs that has worked? since later on the PHYs do seem to get picked up.

[    0.765046] skip polling setup for unknown PHY 001ccaf3 on port 0
[    0.772287] skip polling setup for unknown PHY 001ccaf3 on port 8
[    0.779424] skip polling setup for unknown PHY 001ccaf3 on port 16
[    0.786540] skip polling setup for unknown PHY 001ccaf3 on port 20
[    0.794202] skip polling setup for unknown PHY 001ccaf3 on port 24
[    0.801439] skip polling setup for unknown PHY 001ccaf3 on port 25
[    0.808713] skip polling setup for unknown PHY 001ccaf3 on port 26
[    0.815800] skip polling setup for unknown PHY 001ccaf3 on port 27

Booting from RAM implicitly implies that the bootloader has initialized the hardware for you (rtk network on) - you're likely missing these configuration steps (to be done correctly, by the kernel via DTS) when booting from flash.

--
you can probably work around the problem by modifying the bootcmd to include rtk network one, but that is not the correct approach.

1 Like

This is sysupgrade boot - booting from a flash drive

U-Boot 2011.12.(3.6.11.55242) (Dec 22 2023 - 09:16:14)

Board: RTL9300 CPU:800MHz LX:175MHz DDR:600MHz
DRAM:  512 MB
SPI-F: WINBOND/EF4019/MMIO32-2/ModeC 1x32 MB (plr_flash_info @ 83f8a03c)
Loading 65536B env. variables from offset 0xe0000
Net:   Net Initialization Skipped
No ethernet found.
read uid
Hit Esc key to stop autoboot:  0
## Booting kernel from Legacy Image at 84f00010 ...
   Image Name:   MIPS OpenWrt Linux-6.12.69
   Created:      2026-02-12  22:55:29 UTC
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    3009013 Bytes = 2.9 MB
   Load Address: 80100000
   Entry Point:  80100000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK

Starting kernel ...

[    0.000000] Linux version 6.12.69 (builder@debian) (mips-openwrt-linux-musl-gcc (OpenWrt GCC 14.3.0 r33046-d0c82dbb17) 14.3.0, GNU ld (GNU Binutils) 2.44) #0 SMP Thu Feb 12 22:55:29 2026
[    0.000000] Realtek RTL9303 rev B (6487) SoC with 512 MB
[    0.000000] highmem kernel on RTL930x with > 256 MB RAM, adapt SoC memory mapping
[    0.000000] printk: legacy bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 00019555 (MIPS 34Kc)
[    0.000000] MIPS: machine is Vimin VM-S100-0800T
[    0.000000] earlycon: ns16550a0 at MMIO 0x18002000 (options '115200n8')
[    0.000000] printk: legacy bootconsole [ns16550a0] enabled
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Using appended Device Tree.
[    0.000000] OF: reserved mem: Reserved memory: No reserved-memory node in the DT
[    0.000000] Detected 1 available secondary CPU(s)
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x000000001fffffff]
[    0.000000]   HighMem  [mem 0x0000000020000000-0x000000002fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000]   node   0: [mem 0x0000000020000000-0x000000002fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000002fffffff]
[    0.000000] On node 0, zone HighMem: 65536 pages in unavailable ranges
[    0.000000] percpu: Embedded 12 pages/cpu s18128 r8192 d22832 u49152
[    0.000000] pcpu-alloc: s18128 r8192 d22832 u49152 alloc=12*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1
[    0.000000] Kernel command line: earlycon
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes, linear)
[    0.000000] Writing ErrCtl register=00061f1f
[    0.000000] Readback ErrCtl register=00061f1f
[    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] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    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: 256
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] Failed to get CPU clock: -2
[    0.000000] CPU frequency from device tree: 800MHz
[    0.000000] clocksource: realtek_otto_timer: mask: 0xfffffff max_cycles: 0xfffffff, max_idle_ns: 38225208801 ns
[    0.000003] sched_clock: 28 bits at 3125kHz, resolution 320ns, wraps every 42949672800ns
[    0.009038] Calibrating delay loop... 531.66 BogoMIPS (lpj=2658304)
[    0.065728] pid_max: default: 32768 minimum: 301
[    0.082123] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.090181] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.112501] rcu: Hierarchical SRCU implementation.
[    0.117749] rcu:     Max phase no-delay instances is 1000.
[    0.125562] smp: Bringing up secondary CPUs ...
[    0.132538] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.132596] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.132691] CPU1 revision is: 00019555 (MIPS 34Kc)
[    0.208923] Counter synchronization [CPU#0 -> CPU#1]: passed
[    0.236266] smp: Brought up 1 node, 2 CPUs
[    0.242308] Memory: 504444K/524288K available (7508K kernel code, 718K rwdata, 1696K rodata, 1272K init, 243K bss, 18724K reserved, 0K cma-reserved, 262144K highmem)
[    0.264722] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.275606] futex hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.289826] pinctrl core: initialized pinctrl subsystem
[    0.298986] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.306246] thermal_sys: Registered thermal governor 'step_wise'
[    0.327497] clocksource: Switched to clocksource realtek_otto_timer
[    0.352887] NET: Registered PF_INET protocol family
[    0.358681] IP idents hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.367885] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.377048] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.385582] TCP established hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.394090] TCP bind hash table entries: 2048 (order: 3, 32768 bytes, linear)
[    0.402105] TCP: Hash tables configured (established 2048 bind 2048)
[    0.410021] MPTCP token hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.418501] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.425689] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.434431] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.443896] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[    0.454278] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.460870] jffs2: version 2.2 (NAND) (SUMMARY) (ZLIB) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.479200] pinctrl-single 1b000200.pinmux: 32 pins, size 4
[    0.485834] pinctrl-single 1b00c600.pinmux: 32 pins, size 4
[    0.492798] pinctrl-single 1b00cc00.pinmux: 32 pins, size 4
[    0.501121] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.511834] printk: legacy console [ttyS0] disabled
[    0.518836] 18002000.uart: ttyS0 at MMIO 0x18002000 (irq = 30, base_baud = 10937500) is a 16550A
[    0.528791] printk: legacy console [ttyS0] enabled
[    0.528791] printk: legacy console [ttyS0] enabled
[    0.539621] printk: legacy bootconsole [early0] disabled
[    0.539621] printk: legacy bootconsole [early0] disabled
[    0.551659] printk: legacy bootconsole [ns16550a0] disabled
[    0.551659] printk: legacy bootconsole [ns16550a0] disabled
[    0.601419] brd: module loaded
[    0.610461] 6 fixed-partitions partitions found on MTD device spi0.0
[    0.618472] Creating 6 MTD partitions on "spi0.0":
[    0.623894] 0x000000000000-0x0000000e0000 : "u-boot"
[    0.630627] 0x0000000e0000-0x0000000f0000 : "u-boot-env"
[    0.637936] 0x0000000f0000-0x000000100000 : "sysinfo"
[    0.645857] 0x000000100000-0x000000200000 : "jffs2_cfg"
[    0.653936] 0x000000200000-0x000000300000 : "jffs2_log"
[    0.662128] 0x000000300000-0x000002000000 : "firmware"
[    0.670582] 2 uimage-fw partitions found on MTD device firmware
[    0.677208] Creating 2 MTD partitions on "firmware":
[    0.682850] 0x000000000000-0x0000002e0000 : "kernel"
[    0.689483] 0x0000002e0000-0x000001d00000 : "rootfs"
[    0.698005] mtd: setting mtd7 (rootfs) as root device
[    0.703774] 1 squashfs-split partitions found on MTD device rootfs
[    0.710794] 0x000000580000-0x000001d00000 : "rootfs_data"
[    0.764327] skip polling setup for unknown PHY 001ccaf3 on port 0
[    0.771444] skip polling setup for unknown PHY 001ccaf3 on port 8
[    0.778769] skip polling setup for unknown PHY 001ccaf3 on port 16
[    0.785854] skip polling setup for unknown PHY 001ccaf3 on port 20
[    0.793069] skip polling setup for unknown PHY 001ccaf3 on port 24
[    0.800573] skip polling setup for unknown PHY 001ccaf3 on port 25
[    0.807794] skip polling setup for unknown PHY 001ccaf3 on port 26
[    0.814905] skip polling setup for unknown PHY 001ccaf3 on port 27
[    0.869764] realtek-otto-serdes-mdio 1b000000.switchcore:mdio-serdes: Realtek SerDes mdio bus initialized, 12 SerDes, 64 pages, 32 registers
[    0.884655] realtek-otto-pcs 1b000000.switchcore:pcs: Realtek PCS driver initialized
[    0.894101] Probing RTL838X eth device pdev: 818e3400, dev: 818e3410
[    0.903552] Using MAC 00:e0:4c:00:00:00
[    0.909782] i2c_dev: i2c /dev entries driver
[    0.920412] NET: Registered PF_INET6 protocol family
[    0.931708] Segment Routing with IPv6
[    0.935975] In-situ OAM (IOAM) with IPv6
[    0.940601] NET: Registered PF_PACKET protocol family
[    0.946883] 8021q: 802.1Q VLAN Support v1.8
[    1.011958] rtldsa_93xx_setup called
[    1.016036] In rtldsa_vlan_setup
[    1.019859] rtl83xx-switch switch@1b000000: MC_PMASK_ALL_PORTS: 000000001fffffff
[    2.037506] rtldsa_enable_phy_polling:          f110101
[    2.043694] rtl83xx-switch switch@1b000000: led_set0 has 2 LEDs configured
[    2.051599] rtl83xx-switch switch@1b000000: configuring for fixed/internal link mode
[    2.060520] Realtek RTL8261N realtek-mdio:00: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:0
[    2.072940] rtl83xx-switch switch@1b000000 lan1 (uninitialized): PHY [realtek-mdio:00] driver [Realtek RTL8261N] (irq=POLL)
[    2.088013] Realtek RTL8261N realtek-mdio:08: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:8
[    2.100535] rtl83xx-switch switch@1b000000 lan2 (uninitialized): PHY [realtek-mdio:08] driver [Realtek RTL8261N] (irq=POLL)
[    2.115333] Realtek RTL8261N realtek-mdio:10: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:16
[    2.127934] rtl83xx-switch switch@1b000000 lan3 (uninitialized): PHY [realtek-mdio:10] driver [Realtek RTL8261N] (irq=POLL)
[    2.142345] Realtek RTL8261N realtek-mdio:14: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:20
[    2.155032] rtl83xx-switch switch@1b000000 lan4 (uninitialized): PHY [realtek-mdio:14] driver [Realtek RTL8261N] (irq=POLL)
[    2.169437] Realtek RTL8261N realtek-mdio:18: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:24
[    2.182041] rtl83xx-switch switch@1b000000 lan5 (uninitialized): PHY [realtek-mdio:18] driver [Realtek RTL8261N] (irq=POLL)
[    2.196296] Realtek RTL8261N realtek-mdio:19: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:25
[    2.208885] rtl83xx-switch switch@1b000000 lan6 (uninitialized): PHY [realtek-mdio:19] driver [Realtek RTL8261N] (irq=POLL)
[    2.223127] Realtek RTL8261N realtek-mdio:1a: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:26
[    2.235839] rtl83xx-switch switch@1b000000 lan7 (uninitialized): PHY [realtek-mdio:1a] driver [Realtek RTL8261N] (irq=POLL)
[    2.249988] Realtek RTL8261N realtek-mdio:1b: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:27
[    2.262714] rtl83xx-switch switch@1b000000 lan8 (uninitialized): PHY [realtek-mdio:1b] driver [Realtek RTL8261N] (irq=POLL)
[    2.277020] rtl838x-eth 1b000000.switchcore:ethernet eth0: entered promiscuous mode
[    2.285846] DSA: tree 0 setup
[    2.289347] LINK state irq: 23
[    2.293002] rtl930x_dbgfs_init called
[    2.297184] rtl83xx-switch switch@1b000000: Link is Up - 10Gbps/Full - flow control off
[    2.298609] clk: Disabling unused clocks
[    2.320213] VFS: Mounted root (squashfs filesystem) readonly on device 31:7.
[    2.333961] Freeing unused kernel image (initmem) memory: 1272K
[    2.340671] This architecture does not have kernel memory protection.
[    2.347996] Run /sbin/init as init process
[    2.352573]   with arguments:
[    2.355864]     /sbin/init
[    2.358960]   with environment:
[    2.362474]     HOME=/
[    2.365097]     TERM=linux
[    2.950912] init: Console is alive
[    2.955258] init: - watchdog -
[    3.311285] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.374062] gpio_button_hotplug: loading out-of-tree module taints kernel.
[    3.384991] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    3.402693] init: - preinit -
] phy_id: 0x1CCAF3 PHYAD:26
[    2.235839] rtl83xx-switch switch@1b000000 lan7 (uninitialized): PHY [realtek-mdio:1a] driver [Realtek RTL8261N] (irq=POLL)
[    2.249988] Realtek RTL8261N realtek-mdio:1b: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:27
[    2.262714] rtl83xx-switch switch@1b000000 lan8 (uninitialized): PHY [realtek-mdio:1b] driver [Realtek RTL8261N] (irq=POLL)
[    2.277020] rtl838x-eth 1b000000.switchcore:ethernet eth0: entered promiscuous mode
[    2.285846] DSA: tree 0 setup
[    2.289347] LINK state irq: 23
[    2.293002] rtl930x_dbgfs_init called
[    2.297184] rtl83xx-switch switch@1b000000: Link is Up - 10Gbps/Full - flow control off
[    2.298609] clk: Disabling unused clocks
[    2.320213] VFS: Mounted root (squashfs filesystem) readonly on device 31:7.
[    2.333961] Freeing unused kernel image (initmem) memory: 1272K
[    2.340671] This architecture does not have kernel memory protection.
[    2.347996] Run /sbin/init as init process
[    2.352573]   with arguments:
[    2.355864]     /sbin/init
[    2.358960]   with environment:
[    2.362474]     HOME=/
[    2.365097]     TERM=linux
[    2.950912] init: Console is alive
[    2.955258] init: - watchdog -
[    3.311285] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.374062] gpio_button_hotplug: loading out-of-tree module taints kernel.
[    3.384991] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    3.402693] init: - preinit -
[    2.196296] Realtek RTL8261N realtek-mdio:19: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:25
[    2.208885] rtl83xx-switch switch@1b000000 lan6 (uninitialized): PHY [realtek-mdio:19] driver [Realtek RTL8261N] (irq=POLL)
[    2.223127] Realtek RTL8261N realtek-mdio:1a: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:26
[    2.235839] rtl83xx-switch switch@1b000000 lan7 (uninitialized): PHY [realtek-mdio:1a] driver [Realtek RTL8261N] (irq=POLL)
[    2.249988] Realtek RTL8261N realtek-mdio:1b: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:27
[    2.262714] rtl83xx-switch switch@1b000000 lan8 (uninitialized): PHY [realtek-mdio:1b] driver [Realtek RTL8261N] (irq=POLL)
[    2.277020] rtl838x-eth 1b000000.switchcore:ethernet eth0: entered promiscuous mode
[    2.285846] DSA: tree 0 setup
[    2.289347] LINK state irq: 23
[    2.293002] rtl930x_dbgfs_init called
[    2.297184] rtl83xx-switch switch@1b000000: Link is Up - 10Gbps/Full - flow control off
[    2.298609] clk: Disabling unused clocks
[    2.320213] VFS: Mounted root (squashfs filesystem) readonly on device 31:7.
[    2.333961] Freeing unused kernel image (initmem) memory: 1272K
[    2.340671] This architecture does not have kernel memory protection.
[    2.347996] Run /sbin/init as init process
[    2.352573]   with arguments:
[    2.355864]     /sbin/init
[    2.358960]   with environment:
[    2.362474]     HOME=/
[    2.365097]     TERM=linux
[    2.950912] init: Console is alive
[    2.955258] init: - watchdog -
[    3.311285] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.374062] gpio_button_hotplug: loading out-of-tree module taints kernel.
[    3.384991] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    3.402693] init: - preinit -
[    2.196296] Realtek RTL8261N realtek-mdio:19: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:25
[    2.208885] rtl83xx-switch switch@1b000000 lan6 (uninitialized): PHY [realtek-mdio:19] driver [Realtek RTL8261N] (irq=POLL)
[    2.223127] Realtek RTL8261N realtek-mdio:1a: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:26
[    2.235839] rtl83xx-switch switch@1b000000 lan7 (uninitialized): PHY [realtek-mdio:1a] driver [Realtek RTL8261N] (irq=POLL)
[    2.249988] Realtek RTL8261N realtek-mdio:1b: rtkphy_config_init:80 [RTL8261N/RTL8264/RTL826XB] phy_id: 0x1CCAF3 PHYAD:27
[    2.262714] rtl83xx-switch switch@1b000000 lan8 (uninitialized): PHY [realtek-mdio:1b] driver [Realtek RTL8261N] (irq=POLL)
[    2.277020] rtl838x-eth 1b000000.switchcore:ethernet eth0: entered promiscuous mode
[    2.285846] DSA: tree 0 setup
[    2.289347] LINK state irq: 23
[    2.293002] rtl930x_dbgfs_init called
[    2.297184] rtl83xx-switch switch@1b000000: Link is Up - 10Gbps/Full - flow control off
[    2.298609] clk: Disabling unused clocks
[    2.320213] VFS: Mounted root (squashfs filesystem) readonly on device 31:7.
[    2.333961] Freeing unused kernel image (initmem) memory: 1272K
[    2.340671] This architecture does not have kernel memory protection.
[    2.347996] Run /sbin/init as init process
[    2.352573]   with arguments:
[    2.355864]     /sbin/init
[    2.358960]   with environment:
[    2.362474]     HOME=/
[    2.365097]     TERM=linux
[    2.950912] init: Console is alive
[    2.955258] init: - watchdog -
[    3.311285] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.374062] gpio_button_hotplug: loading out-of-tree module taints kernel.
[    3.384991] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    3.402693] init: - preinit -
[    8.427544] random: crng init done
Cannot parse config file '/etc/fw_env.config': No such file or directory
Failed to find NVMEM device
[    9.240069] RESETTING CPU_PORT 28
[    9.443372] rtl838x-eth 1b000000.switchcore:ethernet eth0: configuring for fixed/internal link mode
[    9.453485] In rteth_mac_config, mode 1
[    9.458874] rtl83xx-switch switch@1b000000 lan1: configuring for phy/usxgmii link mode
[    9.467802] realtek-otto-pcs 1b000000.switchcore:pcs: configure SerDes 2 for mode usxgmii
[    9.477124] 8021q: adding VLAN 0 to HW filter on device lan1
[    9.483803] rtl838x-eth 1b000000.switchcore:ethernet eth0: Link is Up - 1Gbps/Full - flow control off
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.517771] ------------[ cut here ]------------
[   10.522940] WARNING: CPU: 0 PID: 11 at drivers/net/mdio/mdio-realtek-otto.c:216 rtmdio_run_cmd.isra.0+0x1a0/0x1a8
[   10.534449] mdio bus access failed
[   10.538335] Modules linked in: gpio_button_hotplug(O) crc32c_generic
[    2.297184] rtl83xx-switch switch@1b000000: Link is Up - 10Gbps/Full - flow control off
[    2.298609] clk: Disabling unused clocks
[    2.320213] VFS: Mounted root (squashfs filesystem) readonly on device 31:7.
[    2.333961] Freeing unused kernel image (initmem) memory: 1272K
[    2.340671] This architecture does not have kernel memory protection.
[    2.347996] Run /sbin/init as init process
[    2.352573]   with arguments:
[    2.355864]     /sbin/init
[    2.358960]   with environment:
[    2.362474]     HOME=/
[    2.365097]     TERM=linux
[    2.950912] init: Console is alive
[    2.955258] init: - watchdog -
[    3.311285] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.374062] gpio_button_hotplug: loading out-of-tree module taints kernel.
[    3.384991] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    3.402693] init: - preinit -
[    8.427544] random: crng init done
Cannot parse config file '/etc/fw_env.config': No such file or directory
Failed to find NVMEM device
[    9.240069] RESETTING CPU_PORT 28
[    9.443372] rtl838x-eth 1b000000.switchcore:ethernet eth0: configuring for fixed/internal link mode
[    9.453485] In rteth_mac_config, mode 1
[    9.458874] rtl83xx-switch switch@1b000000 lan1: configuring for phy/usxgmii link mode
[    9.467802] realtek-otto-pcs 1b000000.switchcore:pcs: configure SerDes 2 for mode usxgmii
[    9.477124] 8021q: adding VLAN 0 to HW filter on device lan1
[    9.483803] rtl838x-eth 1b000000.switchcore:ethernet eth0: Link is Up - 1Gbps/Full - flow control off
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.517771] ------------[ cut here ]------------
[   10.522940] WARNING: CPU: 0 PID: 11 at drivers/net/mdio/mdio-realtek-otto.c:216 rtmdio_run_cmd.isra.0+0x1a0/0x1a8
[   10.534449] mdio bus access failed
[   10.538335] Modules linked in: gpio_button_hotplug(O) crc32c_generic
[   10.545469] CPU: 0 UID: 0 PID: 11 Comm: kworker/0:1 Tainted: G           O       6.12.69 #0
[   10.545503] Tainted: [O]=OOT_MODULE
[   10.545508] Hardware name: Vimin VM-S100-0800T
[   10.545517] Workqueue: events_power_efficient phy_state_machine
[   10.545562] Stack : 80a10000 81895b7c 00000000 8014cf78 81895bec 81895bcb 00000003 ffffffff
[   10.545603]         8054ba18 8180a300 81809400 6576656e 74735f70 00000001 81895b98 81841320
[   10.545641]         00000000 00000000 8092657c 818959d8 00000000 ffffefff 00000001 000000b1
[   10.545678]         000000b3 8189599c 000000b3 00000864 00000001 00000000 8092657c 81895ca8
[   10.545714]         00000000 8056bf18 80a17178 812f0420 00000000 80a1e840 00000000 80bf0000
[   10.545752]         ...
[   10.545761] Call Trace:
[   10.545765] [<80106504>] show_stack+0x28/0xf0
[   10.545805] [<8081f2fc>] dump_stack_lvl+0x70/0xb0
[   10.545822] [<8012b524>] __warn+0x9c/0x114
[   10.545859] [<8012b71c>] warn_slowpath_fmt+0x180/0x188
[   10.545879] [<8056bf18>] rtmdio_run_cmd.isra.0+0x1a0/0x1a8
[   10.545896] [<8056c650>] rtmdio_930x_read_mmd_phy+0x6c/0xd0
[   10.545911] [<8056b864>] rtmdio_read_c45+0x34/0x58
[   10.545925] [<80555cdc>] __mdiobus_c45_read+0x34/0xfc
[   10.545954] [<8054ebc4>] __phy_read_mmd+0x58/0x6c
[   10.545984] [<8054ecb4>] phy_read_mmd+0x3c/0x68
[   10.546002] [<8054be38>] genphy_c45_read_link+0xd4/0xf0
[   10.546021] [<8056a084>] rtkphy_c45_read_status+0x30/0x11c
[   10.546068] [<8054994c>] phy_check_link_status+0x48/0x110
[   10.546087]
[   10.546092] ---[ end trace 0000000000000000 ]---
[   10.702536] ------------[ cut here ]------------
[   10.707747] WARNING: CPU: 0 PID: 11 at drivers/net/phy/phy.c:1366 _phy_state_machine+0xcc/0x358
[   10.717526] phy_check_link_status+0x0/0x110: returned: -5
[   10.723563] Modules linked in: gpio_button_hotplug(O) crc32c_generic
[   10.730731] CPU: 0 UID: 0 PID: 11 Comm: kworker/0:1 Tainted: G        W  O       6.12.69 #0
[   10.730768] Tainted: [W]=WARN, [O]=OOT_MODULE
[   10.730773] Hardware name: Vimin VM-S100-0800T
[   10.730783] Workqueue: events_power_efficient phy_state_
[   10.545469] CPU: 0 UID: 0 PID: 11 Comm: kworker/0:1 Tainted: G           O       6.12.69 #0
[   10.545503] Tainted: [O]=OOT_MODULE
[   10.545508] Hardware name: Vimin VM-S100-0800T
[   10.545517] Workqueue: events_power_efficient phy_state_machine
[   10.545562] Stack : 80a10000 81895b7c 00000000 8014cf78 81895bec 81895bcb 00000003 ffffffff
[   10.545603]         8054ba18 8180a300 81809400 6576656e 74735f70 00000001 81895b98 81841320
[   10.545641]         00000000 00000000 8092657c 818959d8 00000000 ffffefff 00000001 000000b1
[   10.545678]         000000b3 8189599c 000000b3 00000864 00000001 00000000 8092657c 81895ca8
[   10.545714]         00000000 8056bf18 80a17178 812f0420 00000000 80a1e840 00000000 80bf0000
[   10.545752]         ...
[   10.545761] Call Trace:
[   10.545765] [<80106504>] show_stack+0x28/0xf0
[   10.545805] [<8081f2fc>] dump_stack_lvl+0x70/0xb0
[   10.545822] [<8012b524>] __warn+0x9c/0x114
[   10.545859] [<8012b71c>] warn_slowpath_fmt+0x180/0x188
[   10.545879] [<8056bf18>] rtmdio_run_cmd.isra.0+0x1a0/0x1a8
[   10.545896] [<8056c650>] rtmdio_930x_read_mmd_phy+0x6c/0xd0
[   10.545911] [<8056b864>] rtmdio_read_c45+0x34/0x58
[   10.545925] [<80555cdc>] __mdiobus_c45_read+0x34/0xfc
[   10.545954] [<8054ebc4>] __phy_read_mmd+0x58/0x6c
[   10.545984] [<8054ecb4>] phy_read_mmd+0x3c/0x68
[   10.546002] [<8054be38>] genphy_c45_read_link+0xd4/0xf0
[   10.546021] [<8056a084>] rtkphy_c45_read_status+0x30/0x11c
[   10.546068] [<8054994c>] phy_check_link_status+0x48/0x110
[   10.546087]
[   10.546092] ---[ end trace 0000000000000000 ]---
[   10.702536] ------------[ cut here ]------------
[   10.707747] WARNING: CPU: 0 PID: 11 at drivers/net/phy/phy.c:1366 _phy_state_machine+0xcc/0x358
[   10.717526] phy_check_link_status+0x0/0x110: returned: -5
[   10.723563] Modules linked in: gpio_button_hotplug(O) crc32c_generic
[   10.730731] CPU: 0 UID: 0 PID: 11 Comm: kworker/0:1 Tainted: G        W  O       6.12.69 #0
[   10.730768] Tainted: [W]=WARN, [O]=OOT_MODULE
[   10.730773] Hardware name: Vimin VM-S100-0800T
[   10.730783] Workqueue: events_power_efficient phy_state_machine
[   10.730816] Stack : 80a10000 81895ccc 00000000 8014cf78 81895d3c 81895d1b 00000003 ffffffff
[   10.730857]         8054ba18 8180a300 81809400 6576656e 74735f70 00000001 81895ce8 81841320
[   10.730895]         00000000 00000000 8092657c 81895b28 00000000 ffffefff 00000001 000000cf
[   10.730932]         000000d1 81895aec 000000d1 000009cc 00000001 00000000 8092657c 81895df8
[   10.730969]         00000000 8054b03c 80a17178 812f0420 00000000 80a1e840 00000000 80bf0000
[   10.731006]         ...
[   10.731015] Call Trace:
[   10.731019] [<80106504>] show_stack+0x28/0xf0
[   10.731059] [<8081f2fc>] dump_stack_lvl+0x70/0xb0
[   10.731075] [<8012b524>] __warn+0x9c/0x114
[   10.731110] [<8012b71c>] warn_slowpath_fmt+0x180/0x188
[   10.731130] [<8054b03c>] _phy_state_machine+0xcc/0x358
[   10.731152] [<8054ba44>] phy_state_machine+0x2c/0x68
[   10.731170] [<80149264>] process_one_work+0x1c0/0x3e0
[   10.731204] [<8014a09c>] worker_thread+0x318/0x488
[   10.731225] [<80151974>] kthread+0xfc/0x104
[   10.731251] [<80101498>] ret_from_kernel_thread+0x14/0x1c
[   10.731270]
[   10.731275] ---[ end trace 0000000000000000 ]---
[   10.545984] [<8054ecb4>] phy_read_mmd+0x3c/0x68
[   10.546002] [<8054be38>] genphy_c45_read_link+0xd4/0xf0
[   10.546021] [<8056a084>] rtkphy_c45_read_status+0x30/0x11c
[   10.546068] [<8054994c>] phy_check_link_status+0x48/0x110
[   10.546087]
[   10.546092] ---[ end trace 0000000000000000 ]---
[   10.702536] ------------[ cut here ]------------
[   10.707747] WARNING: CPU: 0 PID: 11 at drivers/net/phy/phy.c:1366 _phy_state_machine+0xcc/0x358
[   10.717526] phy_check_link_status+0x0/0x110: returned: -5
[   10.723563] Modules linked in: gpio_button_hotplug(O) crc32c_generic
[   10.730731] CPU: 0 UID: 0 PID: 11 Comm: kworker/0:1 Tainted: G        W  O       6.12.69 #0
[   10.730768] Tainted: [W]=WARN, [O]=OOT_MODULE
[   10.730773] Hardware name: Vimin VM-S100-0800T
[   10.730783] Workqueue: events_power_efficient phy_state_machine
[   10.730816] Stack : 80a10000 81895ccc 00000000 8014cf78 81895d3c 81895d1b 00000003 ffffffff
[   10.730857]         8054ba18 8180a300 81809400 6576656e 74735f70 00000001 81895ce8 81841320
[   10.730895]         00000000 00000000 8092657c 81895b28 00000000 ffffefff 00000001 000000cf
[   10.730932]         000000d1 81895aec 000000d1 000009cc 00000001 00000000 8092657c 81895df8
[   10.730969]         00000000 8054b03c 80a17178 812f0420 00000000 80a1e840 00000000 80bf0000
[   10.731006]         ...
[   10.731015] Call Trace:
[   10.731019] [<80106504>] show_stack+0x28/0xf0
[   10.731059] [<8081f2fc>] dump_stack_lvl+0x70/0xb0
[   10.731075] [<8012b524>] __warn+0x9c/0x114
[   10.731110] [<8012b71c>] warn_slowpath_fmt+0x180/0x188
[   10.731130] [<8054b03c>] _phy_state_machine+0xcc/0x358
[   10.731152] [<8054ba44>] phy_state_machine+0x2c/0x68
[   10.731170] [<80149264>] process_one_work+0x1c0/0x3e0
[   10.731204] [<8014a09c>] worker_thread+0x318/0x488
[   10.731225] [<80151974>] kthread+0xfc/0x104
[   10.731251] [<80101498>] ret_from_kernel_thread+0x14/0x1c
[   10.731270]
[   10.731275] ---[ end trace 0000000000000000 ]---
[   13.838252] jffs2: notice: (610) jffs2_build_xattr_subsystem: complete building xattr subsystem, 8 of xdatum (0 unchecked, 2 orphan) and 9 of xref (2 dead, 0 orphan) found.
[   13.858334] mount_root: switching to jffs2 overlay
[   13.869145] overlayfs: upper fs does not support tmpfile.
[   13.886926] urandom-seed: Seeding with /etc/urandom.seed
[   14.019013] procd: - early -
[   14.022639] procd: - watchdog -
[   14.695343] procd: - watchdog -
[   14.700178] procd: - ubus -
[   14.824674] procd: - init -
Please press Enter to activate this console.
[   15.853290] kmodloader: loading kernel modules from /etc/modules.d/*
[   16.040275] kmodloader: done loading kernel modules from /etc/modules.d/*
[   17.247737] urngd: v1.0.2 started.

Just for testing purposes:

  • interrupt u-boot as you would for an initramfs tftpboot
  • rtk network on
  • bootm (or whatever the normal, default bootcmd is)

If it now works, you know what's the problem (missing h/w initialization).

2 Likes

You keep mentioning flash drive.. but as far as I can see, the switch has no USB port.
So how are you connecting a flash drive to the switch?
Or are you swapping between two flash chips, one with OpenWRT written to it?

Please show the initramfs boot where you mentioned that all worked.

I'm not sure that upstream linux and hence OpenWRT knows about the RTL8261B 10GbE PHY that you've got. If it requires some patching prior to startup, it's expected that it wouldn't work (at least until OpenWRT knows how to patch it).

It seems that at least in some way it's working in an SFP module though. But they can also have additional PHY configuration onboard (using EEPROM/uC)

I found the reason! And forgive me – Google Translate!
The adjacent thread didn't cover all the details, or maybe I didn't read it thoroughly!But the first test with these parameters launched the ports correctly!
XikeStor SKS8300-8T
I'm going to do a complete rebuild now! With a normal DTS! My equipment is a copy of the XikeStor SKS8300-8T, but without the reset button or temperature sensor! The Chinese are cutting corners!
My switch is also a copy of the
Nicgiga S100 0800T - NICGIGA S100-0800T Review
YuanLey YS100-0800TP -YuanLey YS100-0800TP
The only difference from the XikeStor SKS8300-8T is the flash memory layout, most likely because I have 16MB.
There are many other differences, such as the lack of passwords and the like.
Here's what the XikeStor SKS8300-8T manual says, and I missed it:

Flash instruction using initramfs image:

 1. Prepare TFTP server & connect to serial port.
 2. Connect your computer to one of the RJ45 ports on SKS8300-8T
 3. Power on SKS8300-8T and interrupt autoboot with Shift + A.
 4. Use Shift + Q to drop from vendor CLI to U-Boot CLI.
 5. Set the boot command to enable network on boot.
       > setenv bootcmd 'mw.l 0x8401da94 0; rtk network on; boota'
 6. Set switch IP and TFTP server IP (optional, adjust to your setup).
       > setenv ipaddr <ip>
       > setenv serverip <ip>
 7. Download initramfs image from TFTP server.
       > tftpboot 0x83000000 <image name>
 8. Boot with the downloaded image.
       > bootm 0x83000000
 9. With rambooted OpenWrt, backup the stock firmware if needed.
10. Copy sysupgrade image to the device.
11. Perform sysupgrade with the sysupgrade image.
12. After reboot, you should have functional OpenWrt.

In OpenWrt, it is necessary to execute "rtk network on" to enable full
networking functionality. However, the internal U-Boot initialization
(which shares logic with "rtk network init" initializing MAC only and
configures the fan controller) sets a flag at memory address 0x8401da94.
Once this flag is set, any subsequent calls to "rtk network on" are
blocked. To bypass this, resetting 0x8401da94 to 0 by step 5, ensuring
that the network can be properly initialized later. This specific
address was confirmed in U-Boot 2011.12.(3.6.11.55242) (Jan 06 2025 -
14:39:46) by decompiling the function that references the "rtk_mac_init"
string.

That rtk network on isn't really how things 'should be'... it's just a workaround for now because Linux/OpenWRT doesn't have the right settings in the drivers to initialise everything correctly.

Ideally you could dump out the serdes registers using the sysfs when you get into standard OpenWRT (without rtk network on). And then the same with rtk network on.
ala Adding OpenWrt support for Zyxel XMG1930-30HP - #119 by hailfinger

The likes of @jonasj @plappermaul have been making pretty big strides in the Realtek serdes side of things, but there are still some gaps.

3 Likes

Good news! It works! Thanks a lot to the entire OpenWRT community for making this possible—turning a basically useless brick into a real switch. It would be nice to improve DTS and add official support, but I think it's probably the 16MB version; I don't think many people will want to switch to 32MB.

Can you please point us to a git tree with your changes? It would be nice to get them merged.
Thank you.

I didn't make a repository on github!I can make a repository if that helps.

2 Likes

Same issue with SKS8300-8X

I think if you did everything according to the instructions, it should work 100%
realtek: add support for XikeStor SKS8300-8X

Created
github

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.