Re: [patch 2.6.14-rc3 2/3] sundance: probe PHYs from MII address0

From: Jeff Garzik
Date: Tue Oct 18 2005 - 21:32:26 EST


John W. Linville wrote:
Probe for PHYs starting at MII address 0 instead of MII address 1.
This covers the entire range of MII addresses.

Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
---

drivers/net/sundance.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/sundance.c b/drivers/net/sundance.c
--- a/drivers/net/sundance.c
+++ b/drivers/net/sundance.c
@@ -608,7 +608,7 @@ static int __devinit sundance_probe1 (st
np->phys[0] = 1; /* Default setting */
np->mii_preamble_required++;
- for (phy = 1; phy < 32 && phy_idx < MII_CNT; phy++) {
+ for (phy = 0; phy < 32 && phy_idx < MII_CNT; phy++) {

NAK. MII address 0 should be scanned _last_, after all other addresses. In some phys, it is a ghost, mirroring another address.

Take a look at some of the original Becker MII scan code from
ftp://ftp.scyld.com/pub/network/ to see an elegant method for this.

Becker's scan code would utilize a mask to keep the loop nice and elegant, eliminating an "if (phy == 32) phy = 0;" test.

Jeff


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/