summaryrefslogtreecommitdiff
path: root/cpu
diff options
context:
space:
mode:
authorWolfgang Denk <wd@pollux.denx.de>2005-10-05 01:54:04 +0200
committerWolfgang Denk <wd@pollux.denx.de>2005-10-05 01:54:04 +0200
commitfef636b0cf51ca99cc4141a48e17e301a23937f2 (patch)
tree7b359f98c9760dfb452c6e1a00c4cb77890f361d /cpu
parent080bdb7f3a0227bc2f34a3b2d4e6f573dab3ca3a (diff)
downloadu-boot-imx-fef636b0cf51ca99cc4141a48e17e301a23937f2.zip
u-boot-imx-fef636b0cf51ca99cc4141a48e17e301a23937f2.tar.gz
u-boot-imx-fef636b0cf51ca99cc4141a48e17e301a23937f2.tar.bz2
Fix dm9161.c initialization
Patch by Anders Larsen, 29 Apr 2005
Diffstat (limited to 'cpu')
-rw-r--r--cpu/arm920t/at91rm9200/dm9161.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/cpu/arm920t/at91rm9200/dm9161.c b/cpu/arm920t/at91rm9200/dm9161.c
index 19f85de..4b13c23 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;