Ethernet section of my custom board is the same as the STM32F746 discovery board. The same code (start ethernet and reply to ping) works reliably on the discovery board. But on my board (at all speed and duplex modes):
(1). Sometime after reset it works fine, I could ping continuously for several hours without any packet lost
(2). Sometime after reset it does not work or misses lot of ping. No ethernet interrupt fired. The MMCRFCECR has non-zero values.
(3). I am using macOS to ping, some time it responses
ping: sendto: Host is down
In this case, there is no output at the RMII RXD0, RXD1.
- Anyone knows in case (3) the computer will not send out any packet or computer does send but my board could not received?
- Are these symptoms caused solely by the RMII errata of revision A silicon? My main concern is PCB/schematic error, I want to fix as early as possible if there are.
- Is there anyway to recover from this error state by software? (reset the MAC?)