I've been wanting to upgrade my router for a while now but haven't been able to pull the trigger on anything. I have a RockPro64 and just learned that it has snapshot builds and 21.02 RC builds so I pulled the trigger on a 4 port PCIe Fujitsu D2745-A11 NIC (Intel).
However, I'm having some trouble with it. Whenever I have the 4 port NIC connected I cannot connect to the device at all and get an APIPA (169.254..) IP address on my laptop. When I boot the board up without the 4 port NIC, I get a proper 192.168.1.* IP address on my laptop and can connect to the board at 192.168.1.1.
I've tried connecting to every port but results are the same. I tried configuring the board with the built in port then connecting the 4 port NIC but get the same results.
I was able to borrow a single port Broadcom NIC which works properly after installing the driver so I know the PCIe port is definitely working under OpenWrt.
I know the RockPro64 is a fairly obscure device but hopefully somebody can shed some light on why this might be happening.
I wouldn't be surprised if you'd run into power problems with a quad card connected - if you can, borrow a single port card to confirm basic PCIe functionality first.
I had success with a single port card. I'm admittedly not too familiar with how much power a 4 port NIC would draw but seems like that could be the issue. Although, I did used to run a 4 port SATA card and power two 3.5" SATA HDDs and a 2.5" SSD (through the dedicated power header on the board).
You probably need to run trunk and from what I know you need to install the Intel NIC driver separately in OpenWrt. What you also can try to make sure everything is working, try booting FreeBSD 13 which should contain a driver for your NIC ootb. There's also display output via HDMI as long as you don't have a 4K display or a HDMI to VGA-adapter (u-boot display support is a bit picky). DHCP is enabled by default so you should see your box on the network (if connected via your Fujitsu NIC), default login is freebsd/freebsd and root/root (su root). http://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/13.0/FreeBSD-13.0-RELEASE-arm64-aarch64-ROCKPRO64.img.xz
In "worst case" the builtin NIC should work irregardless as long as the device boots. I'd recommend at least a 3A PSU btw.
Edit: I should also mention that UART(serial) also works of course, keep in mind the 1.5M baud rate
I tried booting Armbian with the 4 port NIC connected and it wouldn't boot. I'll try FreeBSD as well just for kicks but am expecting the same result.
I came across this thread over at the Pine64 forum that suggests there's an issue with how the board handles some PCIe cards requiring a kernel patch/hack. I'm thinking this is what I'm experiencing.
I guess it's back to the drawing board for my router upgrade. With so many devices that "just work", the RockPro64 isn't looking like the right device for the job now. Guess I got a bit ahead of myself.
I've had various success with Armbian and RockPro64, give FreeBSD or NetBSD go just to be sure. If FreeBSD works I can give you a hand in setting it up if interested.
I tried to boot FreeBSD but don't get any activity on the board with or without the NIC connected. Is there more to booting FreeBSD than just writing the image to the SD card? I've never used a BSD before. I tried writing with Etcher and with standard dd.
It runs growfs during first boot which can take a while before it finishes depending on the size and speed of your SD card. Great that it's running! If you want I have a slightly customized image with 13-STABLE branch (I wanted a few things that didn't make it into -RELEASE such as RTC driver and a few other things) and altq enabled simply because I wanted to save some time that's a bit firewall/gateway/router-ish friendly. I've been running a Rockpro64(s) for quite a while now without issues if you're interested PM me if that's the case
Linux's PCIe driver can be a bit wonky and the forked kernel sometimes works and sometime it doesn't, I haven't time looking into way tbh. I think it'll be fixed in you use a newer kernel though like 5.11 or so.
I'll admit a bit hesitant to set up such a critical part of the network in an OS I'm unfamiliar with but curiosity tends to get the best of me! I'll PM you.