if_wi.c (48645) | if_wi.c (50107) |
---|---|
1/* 2 * Copyright (c) 1997, 1998, 1999 3 * Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 15 unchanged lines hidden (view full) --- 24 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 25 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 30 * THE POSSIBILITY OF SUCH DAMAGE. 31 * | 1/* 2 * Copyright (c) 1997, 1998, 1999 3 * Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 15 unchanged lines hidden (view full) --- 24 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 25 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 30 * THE POSSIBILITY OF SUCH DAMAGE. 31 * |
32 * $Id: if_wi.c,v 1.7 1999/07/04 14:40:22 wpaul Exp $ | 32 * $Id: if_wi.c,v 1.8 1999/07/06 19:22:53 des Exp $ |
33 */ 34 35/* 36 * Lucent WaveLAN/IEEE 802.11 PCMCIA driver for FreeBSD. 37 * 38 * Written by Bill Paul <wpaul@ctr.columbia.edu> 39 * Electrical Engineering Department 40 * Columbia University, New York City --- 70 unchanged lines hidden (view full) --- 111#if NCARD > 0 112#include <sys/select.h> 113#include <pccard/cardinfo.h> 114#include <pccard/slot.h> 115#endif 116 117#if !defined(lint) 118static const char rcsid[] = | 33 */ 34 35/* 36 * Lucent WaveLAN/IEEE 802.11 PCMCIA driver for FreeBSD. 37 * 38 * Written by Bill Paul <wpaul@ctr.columbia.edu> 39 * Electrical Engineering Department 40 * Columbia University, New York City --- 70 unchanged lines hidden (view full) --- 111#if NCARD > 0 112#include <sys/select.h> 113#include <pccard/cardinfo.h> 114#include <pccard/slot.h> 115#endif 116 117#if !defined(lint) 118static const char rcsid[] = |
119 "$Id: if_wi.c,v 1.7 1999/07/04 14:40:22 wpaul Exp $"; | 119 "$Id: if_wi.c,v 1.8 1999/07/06 19:22:53 des Exp $"; |
120#endif 121 122static struct wi_softc wi_softc[NWI]; 123 124#ifdef foo 125static u_int8_t wi_mcast_addr[6] = { 0x01, 0x60, 0x1D, 0x00, 0x01, 0x00 }; 126#endif 127 128static int wi_probe __P((struct isa_device *)); 129static int wi_attach __P((struct isa_device *)); 130#ifdef PCCARD_MODULE 131static ointhand2_t wi_intr; 132#endif 133static void wi_reset __P((struct wi_softc *)); 134static int wi_ioctl __P((struct ifnet *, u_long, caddr_t)); 135static void wi_init __P((void *)); 136static void wi_start __P((struct ifnet *)); 137static void wi_stop __P((struct wi_softc *)); 138static void wi_watchdog __P((struct ifnet *)); | 120#endif 121 122static struct wi_softc wi_softc[NWI]; 123 124#ifdef foo 125static u_int8_t wi_mcast_addr[6] = { 0x01, 0x60, 0x1D, 0x00, 0x01, 0x00 }; 126#endif 127 128static int wi_probe __P((struct isa_device *)); 129static int wi_attach __P((struct isa_device *)); 130#ifdef PCCARD_MODULE 131static ointhand2_t wi_intr; 132#endif 133static void wi_reset __P((struct wi_softc *)); 134static int wi_ioctl __P((struct ifnet *, u_long, caddr_t)); 135static void wi_init __P((void *)); 136static void wi_start __P((struct ifnet *)); 137static void wi_stop __P((struct wi_softc *)); 138static void wi_watchdog __P((struct ifnet *)); |
139static void wi_shutdown __P((int, void *)); | 139static void wi_shutdown __P((void *, int)); |
140static void wi_rxeof __P((struct wi_softc *)); 141static void wi_txeof __P((struct wi_softc *, int)); 142static void wi_update_stats __P((struct wi_softc *)); 143static void wi_setmulti __P((struct wi_softc *)); 144 145static int wi_cmd __P((struct wi_softc *, int, int)); 146static int wi_read_record __P((struct wi_softc *, struct wi_ltv_gen *)); 147static int wi_write_record __P((struct wi_softc *, struct wi_ltv_gen *)); --- 214 unchanged lines hidden (view full) --- 362 */ 363 if_attach(ifp); 364 ether_ifattach(ifp); 365 366#if NBPF > 0 367 bpfattach(ifp, DLT_EN10MB, sizeof(struct ether_header)); 368#endif 369 | 140static void wi_rxeof __P((struct wi_softc *)); 141static void wi_txeof __P((struct wi_softc *, int)); 142static void wi_update_stats __P((struct wi_softc *)); 143static void wi_setmulti __P((struct wi_softc *)); 144 145static int wi_cmd __P((struct wi_softc *, int, int)); 146static int wi_read_record __P((struct wi_softc *, struct wi_ltv_gen *)); 147static int wi_write_record __P((struct wi_softc *, struct wi_ltv_gen *)); --- 214 unchanged lines hidden (view full) --- 362 */ 363 if_attach(ifp); 364 ether_ifattach(ifp); 365 366#if NBPF > 0 367 bpfattach(ifp, DLT_EN10MB, sizeof(struct ether_header)); 368#endif 369 |
370 at_shutdown(wi_shutdown, sc, SHUTDOWN_POST_SYNC); | 370 EVENTHANDLER_REGISTER(shutdown_post_sync, wi_shutdown, sc, 371 SHUTDOWN_PRI_DEFAULT); |
371 } 372 373 return(0); 374} 375 376static void wi_rxeof(sc) 377 struct wi_softc *sc; 378{ --- 952 unchanged lines hidden (view full) --- 1331 1332 wi_init(sc); 1333 1334 ifp->if_oerrors++; 1335 1336 return; 1337} 1338 | 372 } 373 374 return(0); 375} 376 377static void wi_rxeof(sc) 378 struct wi_softc *sc; 379{ --- 952 unchanged lines hidden (view full) --- 1332 1333 wi_init(sc); 1334 1335 ifp->if_oerrors++; 1336 1337 return; 1338} 1339 |
1339static void wi_shutdown(howto, arg) 1340 int howto; | 1340static void wi_shutdown(arg, howto) |
1341 void *arg; | 1341 void *arg; |
1342 int howto; |
|
1342{ 1343 struct wi_softc *sc; 1344 1345 sc = arg; 1346 wi_stop(sc); 1347 1348 return; 1349} | 1343{ 1344 struct wi_softc *sc; 1345 1346 sc = arg; 1347 wi_stop(sc); 1348 1349 return; 1350} |