diff options
Diffstat (limited to 'common/miiphyutil.c')
| -rw-r--r-- | common/miiphyutil.c | 8 | 
1 files changed, 7 insertions, 1 deletions
| diff --git a/common/miiphyutil.c b/common/miiphyutil.c index 2b0dcf4f2..13b9c65dc 100644 --- a/common/miiphyutil.c +++ b/common/miiphyutil.c @@ -93,7 +93,13 @@ int miiphy_reset (unsigned char addr)  	unsigned short reg;  	int loop_cnt; -	if (miiphy_write (addr, PHY_BMCR, 0x8000) != 0) { +	if (miiphy_read (addr, PHY_BMCR, ®) != 0) { +#ifdef DEBUG +		printf ("PHY status read failed\n"); +#endif +		return (-1); +	} +	if (miiphy_write (addr, PHY_BMCR, reg | 0x8000) != 0) {  #ifdef DEBUG  		puts ("PHY reset failed\n");  #endif |