diff options
author | Michael Chan <mchan@broadcom.com> | 2006-11-19 17:08:56 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-12-03 00:24:21 -0500 |
commit | a16dda0e67cea666fb7eb708ab1199892c4a1a13 (patch) | |
tree | 527897ab67c49755ae9a6f166e1b852abf8dd503 /drivers | |
parent | f8dd064ee1bd62ef2cdb398cb9cdc8a8f112cb28 (diff) |
[BNX2]: Remove udelay() in copper PHY code.
Change a long udelay() in bnx2_setup_copper_phy() to msleep().
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/bnx2.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c index ea5daf6efa09..0a46b45f21dd 100644 --- a/drivers/net/bnx2.c +++ b/drivers/net/bnx2.c | |||
@@ -1159,7 +1159,6 @@ bnx2_setup_copper_phy(struct bnx2 *bp) | |||
1159 | } | 1159 | } |
1160 | if (new_bmcr != bmcr) { | 1160 | if (new_bmcr != bmcr) { |
1161 | u32 bmsr; | 1161 | u32 bmsr; |
1162 | int i = 0; | ||
1163 | 1162 | ||
1164 | bnx2_read_phy(bp, MII_BMSR, &bmsr); | 1163 | bnx2_read_phy(bp, MII_BMSR, &bmsr); |
1165 | bnx2_read_phy(bp, MII_BMSR, &bmsr); | 1164 | bnx2_read_phy(bp, MII_BMSR, &bmsr); |
@@ -1167,12 +1166,12 @@ bnx2_setup_copper_phy(struct bnx2 *bp) | |||
1167 | if (bmsr & BMSR_LSTATUS) { | 1166 | if (bmsr & BMSR_LSTATUS) { |
1168 | /* Force link down */ | 1167 | /* Force link down */ |
1169 | bnx2_write_phy(bp, MII_BMCR, BMCR_LOOPBACK); | 1168 | bnx2_write_phy(bp, MII_BMCR, BMCR_LOOPBACK); |
1170 | do { | 1169 | spin_unlock_bh(&bp->phy_lock); |
1171 | udelay(100); | 1170 | msleep(50); |
1172 | bnx2_read_phy(bp, MII_BMSR, &bmsr); | 1171 | spin_lock_bh(&bp->phy_lock); |
1173 | bnx2_read_phy(bp, MII_BMSR, &bmsr); | 1172 | |
1174 | i++; | 1173 | bnx2_read_phy(bp, MII_BMSR, &bmsr); |
1175 | } while ((bmsr & BMSR_LSTATUS) && (i < 620)); | 1174 | bnx2_read_phy(bp, MII_BMSR, &bmsr); |
1176 | } | 1175 | } |
1177 | 1176 | ||
1178 | bnx2_write_phy(bp, MII_BMCR, new_bmcr); | 1177 | bnx2_write_phy(bp, MII_BMCR, new_bmcr); |