From owner-p4-projects@FreeBSD.ORG Tue Apr 14 18:17:33 2009 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 97A1C1065E20; Tue, 14 Apr 2009 18:17:32 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1945E1065E1E for ; Tue, 14 Apr 2009 18:17:32 +0000 (UTC) (envelope-from zec@fer.hr) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id F07988FC12 for ; Tue, 14 Apr 2009 18:17:31 +0000 (UTC) (envelope-from zec@fer.hr) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n3EIHV5G013830 for ; Tue, 14 Apr 2009 18:17:31 GMT (envelope-from zec@fer.hr) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n3EIHVWV013828 for perforce@freebsd.org; Tue, 14 Apr 2009 18:17:31 GMT (envelope-from zec@fer.hr) Date: Tue, 14 Apr 2009 18:17:31 GMT Message-Id: <200904141817.n3EIHVWV013828@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zec@fer.hr using -f From: Marko Zec To: Perforce Change Reviews Cc: Subject: PERFORCE change 160624 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Apr 2009 18:17:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=160624 Change 160624 by zec@zec_amdx2 on 2009/04/14 18:16:50 IFC @ 160621 Affected files ... .. //depot/projects/vimage/src/sys/amd64/amd64/busdma_machdep.c#9 integrate .. //depot/projects/vimage/src/sys/arm/arm/busdma_machdep.c#14 integrate .. //depot/projects/vimage/src/sys/boot/i386/libi386/biosdisk.c#6 integrate .. //depot/projects/vimage/src/sys/boot/sparc64/loader/main.c#10 integrate .. //depot/projects/vimage/src/sys/dev/agp/agp.c#8 integrate .. //depot/projects/vimage/src/sys/dev/ath/ath_hal/ah.c#7 integrate .. //depot/projects/vimage/src/sys/dev/ath/ath_hal/ar5210/ar5210_phy.c#2 integrate .. //depot/projects/vimage/src/sys/dev/ath/ath_hal/ar5211/ar5211_phy.c#2 integrate .. //depot/projects/vimage/src/sys/dev/ath/ath_hal/ar5212/ar5212_phy.c#3 integrate .. //depot/projects/vimage/src/sys/dev/ath/ath_rate/sample/sample.c#11 integrate .. //depot/projects/vimage/src/sys/dev/ath/if_ath.c#34 integrate .. //depot/projects/vimage/src/sys/dev/e1000/if_em.c#6 integrate .. //depot/projects/vimage/src/sys/dev/e1000/if_em.h#3 integrate .. //depot/projects/vimage/src/sys/dev/e1000/if_igb.c#7 integrate .. //depot/projects/vimage/src/sys/dev/joy/joy.c#3 integrate .. //depot/projects/vimage/src/sys/dev/pccard/pccarddevs#13 integrate .. //depot/projects/vimage/src/sys/dev/powermac_nvram/powermac_nvram.c#6 integrate .. //depot/projects/vimage/src/sys/dev/tdfx/tdfx_pci.c#4 integrate .. //depot/projects/vimage/src/sys/dev/twa/tw_osl_freebsd.c#9 integrate .. //depot/projects/vimage/src/sys/dev/twe/twe_freebsd.c#4 integrate .. //depot/projects/vimage/src/sys/i386/i386/busdma_machdep.c#11 integrate .. //depot/projects/vimage/src/sys/ia64/ia64/busdma_machdep.c#7 integrate .. //depot/projects/vimage/src/sys/kern/vfs_vnops.c#22 integrate .. //depot/projects/vimage/src/sys/net/if.c#76 integrate .. //depot/projects/vimage/src/sys/net/if_var.h#31 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_node.c#21 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_tdma.c#6 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_indata.c#33 integrate .. //depot/projects/vimage/src/sys/nfsclient/nfs_socket.c#16 integrate .. //depot/projects/vimage/src/sys/powerpc/aim/trap_subr.S#8 integrate Differences ... ==== //depot/projects/vimage/src/sys/amd64/amd64/busdma_machdep.c#9 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.88 2009/02/09 18:03:31 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.89 2009/04/13 19:20:32 kib Exp $"); #include #include @@ -606,7 +606,10 @@ vendaddr = (vm_offset_t)buf + buflen; while (vaddr < vendaddr) { - paddr = pmap_kextract(vaddr); + if (pmap) + paddr = pmap_extract(pmap, vaddr); + else + paddr = pmap_kextract(vaddr); if (run_filter(dmat, paddr) != 0) map->pagesneeded++; vaddr += (PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK)); ==== //depot/projects/vimage/src/sys/arm/arm/busdma_machdep.c#14 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.44 2009/02/09 18:03:31 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.45 2009/04/13 19:20:32 kib Exp $"); /* * ARM bus dma support routines @@ -669,8 +669,8 @@ } static int -_bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, - bus_size_t buflen, int flags) +_bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, pmap_t pmap, + void *buf, bus_size_t buflen, int flags) { vm_offset_t vaddr; vm_offset_t vendaddr; @@ -689,7 +689,10 @@ vendaddr = (vm_offset_t)buf + buflen; while (vaddr < vendaddr) { - paddr = pmap_kextract(vaddr); + if (pmap != NULL) + paddr = pmap_extract(pmap, vaddr); + else + paddr = pmap_kextract(vaddr); if (((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) && run_filter(dmat, paddr) != 0) map->pagesneeded++; @@ -745,7 +748,8 @@ bmask = ~(dmat->boundary - 1); if ((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) { - error = _bus_dmamap_count_pages(dmat, map, buf, buflen, flags); + error = _bus_dmamap_count_pages(dmat, map, pmap, buf, buflen, + flags); if (error) return (error); } ==== //depot/projects/vimage/src/sys/boot/i386/libi386/biosdisk.c#6 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.58 2009/03/12 20:41:52 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.59 2009/04/14 14:19:18 jhb Exp $"); /* * BIOS disk device handling. @@ -83,7 +83,7 @@ int od_cyl; /* BIOS geometry */ int od_hds; int od_sec; - int od_boff; /* block offset from beginning of BIOS disk */ + daddr_t od_boff; /* block offset from beginning of BIOS disk */ int od_flags; #define BD_MODEINT13 0x0000 #define BD_MODEEDD1 0x0001 ==== //depot/projects/vimage/src/sys/boot/sparc64/loader/main.c#10 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/sparc64/loader/main.c,v 1.40 2009/02/10 21:48:42 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/sparc64/loader/main.c,v 1.41 2009/04/13 19:43:37 marius Exp $"); /* * FreeBSD/sparc64 kernel loader - machine dependent part @@ -472,7 +472,7 @@ reg = rdpr(pstate); wrpr(pstate, reg & ~PSTATE_IE, 0); stxa(AA_DMMU_TAR, ASI_DMMU, - TLB_TAR_VA(vpn) | TLB_TAR_CTX(TLB_CTX_KERNEL)); + TLB_TAR_VA(vpn) | TLB_TAR_CTX(TLB_CTX_KERNEL)); stxa(0, ASI_DTLB_DATA_IN_REG, data); membar(Sync); wrpr(pstate, reg, 0); @@ -497,7 +497,7 @@ continue; stxa(AA_IMMU_TAR, ASI_IMMU, - TLB_TAR_VA(vpn) | TLB_TAR_CTX(TLB_CTX_KERNEL)); + TLB_TAR_VA(vpn) | TLB_TAR_CTX(TLB_CTX_KERNEL)); stxa(TLB_DAR_SLOT(i), ASI_ITLB_DATA_ACCESS_REG, data); flush(PROMBASE); break; @@ -509,7 +509,7 @@ } stxa(AA_IMMU_TAR, ASI_IMMU, - TLB_TAR_VA(vpn) | TLB_TAR_CTX(TLB_CTX_KERNEL)); + TLB_TAR_VA(vpn) | TLB_TAR_CTX(TLB_CTX_KERNEL)); stxa(0, ASI_ITLB_DATA_IN_REG, data); flush(PROMBASE); wrpr(pstate, reg, 0); ==== //depot/projects/vimage/src/sys/dev/agp/agp.c#8 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/agp/agp.c,v 1.64 2009/03/20 18:30:20 rnoland Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/agp/agp.c,v 1.65 2009/04/14 13:11:34 ed Exp $"); #include "opt_agp.h" #include "opt_bus.h" @@ -81,7 +81,6 @@ }; static devclass_t agp_devclass; -#define KDEV2DEV(kdev) devclass_get_device(agp_devclass, dev2unit(kdev)) /* Helper functions for implementing chipset mini drivers. */ @@ -254,11 +253,8 @@ sc->as_nextid = 1; sc->as_devnode = make_dev(&agp_cdevsw, - device_get_unit(dev), - UID_ROOT, - GID_WHEEL, - 0600, - "agpgart"); + 0, UID_ROOT, GID_WHEEL, 0600, "agpgart"); + sc->as_devnode->si_drv1 = dev; return 0; } @@ -802,7 +798,7 @@ static int agp_open(struct cdev *kdev, int oflags, int devtype, struct thread *td) { - device_t dev = KDEV2DEV(kdev); + device_t dev = kdev->si_drv1; struct agp_softc *sc = device_get_softc(dev); if (!sc->as_isopen) { @@ -816,7 +812,7 @@ static int agp_close(struct cdev *kdev, int fflag, int devtype, struct thread *td) { - device_t dev = KDEV2DEV(kdev); + device_t dev = kdev->si_drv1; struct agp_softc *sc = device_get_softc(dev); struct agp_memory *mem; @@ -839,7 +835,7 @@ static int agp_ioctl(struct cdev *kdev, u_long cmd, caddr_t data, int fflag, struct thread *td) { - device_t dev = KDEV2DEV(kdev); + device_t dev = kdev->si_drv1; switch (cmd) { case AGPIOC_INFO: @@ -874,7 +870,7 @@ static int agp_mmap(struct cdev *kdev, vm_offset_t offset, vm_paddr_t *paddr, int prot) { - device_t dev = KDEV2DEV(kdev); + device_t dev = kdev->si_drv1; struct agp_softc *sc = device_get_softc(dev); if (offset > AGP_GET_APERTURE(dev)) ==== //depot/projects/vimage/src/sys/dev/ath/ath_hal/ah.c#7 (text+ko) ==== @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $FreeBSD: src/sys/dev/ath/ath_hal/ah.c,v 1.8 2009/03/12 00:09:29 sam Exp $ + * $FreeBSD: src/sys/dev/ath/ath_hal/ah.c,v 1.9 2009/04/13 21:01:08 sam Exp $ */ #include "opt_ah.h" @@ -287,8 +287,7 @@ + (numSymbols * OFDM_QUARTER_SYMBOL_TIME); break; case IEEE80211_T_TURBO: - /* we still save OFDM rates in kbps - so double them */ - bitsPerSymbol = ((kbps << 1) * TURBO_SYMBOL_TIME) / 1000; + bitsPerSymbol = (kbps * TURBO_SYMBOL_TIME) / 1000; HALASSERT(bitsPerSymbol != 0); numBits = TURBO_PLCP_BITS + (frameLen << 3); ==== //depot/projects/vimage/src/sys/dev/ath/ath_hal/ar5210/ar5210_phy.c#2 (text+ko) ==== @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: ar5210_phy.c,v 1.3 2008/11/10 01:19:37 sam Exp $ + * $FreeBSD: src/sys/dev/ath/ath_hal/ar5210/ar5210_phy.c,v 1.2 2009/04/13 21:01:08 sam Exp $ */ #include "opt_ah.h" @@ -50,14 +50,14 @@ { /* short ctrl */ /* valid rateCode Preamble dot11Rate Rate */ -/* 6 Mb */ { AH_TRUE, TURBO, 6000, 0x0b, 0x00, (0x80|12), 0 }, -/* 9 Mb */ { AH_TRUE, TURBO, 9000, 0x0f, 0x00, 18, 0 }, -/* 12 Mb */ { AH_TRUE, TURBO, 12000, 0x0a, 0x00, (0x80|24), 2 }, -/* 18 Mb */ { AH_TRUE, TURBO, 18000, 0x0e, 0x00, 36, 2 }, -/* 24 Mb */ { AH_TRUE, TURBO, 24000, 0x09, 0x00, (0x80|48), 4 }, -/* 36 Mb */ { AH_TRUE, TURBO, 36000, 0x0d, 0x00, 72, 4 }, -/* 48 Mb */ { AH_TRUE, TURBO, 48000, 0x08, 0x00, 96, 4 }, -/* 54 Mb */ { AH_TRUE, TURBO, 54000, 0x0c, 0x00, 108, 4 } +/* 6 Mb */ { AH_TRUE, TURBO, 12000, 0x0b, 0x00, (0x80|12), 0 }, +/* 9 Mb */ { AH_TRUE, TURBO, 18000, 0x0f, 0x00, 18, 0 }, +/* 12 Mb */ { AH_TRUE, TURBO, 24000, 0x0a, 0x00, (0x80|24), 2 }, +/* 18 Mb */ { AH_TRUE, TURBO, 36000, 0x0e, 0x00, 36, 2 }, +/* 24 Mb */ { AH_TRUE, TURBO, 48000, 0x09, 0x00, (0x80|48), 4 }, +/* 36 Mb */ { AH_TRUE, TURBO, 72000, 0x0d, 0x00, 72, 4 }, +/* 48 Mb */ { AH_TRUE, TURBO, 96000, 0x08, 0x00, 96, 4 }, +/* 54 Mb */ { AH_TRUE, TURBO, 108000, 0x0c, 0x00, 108, 4 } }, }; ==== //depot/projects/vimage/src/sys/dev/ath/ath_hal/ar5211/ar5211_phy.c#2 (text+ko) ==== @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: ar5211_phy.c,v 1.3 2008/11/10 01:19:37 sam Exp $ + * $FreeBSD: src/sys/dev/ath/ath_hal/ar5211/ar5211_phy.c,v 1.2 2009/04/13 21:01:08 sam Exp $ */ #include "opt_ah.h" @@ -51,14 +51,14 @@ { /* short ctrl */ /* valid rateCode Preamble dot11Rate Rate */ -/* 6 Mb */ { AH_TRUE, TURBO, 6000, 0x0b, 0x00, (0x80|12), 0 }, -/* 9 Mb */ { AH_TRUE, TURBO, 9000, 0x0f, 0x00, 18, 0 }, -/* 12 Mb */ { AH_TRUE, TURBO, 12000, 0x0a, 0x00, (0x80|24), 2 }, -/* 18 Mb */ { AH_TRUE, TURBO, 18000, 0x0e, 0x00, 36, 2 }, -/* 24 Mb */ { AH_TRUE, TURBO, 24000, 0x09, 0x00, (0x80|48), 4 }, -/* 36 Mb */ { AH_TRUE, TURBO, 36000, 0x0d, 0x00, 72, 4 }, -/* 48 Mb */ { AH_TRUE, TURBO, 48000, 0x08, 0x00, 96, 4 }, -/* 54 Mb */ { AH_TRUE, TURBO, 54000, 0x0c, 0x00, 108, 4 } +/* 6 Mb */ { AH_TRUE, TURBO, 12000, 0x0b, 0x00, (0x80|12), 0 }, +/* 9 Mb */ { AH_TRUE, TURBO, 18000, 0x0f, 0x00, 18, 0 }, +/* 12 Mb */ { AH_TRUE, TURBO, 24000, 0x0a, 0x00, (0x80|24), 2 }, +/* 18 Mb */ { AH_TRUE, TURBO, 36000, 0x0e, 0x00, 36, 2 }, +/* 24 Mb */ { AH_TRUE, TURBO, 48000, 0x09, 0x00, (0x80|48), 4 }, +/* 36 Mb */ { AH_TRUE, TURBO, 72000, 0x0d, 0x00, 72, 4 }, +/* 48 Mb */ { AH_TRUE, TURBO, 96000, 0x08, 0x00, 96, 4 }, +/* 54 Mb */ { AH_TRUE, TURBO, 108000, 0x0c, 0x00, 108, 4 } }, }; ==== //depot/projects/vimage/src/sys/dev/ath/ath_hal/ar5212/ar5212_phy.c#3 (text+ko) ==== @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $FreeBSD: src/sys/dev/ath/ath_hal/ar5212/ar5212_phy.c,v 1.2 2009/02/19 04:24:22 sam Exp $ + * $FreeBSD: src/sys/dev/ath/ath_hal/ar5212/ar5212_phy.c,v 1.3 2009/04/13 21:01:08 sam Exp $ */ #include "opt_ah.h" @@ -87,13 +87,13 @@ { /* short ctrl */ /* valid rateCode Preamble dot11Rate Rate */ -/* 6 Mb */ { AH_TRUE, TURBO, 6000, 0x0b, 0x00, (0x80|12), 0 }, -/* 12 Mb */ { AH_TRUE, TURBO, 12000, 0x0a, 0x00, (0x80|24), 2 }, -/* 18 Mb */ { AH_TRUE, TURBO, 18000, 0x0e, 0x00, 36, 2 }, -/* 24 Mb */ { AH_TRUE, TURBO, 24000, 0x09, 0x00, (0x80|48), 3 }, -/* 36 Mb */ { AH_TRUE, TURBO, 36000, 0x0d, 0x00, 72, 3 }, -/* 48 Mb */ { AH_TRUE, TURBO, 48000, 0x08, 0x00, 96, 3 }, -/* 54 Mb */ { AH_TRUE, TURBO, 54000, 0x0c, 0x00, 108, 3 } +/* 6 Mb */ { AH_TRUE, TURBO, 12000, 0x0b, 0x00, (0x80|12), 0 }, +/* 12 Mb */ { AH_TRUE, TURBO, 24000, 0x0a, 0x00, (0x80|24), 1 }, +/* 18 Mb */ { AH_TRUE, TURBO, 36000, 0x0e, 0x00, 36, 1 }, +/* 24 Mb */ { AH_TRUE, TURBO, 48000, 0x09, 0x00, (0x80|48), 2 }, +/* 36 Mb */ { AH_TRUE, TURBO, 72000, 0x0d, 0x00, 72, 2 }, +/* 48 Mb */ { AH_TRUE, TURBO, 96000, 0x08, 0x00, 96, 2 }, +/* 54 Mb */ { AH_TRUE, TURBO, 108000, 0x0c, 0x00, 108, 2 } }, }; @@ -103,14 +103,14 @@ { /* short ctrl */ /* valid rateCode Preamble dot11Rate Rate */ -/* 6 Mb */ { AH_TRUE, TURBO, 6000, 0x0b, 0x00, (0x80|12), 0 }, -/* 9 Mb */ { AH_TRUE, TURBO, 9000, 0x0f, 0x00, 18, 0 }, -/* 12 Mb */ { AH_TRUE, TURBO, 12000, 0x0a, 0x00, (0x80|24), 2 }, -/* 18 Mb */ { AH_TRUE, TURBO, 18000, 0x0e, 0x00, 36, 2 }, -/* 24 Mb */ { AH_TRUE, TURBO, 24000, 0x09, 0x00, (0x80|48), 4 }, -/* 36 Mb */ { AH_TRUE, TURBO, 36000, 0x0d, 0x00, 72, 4 }, -/* 48 Mb */ { AH_TRUE, TURBO, 48000, 0x08, 0x00, 96, 4 }, -/* 54 Mb */ { AH_TRUE, TURBO, 54000, 0x0c, 0x00, 108, 4 } +/* 6 Mb */ { AH_TRUE, TURBO, 12000, 0x0b, 0x00, (0x80|12), 0 }, +/* 9 Mb */ { AH_TRUE, TURBO, 18000, 0x0f, 0x00, 18, 0 }, +/* 12 Mb */ { AH_TRUE, TURBO, 24000, 0x0a, 0x00, (0x80|24), 2 }, +/* 18 Mb */ { AH_TRUE, TURBO, 36000, 0x0e, 0x00, 36, 2 }, +/* 24 Mb */ { AH_TRUE, TURBO, 48000, 0x09, 0x00, (0x80|48), 4 }, +/* 36 Mb */ { AH_TRUE, TURBO, 72000, 0x0d, 0x00, 72, 4 }, +/* 48 Mb */ { AH_TRUE, TURBO, 96000, 0x08, 0x00, 96, 4 }, +/* 54 Mb */ { AH_TRUE, TURBO, 108000, 0x0c, 0x00, 108, 4 } }, }; ==== //depot/projects/vimage/src/sys/dev/ath/ath_rate/sample/sample.c#11 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ath/ath_rate/sample/sample.c,v 1.29 2009/01/07 23:30:26 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/ath_rate/sample/sample.c,v 1.30 2009/04/13 20:54:08 sam Exp $"); /* * John Bicket's SampleRate control algorithm. @@ -766,6 +766,15 @@ sn->static_rix = sc->sc_rixmap[tp->ucastrate]; break; } +#ifdef IEEE80211_DEBUG + if (sn->static_rix == -1) { + IEEE80211_NOTE(ni->ni_vap, + IEEE80211_MSG_RATECTL, ni, + "%s: ucastrate %u not found, nrates %u", + __func__, tp->ucastrate, + ni->ni_rates.rs_nrates); + } +#endif } /* ==== //depot/projects/vimage/src/sys/dev/ath/if_ath.c#34 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.246 2009/04/13 03:20:21 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.248 2009/04/13 20:58:47 sam Exp $"); /* * Driver for the Atheros Wireless LAN controller. @@ -4773,8 +4773,8 @@ m0->m_nextpkt = NULL; if (IFF_DUMPPKTS(sc, ATH_DEBUG_XMIT)) - ieee80211_dump_pkt(ic, mtod(m0, caddr_t), m0->m_len, - sc->sc_hwmap[rix].ieeerate, -1); + ieee80211_dump_pkt(ic, mtod(m0, const uint8_t *), m0->m_len, + sc->sc_hwmap[rix].ieeerate, -1); if (bpf_peers_present(ifp->if_bpf)) { u_int64_t tsf = ath_hal_gettsf64(ah); @@ -5118,8 +5118,8 @@ ath_printtxbuf(sc, bf, txq->axq_qnum, ix, ath_hal_txprocdesc(ah, bf->bf_desc, &bf->bf_status.ds_txstat) == HAL_OK); - ieee80211_dump_pkt(ic, mtod(bf->bf_m, caddr_t), - bf->bf_m->m_len, 0, -1); + ieee80211_dump_pkt(ic, mtod(bf->bf_m, const uint8_t *), + bf->bf_m->m_len, 0, -1); } #endif /* ATH_DEBUG */ bus_dmamap_unload(sc->sc_dmat, bf->bf_dmamap); @@ -5187,8 +5187,9 @@ ath_printtxbuf(sc, bf, sc->sc_bhalq, 0, ath_hal_txprocdesc(ah, bf->bf_desc, &bf->bf_status.ds_txstat) == HAL_OK); - ieee80211_dump_pkt(ifp->if_l2com, mtod(bf->bf_m, caddr_t), - bf->bf_m->m_len, 0, -1); + ieee80211_dump_pkt(ifp->if_l2com, + mtod(bf->bf_m, const uint8_t *), bf->bf_m->m_len, + 0, -1); } } #endif /* ATH_DEBUG */ @@ -6783,7 +6784,7 @@ if (IFF_DUMPPKTS(sc, ATH_DEBUG_XMIT)) ieee80211_dump_pkt(ic, mtod(m0, caddr_t), m0->m_len, - sc->sc_hwmap[rix].ieeerate, -1); + sc->sc_hwmap[rix].ieeerate, -1); if (bpf_peers_present(ifp->if_bpf)) { u_int64_t tsf = ath_hal_gettsf64(ah); @@ -7120,6 +7121,8 @@ const struct ieee80211_tdma_state *ts = vap->iv_tdma; ath_tdma_bintvalsetup(sc, ts); + if (changed & TDMA_UPDATE_SLOTLEN) + ath_wme_update(ic); DPRINTF(sc, ATH_DEBUG_TDMA, "%s: adopt slot %u slotcnt %u slotlen %u us " @@ -7127,7 +7130,6 @@ ts->tdma_slot, ts->tdma_slotcnt, ts->tdma_slotlen, sc->sc_tdmabintval); - ath_beaconq_config(sc); /* XXX right? */ ath_hal_intrset(ah, sc->sc_imask); /* NB: beacon timers programmed below */ ==== //depot/projects/vimage/src/sys/dev/e1000/if_em.c#6 (text+ko) ==== @@ -30,7 +30,7 @@ POSSIBILITY OF SUCH DAMAGE. ******************************************************************************/ -/*$FreeBSD: src/sys/dev/e1000/if_em.c,v 1.5 2009/04/10 00:05:46 jfv Exp $*/ +/*$FreeBSD: src/sys/dev/e1000/if_em.c,v 1.6 2009/04/14 03:36:59 kmacy Exp $*/ #ifdef HAVE_KERNEL_OPTION_HEADERS #include "opt_device_polling.h" @@ -39,6 +39,7 @@ #include #include +#include #include #include #include @@ -897,6 +898,9 @@ bus_generic_detach(dev); if_free(ifp); +#ifdef IFNET_BUF_RING + drbr_free(adapter->br, M_DEVBUF); +#endif em_free_transmit_structures(adapter); em_free_receive_structures(adapter); @@ -991,6 +995,69 @@ * the packet is requeued. **********************************************************************/ +#ifdef IFNET_BUF_RING +static int +em_transmit_locked(struct ifnet *ifp, struct mbuf *m) +{ + struct adapter *adapter = ifp->if_softc; + int error; + + EM_TX_LOCK_ASSERT(adapter); + if (((ifp->if_drv_flags & (IFF_DRV_RUNNING|IFF_DRV_OACTIVE)) != + IFF_DRV_RUNNING) + || (!adapter->link_active)) { + error = drbr_enqueue(ifp, adapter->br, m); + return (error); + } + + if (ADAPTER_RING_EMPTY(adapter) && + (adapter->num_tx_desc_avail > EM_TX_OP_THRESHOLD)) { + if (em_xmit(adapter, &m)) { + if (m && (error = drbr_enqueue(ifp, adapter->br, m)) != 0) { + return (error); + } + } else{ + /* Send a copy of the frame to the BPF listener */ + ETHER_BPF_MTAP(ifp, m); + } + } else if ((error = drbr_enqueue(ifp, adapter->br, m)) != 0) + return (error); + + if (!ADAPTER_RING_EMPTY(adapter)) + em_start_locked(ifp); + + return (0); +} + +static int +em_transmit(struct ifnet *ifp, struct mbuf *m) +{ + + struct adapter *adapter = ifp->if_softc; + int error = 0; + + if(EM_TX_TRYLOCK(adapter)) { + if (ifp->if_drv_flags & IFF_DRV_RUNNING) + error = em_transmit_locked(ifp, m); + EM_TX_UNLOCK(adapter); + } else + error = drbr_enqueue(ifp, adapter->br, m); + + return (error); +} + +static void +em_qflush(struct ifnet *ifp) +{ + struct mbuf *m; + struct adapter *adapter = (struct adapter *)ifp->if_softc; + + EM_TX_LOCK(adapter); + while ((m = buf_ring_dequeue_sc(adapter->br)) != NULL) + m_freem(m); + EM_TX_UNLOCK(adapter); +} + static void em_start_locked(struct ifnet *ifp) { @@ -1005,6 +1072,47 @@ if (!adapter->link_active) return; + while ((adapter->num_tx_desc_avail > EM_TX_OP_THRESHOLD) + && (!ADAPTER_RING_EMPTY(adapter))) { + + m_head = buf_ring_dequeue_sc(adapter->br); + if (m_head == NULL) + break; + /* + * Encapsulation can modify our pointer, and or make it + * NULL on failure. In that event, we can't requeue. + */ + if (em_xmit(adapter, &m_head)) { + if (m_head == NULL) + break; + break; + } + + /* Send a copy of the frame to the BPF listener */ + ETHER_BPF_MTAP(ifp, m_head); + + /* Set timeout in case hardware has problems transmitting. */ + adapter->watchdog_timer = EM_TX_TIMEOUT; + } + if ((adapter->num_tx_desc_avail <= EM_TX_OP_THRESHOLD)) + ifp->if_drv_flags |= IFF_DRV_OACTIVE; + +} +#else +static void +em_start_locked(struct ifnet *ifp) +{ + struct adapter *adapter = ifp->if_softc; + struct mbuf *m_head; + + EM_TX_LOCK_ASSERT(adapter); + + if ((ifp->if_drv_flags & (IFF_DRV_RUNNING|IFF_DRV_OACTIVE)) != + IFF_DRV_RUNNING) + return; + if (!adapter->link_active) + return; + while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { IFQ_DRV_DEQUEUE(&ifp->if_snd, m_head); @@ -1030,6 +1138,8 @@ } } +#endif + static void em_start(struct ifnet *ifp) { @@ -1603,7 +1713,7 @@ EM_TX_LOCK(adapter); em_txeof(adapter); - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + if (!ADAPTER_RING_EMPTY(adapter)) em_start_locked(ifp); EM_TX_UNLOCK(adapter); } @@ -1658,7 +1768,7 @@ out: EM_CORE_UNLOCK(adapter); if (ifp->if_drv_flags & IFF_DRV_RUNNING && - !IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + !ADAPTER_RING_EMPTY(adapter)) em_start(ifp); } @@ -1697,7 +1807,7 @@ EM_TX_LOCK(adapter); em_txeof(adapter); - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + if (!ADAPTER_RING_EMPTY(adapter)) em_start_locked(ifp); EM_TX_UNLOCK(adapter); } @@ -1853,9 +1963,15 @@ struct ifnet *ifp = adapter->ifp; if (ifp->if_drv_flags & IFF_DRV_RUNNING) { +#ifdef IFNET_BUF_RING + if (!EM_TX_TRYLOCK(adapter)) + return; +#else EM_TX_LOCK(adapter); +#endif + em_txeof(adapter); - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + if (!ADAPTER_RING_EMPTY(adapter)) em_start_locked(ifp); EM_TX_UNLOCK(adapter); } @@ -2075,22 +2191,14 @@ error = bus_dmamap_load_mbuf_sg(adapter->txtag, map, *m_headp, segs, &nsegs, BUS_DMA_NOWAIT); - if (error == ENOMEM) { - adapter->no_tx_dma_setup++; - return (error); - } else if (error != 0) { + if (error) { adapter->no_tx_dma_setup++; m_freem(*m_headp); *m_headp = NULL; return (error); } - } else if (error == ENOMEM) { - adapter->no_tx_dma_setup++; - return (error); } else if (error != 0) { adapter->no_tx_dma_setup++; - m_freem(*m_headp); - *m_headp = NULL; return (error); } @@ -2531,6 +2639,8 @@ EM_CORE_LOCK_ASSERT(adapter); + taskqueue_enqueue(adapter->tq, + &adapter->rxtx_task); em_update_link_status(adapter); em_update_stats_counters(adapter); @@ -3126,6 +3236,11 @@ ifp->if_capabilities = ifp->if_capenable = 0; +#ifdef IFNET_BUF_RING + ifp->if_transmit = em_transmit; + ifp->if_qflush = em_qflush; + adapter->br = buf_ring_alloc(2048, M_DEVBUF, M_WAITOK, &adapter->tx_mtx); +#endif if (adapter->hw.mac.type >= e1000_82543) { int version_cap; #if __FreeBSD_version < 700000 ==== //depot/projects/vimage/src/sys/dev/e1000/if_em.h#3 (text+ko) ==== @@ -30,12 +30,13 @@ POSSIBILITY OF SUCH DAMAGE. ******************************************************************************/ -/*$FreeBSD: src/sys/dev/e1000/if_em.h,v 1.2 2008/11/26 23:57:23 jfv Exp $*/ +/*$FreeBSD: src/sys/dev/e1000/if_em.h,v 1.3 2009/04/14 03:36:59 kmacy Exp $*/ #ifndef _EM_H_DEFINED_ #define _EM_H_DEFINED_ +#define IFNET_BUF_RING /* Tunables */ /* @@ -301,6 +302,9 @@ /* Our adapter structure */ struct adapter { struct ifnet *ifp; +#ifdef IFNET_BUF_RING + struct buf_ring *br; +#endif struct e1000_hw hw; /* FreeBSD operating-system-specific structures. */ @@ -482,6 +486,7 @@ #define EM_RX_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->rx_mtx) #define EM_CORE_LOCK(_sc) mtx_lock(&(_sc)->core_mtx) #define EM_TX_LOCK(_sc) mtx_lock(&(_sc)->tx_mtx) +#define EM_TX_TRYLOCK(_sc) mtx_trylock(&(_sc)->tx_mtx) #define EM_RX_LOCK(_sc) mtx_lock(&(_sc)->rx_mtx) #define EM_CORE_UNLOCK(_sc) mtx_unlock(&(_sc)->core_mtx) #define EM_TX_UNLOCK(_sc) mtx_unlock(&(_sc)->tx_mtx) @@ -489,4 +494,9 @@ #define EM_CORE_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->core_mtx, MA_OWNED) #define EM_TX_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->tx_mtx, MA_OWNED) +#ifdef IFNET_BUF_RING +#define ADAPTER_RING_EMPTY(adapter) drbr_empty((adapter)->ifp, (adapter)->br) +#else +#define ADAPTER_RING_EMPTY(adapter) IFQ_DRV_IS_EMPTY(&((adapter)->ifp->if_snd)) +#endif #endif /* _EM_H_DEFINED_ */ ==== //depot/projects/vimage/src/sys/dev/e1000/if_igb.c#7 (text+ko) ==== @@ -30,7 +30,7 @@ POSSIBILITY OF SUCH DAMAGE. ******************************************************************************/ -/*$FreeBSD: src/sys/dev/e1000/if_igb.c,v 1.10 2009/04/10 05:26:14 jfv Exp $*/ +/*$FreeBSD: src/sys/dev/e1000/if_igb.c,v 1.11 2009/04/14 17:14:35 jfv Exp $*/ #ifdef HAVE_KERNEL_OPTION_HEADERS #include "opt_device_polling.h" @@ -94,7 +94,7 @@ /********************************************************************* * Driver version: *********************************************************************/ -char igb_driver_version[] = "version - 1.5.2"; +char igb_driver_version[] = "version - 1.5.3"; /********************************************************************* @@ -4002,7 +4002,7 @@ accept_frame = 1; hlen = plen = len_adj = 0; sendmp = mh = mp = NULL; - ptype = (u16)cur->wb.lower.lo_dword.data; + ptype = (u16)(cur->wb.lower.lo_dword.data >> 4); /* Sync the buffers */ bus_dmamap_sync(rxr->rxtag, rxr->rx_buffers[i].map, @@ -4103,16 +4103,16 @@ rxr->lmp = mh->m_next; } } else { + /* Adjust for CRC frag */ + if (len_adj) { + rxr->lmp->m_len -= len_adj; + rxr->fmp->m_pkthdr.len -= len_adj; + } /* Chain mbuf's together */ mh->m_flags &= ~M_PKTHDR; rxr->lmp->m_next = mh; rxr->lmp = rxr->lmp->m_next; rxr->fmp->m_pkthdr.len += mh->m_len; - /* Adjust for CRC frag */ - if (len_adj) { - rxr->lmp->m_len -= len_adj; - rxr->fmp->m_pkthdr.len -= len_adj; - } } if (eop) { @@ -4256,7 +4256,7 @@ #endif /* Did it pass? */ if (!(errors & E1000_RXD_ERR_TCPE)) { - mp->m_pkthdr.csum_flags = type; + mp->m_pkthdr.csum_flags |= type; if (!sctp) mp->m_pkthdr.csum_data = htons(0xffff); } ==== //depot/projects/vimage/src/sys/dev/joy/joy.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/joy/joy.c,v 1.55 2008/09/27 08:51:18 ed Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/joy/joy.c,v 1.56 2009/04/14 11:23:09 ed Exp $"); #include #include @@ -55,14 +55,10 @@ */ #define joypart(d) (dev2unit(d)&1) -#define UNIT(d) ((dev2unit(d)>>1)&3) #ifndef JOY_TIMEOUT #define JOY_TIMEOUT 2000 /* 2 milliseconds */ #endif -#define JOY_SOFTC(unit) (struct joy_softc *) \ - devclass_get_softc(joy_devclass,(unit)) - static d_open_t joyopen; static d_close_t joyclose; static d_read_t joyread; @@ -111,6 +107,7 @@ joy->port = rman_get_bushandle(joy->res); joy->timeout[0] = joy->timeout[1] = 0; joy->d = make_dev(&joy_cdevsw, unit, 0, 0, 0600, "joy%d", unit); + joy->d->si_drv1 = joy; return (0); } @@ -131,7 +128,7 @@ joyopen(struct cdev *dev, int flags, int fmt, struct thread *td) { int i = joypart (dev); - struct joy_softc *joy = JOY_SOFTC(UNIT(dev)); + struct joy_softc *joy = dev->si_drv1; if (joy->timeout[i]) return (EBUSY); @@ -144,7 +141,7 @@ joyclose(struct cdev *dev, int flags, int fmt, struct thread *td) { int i = joypart (dev); - struct joy_softc *joy = JOY_SOFTC(UNIT(dev)); + struct joy_softc *joy = dev->si_drv1; joy->timeout[i] = 0; return (0); @@ -153,7 +150,7 @@ static int joyread(struct cdev *dev, struct uio *uio, int flag) { - struct joy_softc *joy = JOY_SOFTC(UNIT(dev)); + struct joy_softc *joy = dev->si_drv1; bus_space_handle_t port = joy->port; bus_space_tag_t bt = joy->bt; struct timespec t, start, end; @@ -217,7 +214,7 @@ static int joyioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, struct thread *td) { - struct joy_softc *joy = JOY_SOFTC(UNIT(dev)); + struct joy_softc *joy = dev->si_drv1; int i = joypart (dev); int x; ==== //depot/projects/vimage/src/sys/dev/pccard/pccarddevs#13 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/sys/dev/pccard/pccarddevs,v 1.143 2009/04/07 05:57:56 imp Exp $ +$FreeBSD: src/sys/dev/pccard/pccarddevs,v 1.144 2009/04/14 03:13:05 imp Exp $ /* $NetBSD: pcmciadevs,v 1.226 2008/06/19 18:20:33 imp Exp $ */ /* $OpenBSD: pcmciadevs,v 1.93 2002/06/21 08:31:10 henning Exp $ */ @@ -671,6 +671,7 @@ vendor FUTUREDOMAIN -1 FutureDomain vendor FREECOM -1 Freecom vendor GEMTEK -1 Gem Tek +vendor GVC -1 GVC vendor ICOM -1 ICOM Inc vendor INTERSIL2 -1 Intersil vendor IODATA3 -1 I-O DATA @@ -740,6 +741,7 @@ product FUJITSU2 ITCFJ182A { "FUJITSU", "LAN&spCard(ITCFJ182)", "Ver.01", NULL } FUJITSU ITCFJ182A CompactCard product FUTUREDOMAIN SCSI2GO { "Future&spDomain&spCorporation", "SCSI&spPCMCIA&spCredit&spCard&spController", NULL, NULL } Future Domain SCSI2GO product GEMTEK WLAN { "Intersil", "PRISM&sp2_5&spPCMCIA&spADAPTER", "ISL37300P", "Eval-RevA" } GEMTEK Prism2_5 WaveLAN Card +product GVC NIC_2000P { "GVC", "NIC-2000p", "ETHERNET", NULL } GVC PCMCIA Ethernet Adapeter product IBM SCSICARD { "IBM&spCorp.", "SCSI&spPCMCIA&spCard", NULL, NULL } IBM SCSI PCMCIA Card product ICOM SL200 { "Icom", "SL-200", NULL, NULL } Icom SL-200 product INTERSIL2 PRISM2 { "INTERSIL", "HFA384x/IEEE", "Version&sp01.02", NULL } Intersil Prism II ==== //depot/projects/vimage/src/sys/dev/powermac_nvram/powermac_nvram.c#6 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/powermac_nvram/powermac_nvram.c,v 1.5 2009/04/04 00:22:44 nwhitehorn Exp $ + * $FreeBSD: src/sys/dev/powermac_nvram/powermac_nvram.c,v 1.6 2009/04/14 13:18:39 ed Exp $ */ #include @@ -89,10 +89,6 @@ * Cdev methods. */ -#define NVRAM_UNIT(dev) dev2unit(dev) -#define NVRAM_SOFTC(unit) ((struct powermac_nvram_softc *) \ - devclass_get_softc(powermac_nvram_devclass, unit)) - static d_open_t powermac_nvram_open; static d_close_t powermac_nvram_close; static d_read_t powermac_nvram_read; @@ -169,6 +165,7 @@ sc->sc_cdev = make_dev(&powermac_nvram_cdevsw, 0, 0, 0, 0600, "powermac_nvram"); + sc->sc_cdev->si_drv1 = sc; return 0; } @@ -192,9 +189,8 @@ static int powermac_nvram_open(struct cdev *dev, int flags, int fmt, struct thread *td) { - struct powermac_nvram_softc *sc; + struct powermac_nvram_softc *sc = dev->si_drv1; - sc = NVRAM_SOFTC(NVRAM_UNIT(dev)); if (sc->sc_isopen) return EBUSY; sc->sc_isopen = 1; @@ -205,12 +201,10 @@ static int powermac_nvram_close(struct cdev *dev, int fflag, int devtype, struct thread *td) { - struct powermac_nvram_softc *sc; + struct powermac_nvram_softc *sc = dev->si_drv1; struct core99_header *header; vm_offset_t bank; - sc = NVRAM_SOFTC(NVRAM_UNIT(dev)); - if (sc->sc_wpos != sizeof(sc->sc_data)) { /* Short write, restore in-memory copy */ bcopy((void *)sc->sc_bank, (void *)sc->sc_data, NVRAM_SIZE); @@ -246,10 +240,8 @@ powermac_nvram_read(struct cdev *dev, struct uio *uio, int ioflag) { int rv, amnt, data_available; - struct powermac_nvram_softc *sc; + struct powermac_nvram_softc *sc = dev->si_drv1; - sc = NVRAM_SOFTC(NVRAM_UNIT(dev)); - rv = 0; >>> TRUNCATED FOR MAIL (1000 lines) <<<