소스 검색

Preserve PHY_BMCR during a soft reset.
Patch by Carl Riechers, 24 Jun 2005

Wolfgang Denk 19 년 전
부모
커밋
f89920c3e4
2개의 변경된 파일10개의 추가작업 그리고 1개의 파일을 삭제
  1. 3 0
      CHANGELOG
  2. 7 1
      common/miiphyutil.c

+ 3 - 0
CHANGELOG

@@ -2,6 +2,9 @@
 Changes for U-Boot 1.1.3:
 ======================================================================
 
+* Preserve PHY_BMCR during a soft reset.
+  Patch by Carl Riechers, 24 Jun 2005
+
 * VoiceBlue update: eeprom tool can also store firmware version now.
   eeprom.bin is runable by jumping at load address.
   Patch by Ladislav Michl, 23 May 2005

+ 7 - 1
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, &reg) != 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