Re-init of Autonegotiation fails when using FreeRTOS
https://github.com/Xilinx/embeddedsw/blob/0f463342b5c42ff17690d396fb74381fb13168ab/ThirdParty/sw_services/lwip220/src/lwip-2.2.0/contrib/ports/xilinx/netif/xadapter.c#L500
The issue is that on boot, the user is usually setting up these NICs sequentially, so the phy_addr (being global) is in step.
Once the link detect thread starts running as part of the scheduler this context loses meaning.
The solution I found was to add a phy_addr parameter to the AXI/EMAC instance structs and assign when detected. The link detect thread should be using THAT value... Not whatever the global value is assigned to.
Thanks for reporting, we'll look into the issue and fix in a future release.