diff options
author | brooks <brooks@FreeBSD.org> | 2003-10-31 18:32:15 +0000 |
---|---|---|
committer | brooks <brooks@FreeBSD.org> | 2003-10-31 18:32:15 +0000 |
commit | f1e94c6f29b079e4ad9d9305ef3e90a719bcbbda (patch) | |
tree | 4d9e6671d486576767506230a4240131526fea49 /sys/i386/isa | |
parent | be546fdee455a96afdefee10d0bdba8547399f5b (diff) | |
download | FreeBSD-src-f1e94c6f29b079e4ad9d9305ef3e90a719bcbbda.zip FreeBSD-src-f1e94c6f29b079e4ad9d9305ef3e90a719bcbbda.tar.gz |
Replace the if_name and if_unit members of struct ifnet with new members
if_xname, if_dname, and if_dunit. if_xname is the name of the interface
and if_dname/unit are the driver name and instance.
This change paves the way for interface renaming and enhanced pseudo
device creation and configuration symantics.
Approved By: re (in principle)
Reviewed By: njl, imp
Tested On: i386, amd64, sparc64
Obtained From: NetBSD (if_xname)
Diffstat (limited to 'sys/i386/isa')
-rw-r--r-- | sys/i386/isa/cx.c | 9 | ||||
-rw-r--r-- | sys/i386/isa/if_cx.c | 3 | ||||
-rw-r--r-- | sys/i386/isa/if_el.c | 5 | ||||
-rw-r--r-- | sys/i386/isa/if_le.c | 10 | ||||
-rw-r--r-- | sys/i386/isa/if_rdp.c | 5 |
5 files changed, 14 insertions, 18 deletions
diff --git a/sys/i386/isa/cx.c b/sys/i386/isa/cx.c index c0fc028..fd5b686 100644 --- a/sys/i386/isa/cx.c +++ b/sys/i386/isa/cx.c @@ -285,11 +285,11 @@ cxioctl (dev_t dev, u_long cmd, caddr_t data, int flag, struct thread *td) master = *o->master ? ifunit (o->master) : c->ifp; if (! master) return (EINVAL); - m = cxchan[master->if_unit]; + m = cxchan[master->if_dunit]; /* Leave the previous master queue. */ if (c->master != c->ifp) { - cx_chan_t *p = cxchan[c->master->if_unit]; + cx_chan_t *p = cxchan[c->master->if_dunit]; for (; p; p=p->slaveq) if (p->slaveq == c) @@ -355,9 +355,8 @@ cxioctl (dev_t dev, u_long cmd, caddr_t data, int flag, struct thread *td) case 8: o->iftype = c->board->if8type; break; } if (c->master != c->ifp) - snprintf (o->master, sizeof(o->master), - "%s%d", c->master->if_name, - c->master->if_unit); + strlcpy(o->master, c->master->if_xname, + sizeof(o->master)); else *o->master = 0; break; diff --git a/sys/i386/isa/if_cx.c b/sys/i386/isa/if_cx.c index 192ab64..1fe8b2f 100644 --- a/sys/i386/isa/if_cx.c +++ b/sys/i386/isa/if_cx.c @@ -269,8 +269,7 @@ cxattach (struct isa_device *id) bzero (c->ifp, IFSTRUCTSZ); c->master = c->ifp; c->ifp->if_softc = c; - c->ifp->if_unit = u; - c->ifp->if_name = "cx"; + if_initname(c->ifp, "cx", u); c->ifp->if_mtu = PP_MTU; c->ifp->if_flags = IFF_POINTOPOINT | IFF_MULTICAST; c->ifp->if_ioctl = cxsioctl; diff --git a/sys/i386/isa/if_el.c b/sys/i386/isa/if_el.c index de28c81..62dd35d 100644 --- a/sys/i386/isa/if_el.c +++ b/sys/i386/isa/if_el.c @@ -264,8 +264,7 @@ el_attach(device_t dev) /* Initialize ifnet structure */ ifp->if_softc = sc; - ifp->if_unit = device_get_unit(dev);; - ifp->if_name = "el"; + if_initname(ifp, device_get_name(dev), device_get_unit(dev)); ifp->if_mtu = ETHERMTU; ifp->if_start = el_start; ifp->if_ioctl = el_ioctl; @@ -765,7 +764,7 @@ el_ioctl(ifp, command, data) static void el_watchdog(struct ifnet *ifp) { - log(LOG_ERR,"el%d: device timeout\n", ifp->if_unit); + log(LOG_ERR,"%s: device timeout\n", ifp->if_xname); ifp->if_oerrors++; el_reset(ifp->if_softc); } diff --git a/sys/i386/isa/if_le.c b/sys/i386/isa/if_le.c index e55fe96..165ecac 100644 --- a/sys/i386/isa/if_le.c +++ b/sys/i386/isa/if_le.c @@ -196,6 +196,7 @@ static void (*le_intrvec[NLE])(le_softc_t *sc); */ struct le_softc { struct arpcom le_ac; /* Common Ethernet/ARP Structure */ + int le_unit; /* Unit number */ void (*if_init)(void *);/* Interface init routine */ void (*if_reset)(le_softc_t *);/* Interface reset routine */ caddr_t le_membase; /* Starting memory address (virtual) */ @@ -319,8 +320,7 @@ le_probe( sc->le_iobase = dvp->id_iobase; sc->le_membase = (u_char *) dvp->id_maddr; sc->le_irq = dvp->id_irq; - sc->le_if.if_name = (char *)(uintptr_t)(const void *)ledriver.name; - sc->le_if.if_unit = dvp->id_unit; + sc->le_unit = dvp->id_unit; /* * Find and Initialize board.. @@ -346,7 +346,7 @@ le_attach( dvp->id_ointr = le_intr; ifp->if_softc = sc; - ifp->if_unit = dvp->id_unit; + if_initname(ifp, ledriver.name, dvp->id_unit); ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; ifp->if_ioctl = le_ioctl; ifp->if_init = sc->if_init; @@ -704,7 +704,7 @@ lemac_probe( sc->le_mcmask = (1 << LEMAC_MCTBL_BITS) - 1; sc->lemac_txmax = lemac_deftxmax; *msize = 2048; - le_intrvec[sc->le_if.if_unit] = lemac_intr; + le_intrvec[sc->le_unit] = lemac_intr; return LEMAC_IOSPACE; } @@ -1346,7 +1346,7 @@ depca_probe( */ DEPCA_WRNICSR(sc, DEPCA_RDNICSR(sc) | DEPCA_NICSR_SHE); - le_intrvec[sc->le_if.if_unit] = depca_intr; + le_intrvec[sc->le_unit] = depca_intr; if (!lance_init_adapmem(sc)) return 0; diff --git a/sys/i386/isa/if_rdp.c b/sys/i386/isa/if_rdp.c index e9ba78a..23fb4c0 100644 --- a/sys/i386/isa/if_rdp.c +++ b/sys/i386/isa/if_rdp.c @@ -595,8 +595,7 @@ rdp_attach(struct isa_device *isa_dev) * Initialize ifnet structure */ ifp->if_softc = sc; - ifp->if_unit = unit; - ifp->if_name = "rdp"; + if_initname(ifp, "rdp", unit); ifp->if_start = rdp_start; ifp->if_ioctl = rdp_ioctl; ifp->if_watchdog = rdp_watchdog; @@ -668,7 +667,7 @@ static void rdp_watchdog(struct ifnet *ifp) { - log(LOG_ERR, "rdp%d: device timeout\n", ifp->if_unit); + log(LOG_ERR, "%s: device timeout\n", ifp->if_xname); ifp->if_oerrors++; rdp_reset(ifp); |