Intel Ethernet Fiber PCI card fails after suspend

On Debian, my Intel Corporation Ethernet Controller E810-XXV always goes down after suspend; here are how I’ve fixed it (manually).

It works fine on Windows—on Debian, though, after resuming, I have no network.

I’ve found the following commands fix it.

My hardware

I suspect that there’s an issue between the Intel Ethernet Controller and the AMD motherboard, that Windows manages to get around. Many other folks have hit this issue (see this Reddit thread). The GRUB_CMDLINE solution didn’t work for me, but the pci remove/rescan solution did.

$ lspci | grep Intel

04:00.0 Ethernet controller: Intel Corporation Ethernet Controller E810-XXV for SFP (rev 02)
04:00.1 Ethernet controller: Intel Corporation Ethernet Controller E810-XXV for SFP (rev 02)

$ sudo dmidecode -t 2

Base Board Information
	Manufacturer: ASUSTeK COMPUTER INC.
	Product Name: ROG STRIX B550-A GAMING

Fix - remove PCI device & rescan

After suspend, when I have no network, I run this and it fixes it immediately. Note that you’ll need to replace 04 with your PCI index from lspci above.

echo 1 | sudo tee /sys/bus/pci/devices/0000\:04\:00.0/remove
echo 1 | sudo tee /sys/bus/pci/rescan

Hope this helps! Thank you to a few different forum posts that noted this solution.