From 130be1f12030c0e8f1e7a64ddea2a46b15a3eeb0 Mon Sep 17 00:00:00 2001 From: Doug Ambrisko Date: Wed, 7 Aug 2002 22:18:33 +0000 Subject: [PATCH] Only attach one PHY device to a controller. NetBSD has similar code. The D-Link DFE-580 card will otherwise show 2 miibuses for each controller and therefore 2 ukphy's. Sponsored by: Vernier Networks MFC after: 1 week --- sys/dev/mii/mii.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sys/dev/mii/mii.c b/sys/dev/mii/mii.c index 9a63276566b..aad35736ec7 100644 --- a/sys/dev/mii/mii.c +++ b/sys/dev/mii/mii.c @@ -110,14 +110,17 @@ int miibus_probe(dev) { struct mii_attach_args ma, *args; struct mii_data *mii; - device_t child = NULL, parent; - int bmsr, capmask = 0xFFFFFFFF; + device_t child = NULL, parent, *children; + int bmsr, capmask = 0xFFFFFFFF, nchildren; mii = device_get_softc(dev); parent = device_get_parent(dev); LIST_INIT(&mii->mii_phys); for (ma.mii_phyno = 0; ma.mii_phyno < MII_NPHY; ma.mii_phyno++) { + device_get_children(dev, &children, &nchildren); + if (nchildren) + break; /* * Check to see if there is a PHY at this address. Note, * many braindead PHYs report 0/0 in their ID registers,