Asus B550m-plus Tuf Gaming (Realtek RTL8125B) unavailable on OpenWRT 21.02

Hello friends!

I just built a small PC to be my new router and installed OpenWRT 21.02 snapshot on it (openwrt-21.02-snapshot-r15986-cc51d97200-x86-64-generic-ext4-combined.img).

It's a Ryzen 3 3100 on a Asus B550m-plus Tuf Gaming with a NVMe Husky Gaming 256GB + Intel I350-t4. Mobo has a Realtek RTL8125B 2,5Gbps NIC.

I have then 5 RJ45 ports, but only 4 is reported by ip and only 2 seem to be working.

ip reports 4 interfaces: eth0 to eth3.

I plugged my laptop with each port to identify them. Realtek port isn't recognized, but NIC LEDs are lit.

From left to right, Intel port1 and 2 also aren't recognized and there's no LED.

Port3 pops a message on terminal that eth1 was connected and is up and LEDs lit.

Port4 pops 3 messages that eth0 / br-lan are connected and I'm able to ping 192.168.1.1.

I connected my LAN to Intel port3 / eth1 and it received IP from DHCP.

Why are only these 2 working and only 4 being recognized? Is it driver issue?

Ok, Intel card is working. It's eth0 to eth3 from right to left. On LuCI I added eth2 and eth3 to br-lan and laptop received IP on all of them.

But Realtek isn't. I plugged on it and there's no IP. It's clear it's lacking driver, how should I install it?

LuCI also doesn't have Network > switch on menu, where I'm used to set VLANs to eth ports. /cgi-bin/luci/admin/network/vlan gives 404 Not Found. Do I need to install something to have VLAN support?

try kmod-r8169 + r8169-firmware

This is however discouraging https://linuxreviews.org/Realtek_RTL_8125

1 Like

tnx! They are installed.

So, kernel 5.4.108 doesn't support it, it required 5.9. Is it worthy compiling and installing it? Or should I wait until it's officially supported by OpenWRT?

On ports connected directly to the CPU, invoke VLAN tagging with the notation ethN.M where N is the port number and M is the VLAN number.

1 Like

Sorry I didn't understand. Where should I do it? Can't I choose any ID for them? Is there any tutorial explaining it?

In /etc/config/network, or in the LuCI physical settings pull down the list and type the new name with number.

For example you have an ONT (fiber modem) which requires pppoe with a VLAN tag 35-- connected to eth1. In the wan configuration, change ifname from eth1 to eth1.35.

That is all you have to change since the kernel has direct control of the PHY hardware of each port, there is no switch.

1 Like

depends on how badly you need it :slight_smile:

you could also try to backport the driver to 5.4

1 Like

Got it. So if I wanna set VLAN 12 on eth3, on the br-lan interface I add eth3.12?

And what if I wanna use tagged interface with multiple VLANs on a port? Say I wanna use VLANs 21, 22, 23 and 24 on eth3, then connect it to another router with OpenWRT on bridge mode. :smiley:

Yeah I imagined it :stuck_out_tongue:

It's still not on production so I'll read how to do it and try just for fun. I don't need the port right now so I can wait for official support. What I need right now is to test it and be sure it's working and I don't need to replace the card.

try booting a live image with the required kernel, to verify the cards functionality.

1 Like

Master has support for kernel v5.10 on x86_64, if you select KERNEL_TESTING. That does require building from source, but due to this being x86_64, there is no risk of bricking.

It would be conceivable to backport rtl8125b support to the openwrt-21.02 branch with kernel 5.4, but someone would have to isolate the necessary patches adding this to r8169 and doing the actual backporting and testing. Not a trivial effort, but reasonable for someone with medium experience and motivation, but I wouldn't expect that more experienced developers or regular contributors will volunteer for this job (master and kernel 5.10 are just closer at hand - and the targets (x86_64/ RPi4+) generally easy to update).

2 Likes

Yeah I had read how to change kernel version and it's not trivial, better to wait.

If master has support for 5.10, is there hope that 21.02.0 will have it?

Updating 21.02.x to kernel v5.10 is out of the question, 21.02.x will stick to v5.4 (on all targets) for its lifecycle.

--
Wanting to switch 21.02.x to v5.10 would guarantee that there wouldn't be a 21.02.x release, but rather a ~22.05.x; most targets aren't as easy to migrate to newer kernel version than x86_64).

1 Like

Well I'll leave the port laying there until 23.02 arrives then :confused:

I'm making SSD backup from start, first backup was made before ever booting OpenWRT. I'm also using Subversion to keep track of config changes. And my ER-X will remain updated as a backup router. So yeah I'm pretty safe even when this goes production.

That being said, is it possible to sysupgrade master as we do with release versions? Is a bin generated as we have for release versions, or we need to compile it?

Yes, the procedures are the same - notable difference, the prebuilt snapshots don't have a webinterface (luci) preinstalled (details about that are in the wiki, it can be installed at runtime).

There is one catch though, right now master still defaults to kernel 5.4 (and will remain that way, until 21.02.x is out), kernel v5.10 is only available optionally as testing kernel <-- which needs to be selected at compile time. So if you want to run kernel 5.10 right now (and presumably for the next 2-3 months), you will have to compile master yourself and can't rely on pre-built snapshots yet.

1 Like

Got it.

So when 5.10 is set to default we'll be able to download master's sysupgrade and apply it?

Yes.

1 Like

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