Patches for BPI-R4 & BPI-R4Pro

I recently bought a R4Pro and decided to spend the last few weeks to make it into a perfect main router device. I am happy to report that I now have a fully functional and error free R4Pro 8x (as far as I can tell) running ArchLinux and @frank-w kernel. I’ve submitted my PR against frank’s 7.1-main so feel free to fetch them from there if you have issues. What works and have seen people complain about here:

  1. the MxL86252C switch with 1.0.70 firmware.
  2. BE14 and other pcie related crashes.
  3. Speed up boot AS21011 WAN link
  4. Various memory and cast related bugs addressed as stumbled upon by Claude

One other major thing to highlight is that I finally managed to trace and fix an error for a packet corrupting bug that as far as I could tell affects both BPI-R3 and BPI-R4: Fix a use-after-free in the QDMA TX path that silently corrupts forwarded traffic by meehien · Pull Request #197 · frank-w/BPI-Router-Linux · GitHub. I observed this first back in 2024 (@[BPI-R3] weird networking issue (and weirder "solution") - #42 by sparkie) when I proposed a fix with:

ethtool -K eth0 tx

I am happy to say that with this patch applied tx off is no longer required and my network is 20% faster. Kudos to Claude for the debugging help.