Thread (10 messages) 10 messages, 2 authors, 2005-10-20

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

From: Jeff Garzik <hidden>
Date: 2005-10-19 02:31:59
Also in: lkml

John W. Linville wrote:
quoted hunk ↗ jump to hunk
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 <redacted>
---

 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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help