diff options
author | brooks <brooks@FreeBSD.org> | 2005-06-11 01:37:46 +0000 |
---|---|---|
committer | brooks <brooks@FreeBSD.org> | 2005-06-11 01:37:46 +0000 |
commit | c9630d0c6a40064d4dd993da325909500f31816c (patch) | |
tree | 8113efbab82d5bec5e92fdd42f08d37b6e0b221d /sys/dev/nve | |
parent | 3625e8746bd4a897a2b444c15432fe7efa9e0751 (diff) | |
download | FreeBSD-src-c9630d0c6a40064d4dd993da325909500f31816c.zip FreeBSD-src-c9630d0c6a40064d4dd993da325909500f31816c.tar.gz |
Move if_alloc() up so it's before mii_phy_probe().
Diffstat (limited to 'sys/dev/nve')
-rw-r--r-- | sys/dev/nve/if_nve.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/sys/dev/nve/if_nve.c b/sys/dev/nve/if_nve.c index 131502d..bf6d034 100644 --- a/sys/dev/nve/if_nve.c +++ b/sys/dev/nve/if_nve.c @@ -492,21 +492,23 @@ nve_attach(device_t dev) /* Display ethernet address ,... */ device_printf(dev, "Ethernet address %6D\n", eaddr, ":"); - DEBUGOUT(NVE_DEBUG_INIT, "nve: do mii_phy_probe\n"); + /* Allocate interface structures */ + ifp = sc->ifp = if_alloc(IFT_ETHER); + if (ifp == NULL) { + device_printf(dev, "can not if_alloc()\n"); + error = ENOSPC; + goto fail; + } /* Probe device for MII interface to PHY */ + DEBUGOUT(NVE_DEBUG_INIT, "nve: do mii_phy_probe\n"); if (mii_phy_probe(dev, &sc->miibus, nve_ifmedia_upd, nve_ifmedia_sts)) { device_printf(dev, "MII without any phy!\n"); error = ENXIO; goto fail; } + /* Setup interface parameters */ - ifp = sc->ifp = if_alloc(IFT_ETHER); - if (ifp == NULL) { - device_printf(dev, "can not if_alloc()\n"); - error = ENOSPC; - goto fail; - } ifp->if_softc = sc; if_initname(ifp, "nve", unit); ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; |