Hi Andrew, Thanks a lot for explanation!. > You need to not make any read on the PHY which Linux is driving. > Configure the hardware to read on an address where there is no PHY. > I will modify code to set hardware external PHY address to 31. In mii_read() or mii_write() functions, set hardware external PHY address to real PHY address, so that mii read or write command can be sent out by hardware. Set hardware external PHY address back to 31 after mii read or write command done. Best regards, Wells Lu