I’m currently running OpenWrt snapshot on a Raspberry Pi 5 with a dual-port 2.5G PCIe HAT using the r8169 driver. The system is on kernel 6.12.x and has been completely stable — 2.5G negotiates properly, WireGuard performs well, and VLANs/firewall zones are all working as expected.
A couple of months ago I tried moving to the then-current stable release (24.10.x, kernel 6.6.x). When I attempted to install kmod-r8169 and r8169-firmware, I ran into dependency/kernel mismatch issues and couldn’t get the 2.5G interfaces working reliably. That’s what led me to switch to snapshot.
From what I understand:
Stable 24.10.x uses Linux 6.6 LTS
Snapshot (and now 25.12-rc builds) are on Linux 6.12 LTS
Since my current snapshot is already on 6.12 and working perfectly, I’m trying to decide whether it makes sense to move back to 24.10.x stable (6.6), or simply wait for 25.12 stable, which should also be based on 6.12 LTS.
My main questions:
Are there known Pi 5 PCIe or r8169 / Realtek 2.5G improvements between 6.6 and 6.12 that would explain why snapshot worked but stable didn’t?
Is 24.10.x considered fully mature for Pi 5 + PCIe 2.5G setups?
Would waiting for 25.12 stable (kernel 6.12) be the more sensible migration point?
Given that my current snapshot build is stable and I’m not performing blind opkg upgrades, I’m leaning toward staying put and migrating cleanly once 25.12 final is released.
Appreciate any insight from those tracking the kernel transitions for bcm27xx / Pi 5.
Thanks — I agree that snapshot builds themselves can be perfectly stable in practice. Mine has been rock solid for months.
What I meant is slightly different though. Snapshot as a branch isn’t “stable” in the same way a release branch is, because the package feeds and kernel ABI continue to move. If you run opkg update/upgrade later, you can hit kernel-module mismatches or dependency issues since snapshot packages are always built against the current snapshot kernel.
So while a given snapshot image can absolutely be stable (and mine clearly is), the maintenance model is different compared to a frozen stable release branch.
That’s really the distinction I was trying to understand — whether it’s worth staying on a known-good snapshot until 6.12 lands in stable, rather than moving back to 6.6 and potentially reintroducing the earlier PCIe / r8169 issues.
OP do you mind telling me which dual 2.5g hat you have? I also have a Raspberry Pi 5 with a ZP595 dual pcie hat that refuses to work either in stable or latest snapshots unless I build the release with “kmod-r8125”. If I don’t build with that kmod, the hat is never detected.
Hello, yes — mine was the ZDE ZP595 PCIe to Dual 2.5G as well.
I spent hours getting it working. In my case, the card wasn’t detected unless I baked the drivers directly into the image.
On Snapshot (r32359 at the time), I added:
kmod-r8169 luci r8169-firmware pciutils
After that it came up fine.
So if you’re on Snapshot, I’d definitely include kmod-r8169 in the image rather than trying to install it later.
Alternatively, you could try 25.12.0-RC (kernel 6.12). From what I understand, the required drivers should already be included there, so you may not need to add them manually.
Hope that helps, let me know if you use the RC, as I'm waiting for the stable release, then I'll move from Snapshot to stable.