diff options
author | Josef Karthauser <joe@FreeBSD.org> | 2003-10-04 21:41:01 +0000 |
---|---|---|
committer | Josef Karthauser <joe@FreeBSD.org> | 2003-10-04 21:41:01 +0000 |
commit | cd719b55bd4ec967057ba176466e47e2e815b138 (patch) | |
tree | 15da455e5eb06848f5cea6f41dceff61cf7f7ea7 /sys/dev/usb/if_cue.c | |
parent | cbfbaad8bef672dd93ec8c449dce9f8cdc9fbbb2 (diff) | |
download | src-cd719b55bd4ec967057ba176466e47e2e815b138.tar.gz src-cd719b55bd4ec967057ba176466e47e2e815b138.zip |
Make it easier to run this code on RELENG_4.
Submitted by: luoqi
Notes
Notes:
svn path=/head/; revision=120765
Diffstat (limited to 'sys/dev/usb/if_cue.c')
-rw-r--r-- | sys/dev/usb/if_cue.c | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/sys/dev/usb/if_cue.c b/sys/dev/usb/if_cue.c index 72f0dedb2341..d3a5c490976d 100644 --- a/sys/dev/usb/if_cue.c +++ b/sys/dev/usb/if_cue.c @@ -71,6 +71,9 @@ __FBSDID("$FreeBSD$"); #include <sys/bus.h> #include <machine/bus.h> +#if __FreeBSD_version < 500000 +#include <machine/clock.h> +#endif #include <dev/usb/usb.h> #include <dev/usb/usbdi.h> @@ -365,7 +368,12 @@ cue_setmulti(struct cue_softc *sc) sc->cue_mctab[i] = 0; /* now program new ones */ - TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { +#if __FreeBSD_version >= 500000 + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) +#else + LIST_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) +#endif + { if (ifma->ifma_addr->sa_family != AF_LINK) continue; h = cue_crc(LLADDR((struct sockaddr_dl *)ifma->ifma_addr)); @@ -377,7 +385,11 @@ cue_setmulti(struct cue_softc *sc) * so we can receive broadcast frames. */ if (ifp->if_flags & IFF_BROADCAST) { +#if __FreeBSD_version >= 500000 h = cue_crc(ifp->if_broadcastaddr); +#else + h = cue_crc(etherbroadcastaddr); +#endif sc->cue_mctab[h >> 3] |= 1 << (h & 0x7); } @@ -484,8 +496,10 @@ USB_ATTACH(cue) } } +#if __FreeBSD_version >= 500000 mtx_init(&sc->cue_mtx, device_get_nameunit(self), MTX_NETWORK_LOCK, MTX_DEF | MTX_RECURSE); +#endif CUE_LOCK(sc); #ifdef notdef @@ -524,7 +538,11 @@ USB_ATTACH(cue) /* * Call MI attach routine. */ +#if __FreeBSD_version >= 500000 ether_ifattach(ifp, eaddr); +#else + ether_ifattach(ifp, ETHER_BPF_SUPPORTED); +#endif callout_handle_init(&sc->cue_stat_ch); usb_register_netisr(); sc->cue_dying = 0; @@ -545,7 +563,11 @@ cue_detach(device_ptr_t dev) sc->cue_dying = 1; untimeout(cue_tick, sc, sc->cue_stat_ch); +#if __FreeBSD_version >= 500000 ether_ifdetach(ifp); +#else + ether_ifdetach(ifp, ETHER_BPF_SUPPORTED); +#endif if (sc->cue_ep[CUE_ENDPT_TX] != NULL) usbd_abort_pipe(sc->cue_ep[CUE_ENDPT_TX]); @@ -555,7 +577,9 @@ cue_detach(device_ptr_t dev) usbd_abort_pipe(sc->cue_ep[CUE_ENDPT_INTR]); CUE_UNLOCK(sc); +#if __FreeBSD_version >= 500000 mtx_destroy(&sc->cue_mtx); +#endif return(0); } |