Eth0 not starting automatically on boot

I’m having this same problem.

Four Xavier NX dev kits: dev board model P3518, nx module model P3668; all flashed to the newest jetpack 5.0.2, all running from the sd card not off of nvme. Have tried multiple different flashes from the SDK Manager including flashing to a running system, flashing to the force recovery on the NX, and flashing to a new, blank sd card. Originally I had been running them with the WiFi card removed, so I tried plugging one in then flashing but that also made no difference. Also tried deleting and recreating the image on the host. The error still occurs without any steps required. They usually boot even with an ethernet cable plugged in, but randomly on reboots eth0 doesn’t start automatically. On an even less likely occurrence they do not boot at all, getting stuck somewhere with a black screen seemingly after the UEFI and before the system terminal showing the startup progress, but that only happened once or twice out of hundreds of reboots.

$ sudo dmesg | grep eth0
nvethernet 2490000.ethernet eth0 (HW ver: 50) created with 1 DMA channels
net eth0: failed to poll MAC Software reset

Another dmesg error immediately proceeding the failed to poll message:

[eqos_poll_for_swr][598][type:0x4][loga-0x0] poll_for_swr: timeout
net eth0: failed to poll MAC Software reset

Which might be related to:

But I’m not sure how or why a problem like would be relevant.

I tried running:

$ sudo ifconfig eth0 up

Sometimes it works and eth0 comes up. When it works dmesg gets:

IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

When it doesn’t work it errors with:

SIOCSIFFLAGS: Operation not permitted

and dmesg prints the same thing:

[eqos_poll_for_swr][598][type:0x4][loga-0x0] poll_for_swr: timeout
net eth0: failed to poll MAC Software reset

To make it even more weird, trying the same command a second time after the error will sometimes work.