Date: Tue, 2 Mar 2004 16:13:12 -0800 (PST) From: Robert Watson <rwatson@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 48019 for review Message-ID: <200403030013.i230DCAC070272@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=48019 Change 48019 by rwatson@rwatson_tislabs on 2004/03/02 16:12:45 Integrate netperf_socket from CVS HEAD. Affected files ... .. //depot/projects/netperf_socket/sys/conf/files.i386#3 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-all.h#5 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-queue.c#4 integrate .. //depot/projects/netperf_socket/sys/dev/ata/atapi-cd.c#4 integrate .. //depot/projects/netperf_socket/sys/dev/bfe/if_bfe.c#2 integrate .. //depot/projects/netperf_socket/sys/dev/ctau/if_ct.c#2 integrate .. //depot/projects/netperf_socket/sys/dev/cx/if_cx.c#3 integrate .. //depot/projects/netperf_socket/sys/dev/md/md.c#4 integrate .. //depot/projects/netperf_socket/sys/dev/usb/uftdi.c#3 integrate .. //depot/projects/netperf_socket/sys/dev/usb/usbdevs#3 integrate .. //depot/projects/netperf_socket/sys/dev/usb/usbdevs.h#3 integrate .. //depot/projects/netperf_socket/sys/dev/usb/usbdevs_data.h#3 integrate .. //depot/projects/netperf_socket/sys/i386/conf/NOTES#4 integrate .. //depot/projects/netperf_socket/sys/kern/kern_synch.c#3 integrate .. //depot/projects/netperf_socket/sys/kern/subr_sleepqueue.c#2 integrate .. //depot/projects/netperf_socket/sys/modules/ctau/Makefile#1 branch .. //depot/projects/netperf_socket/sys/net/if_ethersubr.c#5 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_output.c#5 integrate .. //depot/projects/netperf_socket/sys/netinet6/ip6_input.c#4 integrate .. //depot/projects/netperf_socket/sys/powerpc/include/sr.h#3 integrate .. //depot/projects/netperf_socket/sys/powerpc/include/ucontext.h#2 integrate .. //depot/projects/netperf_socket/sys/powerpc/include/vmparam.h#3 integrate .. //depot/projects/netperf_socket/sys/powerpc/powerpc/copyinout.c#3 integrate .. //depot/projects/netperf_socket/sys/powerpc/powerpc/machdep.c#3 integrate .. //depot/projects/netperf_socket/sys/powerpc/powerpc/pmap.c#3 integrate .. //depot/projects/netperf_socket/sys/powerpc/powerpc/vm_machdep.c#2 integrate .. //depot/projects/netperf_socket/sys/vm/vm_contig.c#3 integrate .. //depot/projects/netperf_socket/sys/vm/vm_page.c#3 integrate Differences ... ==== //depot/projects/netperf_socket/sys/conf/files.i386#3 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.i386,v 1.466 2004/02/18 22:41:52 jhb Exp $ +# $FreeBSD: src/sys/conf/files.i386,v 1.467 2004/03/02 16:48:19 rik Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -123,6 +123,9 @@ dev/ar/if_ar_pci.c optional ar pci dev/ar/if_ar_isa.c optional ar isa dev/cm/if_cm_isa.c optional cm isa +dev/ctau/ctau.c optional ctau +dev/ctau/ctddk.c optional ctau +dev/ctau/if_ct.c optional ctau dev/cx/csigma.c optional cx dev/cx/cxddk.c optional cx dev/cx/if_cx.c optional cx ==== //depot/projects/netperf_socket/sys/dev/ata/ata-all.h#5 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.75 2004/02/29 09:35:29 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.76 2004/03/02 14:05:11 sos Exp $ */ /* ATA register defines */ @@ -193,6 +193,7 @@ u_int8_t ccb[16]; /* ATAPI command block */ struct atapi_sense sense_data; /* ATAPI request sense data */ u_int8_t sense_key; /* ATAPI request sense key */ + u_int8_t sense_cmd; /* ATAPI saved command */ } atapi; } u; ==== //depot/projects/netperf_socket/sys/dev/ata/ata-queue.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.22 2004/02/28 17:47:27 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.24 2004/03/02 16:16:54 sos Exp $"); #include "opt_ata.h" #include <sys/param.h> @@ -338,14 +338,15 @@ sizeof(struct atapi_sense), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; + request->u.atapi.sense_key = request->error; + request->u.atapi.sense_cmd = request->u.atapi.ccb[0]; bcopy(ccb, request->u.atapi.ccb, 16); - request->u.atapi.sense_key = request->error; request->data = (caddr_t)&request->u.atapi.sense_data; request->bytecount = sizeof(struct atapi_sense); request->transfersize = sizeof(struct atapi_sense); request->timeout = 5; - request->flags = - ATA_R_ATAPI | ATA_R_READ | ATA_R_IMMEDIATE | ATA_R_REQUEUE; + request->flags &= (ATA_R_ATAPI | ATA_R_QUIET); + request->flags |= (ATA_R_READ | ATA_R_IMMEDIATE | ATA_R_REQUEUE); ata_queue_request(request); return; } @@ -385,10 +386,8 @@ request->u.atapi.sense_data.sk_specific, request->u.atapi.sense_data.sk_specific1, request->u.atapi.sense_data.sk_specific2); - printf("status=%b error=%b\n", - request->status, "\20\10BUSY\7READY\6DMA" - "\5DSC\4DRQ\3CORRECTABLE\2INDEX\1ERROR", - (request->error & ATA_E_MASK), + printf("error=%b\n", + (request->u.atapi.sense_key & ATA_E_MASK), "\20\4MEDIA_CHANGE_REQUEST\3ABORTED" "\2NO_MEDIA\1ILLEGAL_LENGTH"); } @@ -466,7 +465,8 @@ static char buffer[20]; if (request->flags & ATA_R_ATAPI) { - switch (request->u.atapi.ccb[0]) { + switch (request->u.atapi.sense_cmd ? + request->u.atapi.sense_cmd : request->u.atapi.ccb[0]) { case 0x00: return ("TEST_UNIT_READY"); case 0x01: return ("REZERO"); case 0x03: return ("REQUEST_SENSE"); ==== //depot/projects/netperf_socket/sys/dev/ata/atapi-cd.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cd.c,v 1.164 2004/03/01 13:17:07 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cd.c,v 1.165 2004/03/02 14:03:43 sos Exp $"); #include "opt_ata.h" #include <sys/param.h> @@ -92,7 +92,6 @@ static int acd_read_format_caps(struct acd_softc *, struct cdr_format_capacities *); static int acd_format(struct acd_softc *, struct cdr_format_params *); static int acd_test_ready(struct ata_device *); -static int acd_request_sense(struct ata_device *, struct atapi_sense *); /* internal vars */ static u_int32_t acd_lun_map = 0; @@ -476,24 +475,38 @@ acd_geom_access(struct g_provider *pp, int dr, int dw, int de) { struct acd_softc *cdp; + struct ata_request *request; + int8_t ccb[16] = { ATAPI_TEST_UNIT_READY, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; int timeout = 60, track; + cdp = pp->geom->softc; if (cdp->device->flags & ATA_D_DETACHING) return ENXIO; + if (!(request = ata_alloc_request())) + return ENOMEM; + + request->device = cdp->device; + request->driver = cdp; + bcopy(ccb, request->u.atapi.ccb, 16); + request->flags = ATA_R_ATAPI; + request->timeout = 5; + /* wait if drive is not finished loading the medium */ while (timeout--) { - struct atapi_sense sense; - - if (!acd_test_ready(cdp->device)) - break; - acd_request_sense(cdp->device, &sense); - if (sense.sense_key == 2 && sense.asc == 4 && sense.ascq == 1) + ata_queue_request(request); + if (!request->error && + request->u.atapi.sense_data.sense_key == 2 && + request->u.atapi.sense_data.asc == 4 && + request->u.atapi.sense_data.ascq == 1) tsleep(&timeout, PRIBIO, "acdld", hz / 2); else break; } + ata_free_request(request); + if (pp->acr == 0) { if (cdp->changer_info && cdp->slot != cdp->changer_info->current_slot) { acd_select_slot(cdp); @@ -1522,16 +1535,27 @@ { int8_t ccb[16] = { ATAPI_READ_CAPACITY, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; - struct atapi_sense sense; + struct ata_request *request; int8_t dummy[8]; - ata_atapicmd(cdp->device, ccb, dummy, sizeof(dummy), ATA_R_READ, 30); - acd_request_sense(cdp->device, &sense); + if (!(request = ata_alloc_request())) + return ENOMEM; - if (sense.sksv) - *finished = ((sense.sk_specific2|(sense.sk_specific1<<8))*100)/65535; + request->device = cdp->device; + request->driver = cdp; + bcopy(ccb, request->u.atapi.ccb, 16); + request->data = dummy; + request->bytecount = sizeof(dummy); + request->transfersize = min(request->bytecount, 65534); + request->flags = ATA_R_ATAPI | ATA_R_READ; + request->timeout = 30; + ata_queue_request(request); + if (!request->error && request->u.atapi.sense_data.sksv) + *finished = ((request->u.atapi.sense_data.sk_specific2 | + (request->u.atapi.sense_data.sk_specific1<<8))*100)/65535; else *finished = 0; + ata_free_request(request); return 0; } @@ -1985,13 +2009,3 @@ return ata_atapicmd(atadev, ccb, NULL, 0, 0, 30); } - -static int -acd_request_sense(struct ata_device *atadev, struct atapi_sense *sense) -{ - int8_t ccb[16] = { ATAPI_REQUEST_SENSE, 0, 0, 0, sizeof(struct atapi_sense), - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; - - return ata_atapicmd(atadev, ccb, (caddr_t)sense, - sizeof(struct atapi_sense), ATA_R_READ, 30); -} ==== //depot/projects/netperf_socket/sys/dev/bfe/if_bfe.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/bfe/if_bfe.c,v 1.4 2003/11/14 19:00:30 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/bfe/if_bfe.c,v 1.6 2004/03/02 05:43:42 julian Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -209,10 +209,17 @@ &sc->bfe_parent_tag); /* tag for TX ring */ - error = bus_dma_tag_create(sc->bfe_parent_tag, BFE_TX_LIST_SIZE, - BFE_TX_LIST_SIZE, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, - NULL, NULL, BFE_TX_LIST_SIZE, 1, BUS_SPACE_MAXSIZE_32BIT, - 0, NULL, NULL, &sc->bfe_tx_tag); + error = bus_dma_tag_create(sc->bfe_parent_tag, + BFE_TX_LIST_SIZE, BFE_TX_LIST_SIZE, + BUS_SPACE_MAXADDR, + BUS_SPACE_MAXADDR, + NULL, NULL, + BFE_TX_LIST_SIZE, + 1, + BUS_SPACE_MAXSIZE_32BIT, + 0, + NULL, NULL, + &sc->bfe_tx_tag); if (error) { device_printf(dev, "could not allocate dma tag\n"); @@ -220,10 +227,17 @@ } /* tag for RX ring */ - error = bus_dma_tag_create(sc->bfe_parent_tag, BFE_RX_LIST_SIZE, - BFE_RX_LIST_SIZE, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, - NULL, NULL, BFE_RX_LIST_SIZE, 1, BUS_SPACE_MAXSIZE_32BIT, - 0, NULL, NULL, &sc->bfe_rx_tag); + error = bus_dma_tag_create(sc->bfe_parent_tag, + BFE_RX_LIST_SIZE, BFE_RX_LIST_SIZE, + BUS_SPACE_MAXADDR, + BUS_SPACE_MAXADDR, + NULL, NULL, + BFE_RX_LIST_SIZE, + 1, + BUS_SPACE_MAXSIZE_32BIT, + 0, + NULL, NULL, + &sc->bfe_rx_tag); if (error) { device_printf(dev, "could not allocate dma tag\n"); @@ -231,9 +245,17 @@ } /* tag for mbufs */ - error = bus_dma_tag_create(sc->bfe_parent_tag, ETHER_ALIGN, 0, - BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, NULL, NULL, MCLBYTES, - 1, BUS_SPACE_MAXSIZE_32BIT, 0, NULL, NULL, &sc->bfe_tag); + error = bus_dma_tag_create(sc->bfe_parent_tag, + ETHER_ALIGN, 0, + BUS_SPACE_MAXADDR, + BUS_SPACE_MAXADDR, + NULL, NULL, + MCLBYTES, + 1, + BUS_SPACE_MAXSIZE_32BIT, + 0, + NULL, NULL, + &sc->bfe_tag); if (error) { device_printf(dev, "could not allocate dma tag\n"); @@ -242,7 +264,8 @@ /* pre allocate dmamaps for RX list */ for (i = 0; i < BFE_RX_LIST_CNT; i++) { - error = bus_dmamap_create(sc->bfe_tag, 0, &sc->bfe_rx_ring[i].bfe_map); + error = bus_dmamap_create(sc->bfe_tag, 0, + &sc->bfe_rx_ring[i].bfe_map); if (error) { device_printf(dev, "cannot create DMA map for RX\n"); return(ENOMEM); @@ -251,7 +274,8 @@ /* pre allocate dmamaps for TX list */ for (i = 0; i < BFE_TX_LIST_CNT; i++) { - error = bus_dmamap_create(sc->bfe_tag, 0, &sc->bfe_tx_ring[i].bfe_map); + error = bus_dmamap_create(sc->bfe_tag, 0, + &sc->bfe_tx_ring[i].bfe_map); if (error) { device_printf(dev, "cannot create DMA map for TX\n"); return(ENOMEM); @@ -319,7 +343,7 @@ irq = pci_read_config(dev, BFE_PCI_INTLINE, 4); /* Reset the power state. */ - printf("bfe%d: chip is is in D%d power mode -- setting to D0\n", + printf("bfe%d: chip is is in D%d power mode -- setting to D0\n", sc->bfe_unit, pci_get_powerstate(dev)); pci_set_powerstate(dev, PCI_POWERSTATE_D0); @@ -359,7 +383,8 @@ } if (bfe_dma_alloc(dev)) { - printf("bfe%d: failed to allocate DMA resources\n", sc->bfe_unit); + printf("bfe%d: failed to allocate DMA resources\n", + sc->bfe_unit); bfe_release_resources(sc); error = ENXIO; goto fail; @@ -381,7 +406,8 @@ bfe_get_config(sc); - printf("bfe%d: Ethernet address: %6D\n", unit, sc->arpcom.ac_enaddr, ":"); + printf("bfe%d: Ethernet address: %6D\n", unit, + sc->arpcom.ac_enaddr, ":"); /* Reset the chip and turn on the PHY */ bfe_chip_reset(sc); @@ -497,20 +523,20 @@ static void bfe_tx_ring_free(struct bfe_softc *sc) { - int i; - - for(i = 0; i < BFE_TX_LIST_CNT; i++) { - if(sc->bfe_tx_ring[i].bfe_mbuf != NULL) { - m_freem(sc->bfe_tx_ring[i].bfe_mbuf); - sc->bfe_tx_ring[i].bfe_mbuf = NULL; - bus_dmamap_unload(sc->bfe_tag, - sc->bfe_tx_ring[i].bfe_map); - bus_dmamap_destroy(sc->bfe_tag, - sc->bfe_tx_ring[i].bfe_map); - } - } - bzero(sc->bfe_tx_list, BFE_TX_LIST_SIZE); - bus_dmamap_sync(sc->bfe_tx_tag, sc->bfe_tx_map, BUS_DMASYNC_PREREAD); + int i; + + for(i = 0; i < BFE_TX_LIST_CNT; i++) { + if(sc->bfe_tx_ring[i].bfe_mbuf != NULL) { + m_freem(sc->bfe_tx_ring[i].bfe_mbuf); + sc->bfe_tx_ring[i].bfe_mbuf = NULL; + bus_dmamap_unload(sc->bfe_tag, + sc->bfe_tx_ring[i].bfe_map); + bus_dmamap_destroy(sc->bfe_tag, + sc->bfe_tx_ring[i].bfe_map); + } + } + bzero(sc->bfe_tx_list, BFE_TX_LIST_SIZE); + bus_dmamap_sync(sc->bfe_tx_tag, sc->bfe_tx_map, BUS_DMASYNC_PREREAD); } static void @@ -690,7 +716,7 @@ static void bfe_chip_reset(struct bfe_softc *sc) { - u_int32_t val; + u_int32_t val; BFE_LOCK(sc); @@ -698,7 +724,8 @@ bfe_pci_setup(sc, BFE_INTVEC_ENET0); /* is core up? */ - val = CSR_READ_4(sc, BFE_SBTMSLOW) & (BFE_RESET | BFE_REJECT | BFE_CLOCK); + val = CSR_READ_4(sc, BFE_SBTMSLOW) & + (BFE_RESET | BFE_REJECT | BFE_CLOCK); if (val == BFE_CLOCK) { /* It is, so shut it down */ CSR_WRITE_4(sc, BFE_RCV_LAZY, 0); @@ -707,7 +734,8 @@ CSR_WRITE_4(sc, BFE_DMATX_CTRL, 0); sc->bfe_tx_cnt = sc->bfe_tx_prod = sc->bfe_tx_cons = 0; if (CSR_READ_4(sc, BFE_DMARX_STAT) & BFE_STAT_EMASK) - bfe_wait_bit(sc, BFE_DMARX_STAT, BFE_STAT_SIDLE, 100, 0); + bfe_wait_bit(sc, BFE_DMARX_STAT, BFE_STAT_SIDLE, + 100, 0); CSR_WRITE_4(sc, BFE_DMARX_CTRL, 0); sc->bfe_rx_prod = sc->bfe_rx_cons = 0; } @@ -738,8 +766,8 @@ BFE_LAZY_FC_MASK)); /* - * We don't want lazy interrupts, so just send them at the end of a frame, - * please + * We don't want lazy interrupts, so just send them at + * the end of a frame, please */ BFE_OR(sc, BFE_RCV_LAZY, 0); @@ -751,8 +779,8 @@ CSR_WRITE_4(sc, BFE_TX_WMARK, 56); /* - * Initialise DMA channels - not forgetting dma addresses need to be added - * to BFE_PCI_DMA + * Initialise DMA channels + * - not forgetting dma addresses need to be added to BFE_PCI_DMA */ CSR_WRITE_4(sc, BFE_DMATX_CTRL, BFE_TX_CTRL_ENABLE); CSR_WRITE_4(sc, BFE_DMATX_ADDR, sc->bfe_tx_dma + BFE_PCI_DMA); @@ -774,8 +802,8 @@ return; /* - * Set reject, wait for it set, then wait for the core to stop being busy - * Then set reset and reject and enable the clocks + * Set reject, wait for it set, then wait for the core to stop + * being busy, then set reset and reject and enable the clocks. */ CSR_WRITE_4(sc, BFE_SBTMSLOW, (BFE_REJECT | BFE_CLOCK)); bfe_wait_bit(sc, BFE_SBTMSLOW, BFE_REJECT, 1000, 0); @@ -870,8 +898,8 @@ TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; - bfe_cam_write(sc, LLADDR((struct sockaddr_dl *)ifma->ifma_addr), - i++); + bfe_cam_write(sc, + LLADDR((struct sockaddr_dl *)ifma->ifma_addr), i++); } } @@ -923,24 +951,27 @@ if(sc->bfe_tx_tag != NULL) { bus_dmamap_unload(sc->bfe_tx_tag, sc->bfe_tx_map); - bus_dmamem_free(sc->bfe_tx_tag, sc->bfe_tx_list, sc->bfe_tx_map); + bus_dmamem_free(sc->bfe_tx_tag, sc->bfe_tx_list, + sc->bfe_tx_map); bus_dma_tag_destroy(sc->bfe_tx_tag); sc->bfe_tx_tag = NULL; } if(sc->bfe_rx_tag != NULL) { bus_dmamap_unload(sc->bfe_rx_tag, sc->bfe_rx_map); - bus_dmamem_free(sc->bfe_rx_tag, sc->bfe_rx_list, sc->bfe_rx_map); + bus_dmamem_free(sc->bfe_rx_tag, sc->bfe_rx_list, + sc->bfe_rx_map); bus_dma_tag_destroy(sc->bfe_rx_tag); sc->bfe_rx_tag = NULL; } if(sc->bfe_tag != NULL) { for(i = 0; i < BFE_TX_LIST_CNT; i++) { - bus_dmamap_destroy(sc->bfe_tag, sc->bfe_tx_ring[i].bfe_map); + bus_dmamap_destroy(sc->bfe_tag, + sc->bfe_tx_ring[i].bfe_map); } bus_dma_tag_destroy(sc->bfe_tag); - sc->bfe_tag = NULL; + sc->bfe_tag = NULL; } if(sc->bfe_parent_tag != NULL) @@ -1074,9 +1105,9 @@ chipidx = CSR_READ_4(sc, BFE_DMATX_STAT) & BFE_STAT_CDMASK; chipidx /= sizeof(struct bfe_desc); - i = sc->bfe_tx_cons; + i = sc->bfe_tx_cons; /* Go through the mbufs and free those that have been transmitted */ - while(i != chipidx) { + while(i != chipidx) { struct bfe_data *r = &sc->bfe_tx_ring[i]; if(r->bfe_mbuf != NULL) { ifp->if_opackets++; @@ -1084,8 +1115,8 @@ r->bfe_mbuf = NULL; bus_dmamap_unload(sc->bfe_tag, r->bfe_map); } - sc->bfe_tx_cnt--; - BFE_INC(i, BFE_TX_LIST_CNT); + sc->bfe_tx_cnt--; + BFE_INC(i, BFE_TX_LIST_CNT); } if(i != sc->bfe_tx_cons) { @@ -1138,6 +1169,7 @@ if (flags & BFE_RX_FLAG_SERR) ifp->if_collisions++; bfe_list_newbuf(sc, cons, m); + BFE_INC(cons, BFE_RX_LIST_CNT); continue; } @@ -1148,6 +1180,7 @@ } else { bfe_list_newbuf(sc, cons, m); ifp->if_ierrors++; + BFE_INC(cons, BFE_RX_LIST_CNT); continue; } @@ -1157,7 +1190,7 @@ (*ifp->if_input)(ifp, m); BFE_LOCK(sc); - BFE_INC(cons, BFE_RX_LIST_CNT); + BFE_INC(cons, BFE_RX_LIST_CNT); } sc->bfe_rx_cons = cons; BFE_UNLOCK(sc); @@ -1225,8 +1258,8 @@ { struct bfe_desc *d = NULL; struct bfe_data *r = NULL; - struct mbuf *m; - u_int32_t frag, cur, cnt = 0; + struct mbuf *m; + u_int32_t frag, cur, cnt = 0; int chainlen = 0; if(BFE_TX_LIST_CNT - sc->bfe_tx_cnt < 2) @@ -1273,15 +1306,20 @@ /* Set start of frame */ d->bfe_ctrl |= BFE_DESC_SOF; if(cur == BFE_TX_LIST_CNT - 1) - /* Tell the chip to wrap to the start of the descriptor list */ + /* + * Tell the chip to wrap to the start of + * the descriptor list + */ d->bfe_ctrl |= BFE_DESC_EOT; - bus_dmamap_load(sc->bfe_tag, r->bfe_map, mtod(m, void*), m->m_len, - bfe_dma_map_desc, d, 0); - bus_dmamap_sync(sc->bfe_tag, r->bfe_map, BUS_DMASYNC_PREREAD); + bus_dmamap_load(sc->bfe_tag, + r->bfe_map, mtod(m, void*), m->m_len, + bfe_dma_map_desc, d, 0); + bus_dmamap_sync(sc->bfe_tag, r->bfe_map, + BUS_DMASYNC_PREREAD); frag = cur; - BFE_INC(cur, BFE_TX_LIST_CNT); + BFE_INC(cur, BFE_TX_LIST_CNT); cnt++; } } @@ -1314,8 +1352,8 @@ BFE_LOCK(sc); /* - * not much point trying to send if the link is down or we have nothing to - * send + * Not much point trying to send if the link is down + * or we have nothing to send. */ if (!sc->bfe_link && ifp->if_snd.ifq_len < 10) { BFE_UNLOCK(sc); @@ -1333,8 +1371,8 @@ break; /* - * Pack the data into the tx ring. If we dont have enough room, let - * the chip drain the ring + * Pack the data into the tx ring. If we dont have + * enough room, let the chip drain the ring. */ if(bfe_encap(sc, m_head, &idx)) { IF_PREPEND(&ifp->if_snd, m_head); @@ -1378,8 +1416,8 @@ bfe_chip_reset(sc); if (bfe_list_rx_init(sc) == ENOBUFS) { - printf("bfe%d: bfe_init failed. Not enough memory for list buffers\n", - sc->bfe_unit); + printf("bfe%d: bfe_init: Not enough memory for list buffers\n", + sc->bfe_unit); bfe_stop(sc); return; } @@ -1473,7 +1511,8 @@ case SIOCGIFMEDIA: case SIOCSIFMEDIA: mii = device_get_softc(sc->bfe_miibus); - error = ifmedia_ioctl(ifp, ifr, &mii->mii_media, command); + error = ifmedia_ioctl(ifp, ifr, &mii->mii_media, + command); break; default: error = ether_ioctl(ifp, command, data); @@ -1548,7 +1587,7 @@ ifp = &sc->arpcom.ac_if; bfe_chip_halt(sc); - bfe_tx_ring_free(sc); + bfe_tx_ring_free(sc); bfe_rx_ring_free(sc); ifp->if_flags &= ~(IFF_RUNNING | IFF_OACTIVE); ==== //depot/projects/netperf_socket/sys/dev/ctau/if_ct.c#2 (text+ko) ==== @@ -18,20 +18,20 @@ * as long as this message is kept with the software, all derivative * works or modified versions. * - * Cronyx Id: if_ct.c,v 1.1.2.20.2.1 2004/02/13 14:48:24 rik Exp $ + * Cronyx Id: if_ct.c,v 1.1.2.22 2004/02/26 19:06:51 rik Exp $ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/ctau/if_ct.c,v 1.1 2004/02/23 20:19:00 rik Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ctau/if_ct.c,v 1.2 2004/03/02 16:39:40 rik Exp $"); #include <sys/param.h> #if __FreeBSD_version >= 500000 -# define NCT 1 +# define NCTAU 1 #else -# include "ct.h" +# include "ctau.h" #endif -#if NCT > 0 +#if NCTAU > 0 #include <sys/proc.h> #include <sys/systm.h> #include <sys/kernel.h> @@ -88,7 +88,7 @@ # if __FreeBSD_version < 500000 # include "sppp.h" # if NSPPP <= 0 -# error The device ct requires sppp or netgraph. +# error The device ctau requires sppp or netgraph. # endif # endif # include <net/if_sppp.h> @@ -188,9 +188,9 @@ static void ct_initialize (void *softc); #endif -static ct_board_t *adapter [NCT]; -static drv_t *channel [NCT*NCHAN]; -static struct callout_handle led_timo [NCT]; +static ct_board_t *adapter [NCTAU]; +static drv_t *channel [NCTAU*NCHAN]; +static struct callout_handle led_timo [NCTAU]; static struct callout_handle timeout_handle; /* @@ -234,7 +234,7 @@ drv_t *d; int s, i; - for (i=0; i<NCT*NCHAN; ++i) { + for (i=0; i<NCTAU*NCHAN; ++i) { d = channel[i]; if (! d) continue; @@ -307,7 +307,7 @@ return 1; } } - /* printf ("ctx%d: irq %d not functional, mask=0x%04x, busy=0x%04x\n", + /* printf ("ct%d: irq %d not functional, mask=0x%04x, busy=0x%04x\n", b->num, irq, mask, busy); */ ct_probe_irq (b, 0); return 0; @@ -372,7 +372,7 @@ bus_set_resource (child, SYS_RES_IOPORT, 0, iobase, NPORT); - if (devcount >= NCT) + if (devcount >= NCTAU) break; } } else { @@ -1260,7 +1260,7 @@ { drv_t *d; - if (minor(dev) >= NCT*NCHAN || ! (d = channel[minor(dev)])) + if (minor(dev) >= NCTAU*NCHAN || ! (d = channel[minor(dev)])) return ENXIO; CT_DEBUG2 (d, ("ct_open\n")); @@ -1325,7 +1325,7 @@ switch (cmd) { case SERIAL_GETREGISTERED: bzero (mask, sizeof(mask)); - for (s=0; s<NCT*NCHAN; ++s) + for (s=0; s<NCTAU*NCHAN; ++s) if (channel [s]) mask [s/8] |= 1 << (s & 7); bcopy (mask, data, sizeof (mask)); @@ -1885,7 +1885,16 @@ .d_dump = nodump, .d_flags = D_NAGGED, }; -#else /* __FreeBSD_version > 501000 */ +#elif __FreeBSD_version < 502103 +static struct cdevsw ct_cdevsw = { + .d_open = ct_open, + .d_close = ct_close, + .d_ioctl = ct_ioctl, + .d_name = "ct", + .d_maj = CDEV_MAJOR, + .d_flags = D_NAGGED, +}; +#else /* __FreeBSD_version >= 502103 */ static struct cdevsw ct_cdevsw = { .d_version = D_VERSION, .d_open = ct_open, @@ -1893,7 +1902,7 @@ .d_ioctl = ct_ioctl, .d_name = "ct", .d_maj = CDEV_MAJOR, - .d_flags = D_NAGGED | D_NEEDGIANT, + .d_flags = D_NEEDGIANT, }; #endif /* __FreeBSD_version > 501000 */ @@ -2438,7 +2447,7 @@ { int i; - for (i=0;i<NCT; ++i) { + for (i=0;i<NCTAU; ++i) { struct isa_device id = {-1, &ctdriver, -1, 0, -1, 0, 0, (inthand2_t *)ct_intr, i, 0, 0, 0, 0 ,0 ,1 ,0 ,0}; disable_intr(); if (!ct_probe (&id)) { @@ -2467,7 +2476,7 @@ int i, s; /* Check if the device is busy (open). */ - for (i=0; i<NCT*NCHAN; ++i) { + for (i=0; i<NCTAU*NCHAN; ++i) { drv_t *d = channel[i]; if (!d) @@ -2480,14 +2489,14 @@ s = splimp (); /* Deactivate the timeout routine. */ - for (i=0; i<NCT; ++i) { + for (i=0; i<NCTAU; ++i) { if (!adapter [i]) continue; untimeout (ct_timeout, 0, timeout_handle); break; } - for (i=0; i<NCT; ++i) { + for (i=0; i<NCTAU; ++i) { ct_board_t *b = adapter [i]; if (!b || ! b->port) @@ -2496,7 +2505,7 @@ ct_close_board (b); } - for (i=0; i<NCT; ++i) { + for (i=0; i<NCTAU; ++i) { ct_board_t *b = adapter [i]; if (!b || ! b->port) @@ -2506,7 +2515,7 @@ untimeout (ct_led_off, b, led_timo[i]); } - for (i=0; i<NCT; ++i) { + for (i=0; i<NCTAU; ++i) { ct_board_t *b = adapter [i]; if (!b || ! b->port) @@ -2520,7 +2529,7 @@ } /* Detach the interfaces, free buffer memory. */ - for (i=0; i<NCT*NCHAN; ++i) { + for (i=0; i<NCTAU*NCHAN; ++i) { drv_t *d = channel[i]; if (!d) @@ -2557,7 +2566,7 @@ /* Deallocate buffers. */ /* free (d, M_DEVBUF);*/ } - for (i=0; i<NCT; ++i) { + for (i=0; i<NCTAU; ++i) { ct_board_t *b = adapter [i]; if (!b) continue; @@ -2613,10 +2622,16 @@ static int load_count = 0; struct cdevsw *cdsw; +#if __FreeBSD_version >= 502103 dev = udev2dev (makeudev(CDEV_MAJOR, 0)); +#else + dev = makedev (CDEV_MAJOR, 0); +#endif switch (type) { case MOD_LOAD: - if ((cdsw = devsw (dev)) && cdsw->d_maj == CDEV_MAJOR) { + if (dev != NODEV && + (cdsw = devsw (dev)) && + cdsw->d_maj == CDEV_MAJOR) { printf ("Tau-ISA driver is already in system\n"); return (ENXIO); } @@ -2734,4 +2749,4 @@ SYSINIT (ctdev, SI_SUB_DRIVERS, SI_ORDER_MIDDLE+CDEV_MAJOR, ct_drvinit, 0) #endif /* KLD_MODULE */ #endif /* __FreeBSD_version < 400000 */ -#endif /* NCT */ +#endif /* NCTAU */ ==== //depot/projects/netperf_socket/sys/dev/cx/if_cx.c#3 (text+ko) ==== @@ -19,10 +19,10 @@ * as long as this message is kept with the software, all derivative * works or modified versions. * - * Cronyx Id: if_cx.c,v 1.1.2.22 2004/02/05 17:10:19 rik Exp $ + * Cronyx Id: if_cx.c,v 1.1.2.23 2004/02/26 17:56:40 rik Exp $ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.6 2004/02/21 21:32:14 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.7 2004/03/02 16:44:07 rik Exp $"); #include <sys/param.h> @@ -2548,9 +2548,21 @@ .d_dump = nodump, .d_flags = D_TTY, }; -#else /* __FreeBSD_version > 501000 */ +#elif __FreeBSD_version < 502103 +static struct cdevsw cx_cdevsw = { + .d_open = cx_open, + .d_close = cx_close, + .d_read = cx_read, + .d_write = cx_write, + .d_ioctl = cx_ioctl, + .d_poll = ttypoll, + .d_name = "cx", + .d_maj = CDEV_MAJOR, + .d_flags = D_TTY, +}; +#else /* __FreeBSD_version >= 502103 */ static struct cdevsw cx_cdevsw = { - .d_version = D_VERSION, + .d_version = D_VERSION, .d_open = cx_open, .d_close = cx_close, .d_read = cx_read, @@ -3105,10 +3117,16 @@ static int load_count = 0; struct cdevsw *cdsw; +#if __FreeBSD_version >= 502103 dev = udev2dev (makeudev(CDEV_MAJOR, 0)); +#else + dev = makedev (CDEV_MAJOR, 0); +#endif switch (type) { case MOD_LOAD: - if ((cdsw = devsw (dev)) && cdsw->d_maj == CDEV_MAJOR) { + if (dev != NODEV && + (cdsw = devsw (dev)) && + cdsw->d_maj == CDEV_MAJOR) { printf ("Sigma driver is already in system\n"); return (EEXIST); } ==== //depot/projects/netperf_socket/sys/dev/md/md.c#4 (text+ko) ==== @@ -6,7 +6,7 @@ * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp * ---------------------------------------------------------------------------- * - * $FreeBSD: src/sys/dev/md/md.c,v 1.112 2004/02/29 15:58:54 cperciva Exp $ + * $FreeBSD: src/sys/dev/md/md.c,v 1.113 2004/03/02 20:13:23 phk Exp $ * */ @@ -1050,6 +1050,10 @@ sc->secsize = DEV_BSIZE; sc->npage = mdio->md_size / (PAGE_SIZE / DEV_BSIZE); sc->nsect = sc->npage * (PAGE_SIZE / DEV_BSIZE); + if (mdio->md_fwsectors != 0) + sc->fwsectors = mdio->md_fwsectors; + if (mdio->md_fwheads != 0) + sc->fwheads = mdio->md_fwheads; sc->object = vm_pager_allocate(OBJT_SWAP, NULL, PAGE_SIZE * (vm_offset_t)sc->npage, VM_PROT_DEFAULT, 0); sc->flags = mdio->md_options & MD_FORCE; ==== //depot/projects/netperf_socket/sys/dev/usb/uftdi.c#3 (text+ko) ==== @@ -37,7 +37,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/usb/uftdi.c,v 1.11 2004/01/24 21:23:12 sobomax Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/uftdi.c,v 1.12 2004/03/02 19:03:26 peter Exp $"); /* * FTDI FT8U100AX serial adapter driver @@ -153,7 +153,12 @@ if (uaa->vendor == USB_VENDOR_FTDI && (uaa->product == USB_PRODUCT_FTDI_SERIAL_8U100AX || uaa->product == USB_PRODUCT_FTDI_SERIAL_8U232AM || - uaa->product == USB_PRODUCT_FTDI_CFA_631)) + uaa->product == USB_PRODUCT_FTDI_CFA_631 || + uaa->product == USB_PRODUCT_FTDI_USBSERIAL || + uaa->product == USB_PRODUCT_FTDI_MX2_3 || + uaa->product == USB_PRODUCT_FTDI_MX4_5 || + uaa->product == USB_PRODUCT_FTDI_LK202 || + uaa->product == USB_PRODUCT_FTDI_LK204)) return (UMATCH_VENDOR_PRODUCT); return (UMATCH_NONE); @@ -207,6 +212,11 @@ break; case USB_PRODUCT_FTDI_SERIAL_8U232AM: case USB_PRODUCT_FTDI_CFA_631: + case USB_PRODUCT_FTDI_USBSERIAL: + case USB_PRODUCT_FTDI_MX2_3: + case USB_PRODUCT_FTDI_MX4_5: + case USB_PRODUCT_FTDI_LK202: + case USB_PRODUCT_FTDI_LK204: sc->sc_type = UFTDI_TYPE_8U232AM; sc->sc_hdrlen = 0; break; ==== //depot/projects/netperf_socket/sys/dev/usb/usbdevs#3 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/sys/dev/usb/usbdevs,v 1.163 2004/02/28 00:12:46 sanpei Exp $ +$FreeBSD: src/sys/dev/usb/usbdevs,v 1.164 2004/03/02 19:01:30 peter Exp $ /* * Copyright (c) 1998, 1999, 2000 The NetBSD Foundation, Inc. @@ -898,6 +898,13 @@ /* Macally products */ product MACALLY MOUSE1 0x0101 mouse +/* Matrix Orbital products */ +product FTDI USBSERIAL 0xfa00 Matrix Orbital USB Serial +product FTDI MX2_3 0xfa01 Matrix Orbital MX2 or MX3 >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200403030013.i230DCAC070272>