From fef636b0cf51ca99cc4141a48e17e301a23937f2 Mon Sep 17 00:00:00 2001
From: Wolfgang Denk <wd@pollux.denx.de>
Date: Wed, 5 Oct 2005 01:54:04 +0200
Subject: [PATCH] Fix dm9161.c initialization Patch by Anders Larsen, 29 Apr
 2005

---
 CHANGELOG                       | 3 +++
 cpu/arm920t/at91rm9200/dm9161.c | 7 ++++---
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index 6d0ef81411e..af39df89da9 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,9 @@
 Changes for U-Boot 1.1.4:
 ======================================================================
 
+* Fix dm9161.c initialization
+  Patch by Anders Larsen, 29 Apr 2005
+
 * Fix problems introduced by Patch by Steven Scholz, 02 Mar 2005
   (8e2be51de8dd03c1ce4d06cbb18ad06133d47cd5)
 
diff --git a/cpu/arm920t/at91rm9200/dm9161.c b/cpu/arm920t/at91rm9200/dm9161.c
index 19f85ded164..4b13c237c70 100644
--- a/cpu/arm920t/at91rm9200/dm9161.c
+++ b/cpu/arm920t/at91rm9200/dm9161.c
@@ -138,9 +138,9 @@ UCHAR dm9161_InitPhy (AT91PS_EMAC p_mac)
 
 	/* Disable PHY Interrupts */
 	at91rm9200_EmacReadPhy (p_mac, DM9161_MDINTR, &IntValue);
-	/* clear FDX, SPD, Link, INTR masks */
-	IntValue &= ~(DM9161_FDX_MASK | DM9161_SPD_MASK |
-		      DM9161_LINK_MASK | DM9161_INTR_MASK);
+	/* set FDX, SPD, Link, INTR masks */
+	IntValue |= (DM9161_FDX_MASK | DM9161_SPD_MASK |
+		     DM9161_LINK_MASK | DM9161_INTR_MASK);
 	at91rm9200_EmacWritePhy (p_mac, DM9161_MDINTR, &IntValue);
 	at91rm9200_EmacDisableMDIO (p_mac);
 
@@ -190,6 +190,7 @@ UCHAR dm9161_AutoNegotiate (AT91PS_EMAC p_mac, int *status)
 		return FALSE;
 	/* Restart Auto_negotiation  */
 	value |= DM9161_RESTART_AUTONEG;
+	value &= ~DM9161_ISOLATE;
 	if (!at91rm9200_EmacWritePhy (p_mac, DM9161_BMCR, &value))
 		return FALSE;
 
-- 
GitLab