From owner-p4-projects@FreeBSD.ORG Sat Feb 17 05:15:54 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3895316A406; Sat, 17 Feb 2007 05:15:54 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C7AEC16A401 for ; Sat, 17 Feb 2007 05:15:53 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id BACDE13C4AC for ; Sat, 17 Feb 2007 05:15:53 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l1H5Frst032560 for ; Sat, 17 Feb 2007 05:15:53 GMT (envelope-from mjacob@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l1H5FC8q032546 for perforce@freebsd.org; Sat, 17 Feb 2007 05:15:12 GMT (envelope-from mjacob@freebsd.org) Date: Sat, 17 Feb 2007 05:15:12 GMT Message-Id: <200702170515.l1H5FC8q032546@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to mjacob@freebsd.org using -f From: Matt Jacob To: Perforce Change Reviews Cc: Subject: PERFORCE change 114642 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: Sat, 17 Feb 2007 05:15:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=114642 Change 114642 by mjacob@mjexp_6 on 2007/02/17 05:14:57 Integrate from vendor branch. For a stable branch this has been pretty busy. Affected files ... .. //depot/projects/mjexp_6/sys/amd64/amd64/mp_machdep.c#2 integrate .. //depot/projects/mjexp_6/sys/amd64/amd64/trap.c#2 integrate .. //depot/projects/mjexp_6/sys/amd64/include/gdb_machdep.h#2 integrate .. //depot/projects/mjexp_6/sys/amd64/include/pmap.h#2 integrate .. //depot/projects/mjexp_6/sys/arm/arm/pmap.c#2 integrate .. //depot/projects/mjexp_6/sys/boot/pc98/btx/btx/btx.S#2 integrate .. //depot/projects/mjexp_6/sys/compat/ndis/subr_ntoskrnl.c#2 integrate .. //depot/projects/mjexp_6/sys/conf/NOTES#4 integrate .. //depot/projects/mjexp_6/sys/conf/files#4 integrate .. //depot/projects/mjexp_6/sys/conf/options#3 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/ah.h#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/ah_desc.h#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/ah_devid.h#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/alpha-elf.inc#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/ap30.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/ap43.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/ap51.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/ap61.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/arm9-le-thumb-elf.inc#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/armv4-be-elf.inc#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/armv4-le-elf.inc#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/i386-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/mips-be-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/mips-le-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/wackelf.c#1 branch .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/x86_64-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/xscale-be-elf.inc#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/public/xscale-le-elf.inc#2 integrate .. //depot/projects/mjexp_6/sys/contrib/dev/ath/version.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/aic7xxx/aic79xx.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/aic7xxx/aic79xx_pci.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/ata/ata-pci.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/ata/ata-queue.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/ath/ath_rate/amrr/amrr.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/ath/ath_rate/onoe/onoe.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/ath/ath_rate/sample/sample.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/ath/ath_rate/sample/sample.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/ath/if_ath.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/ath/if_athrate.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/ath/if_athvar.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/bce/if_bce.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/digi/digi.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/drmP.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/drm_drv.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/drm_pciids.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/i915_dma.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/i915_drm.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/i915_drv.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/i915_irq.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/mach64_drm.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/radeon_cp.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/radeon_drm.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/radeon_drv.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/drm/radeon_state.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/ipmi/ipmi.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/iwi/if_iwi.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/ciphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/dcphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/gentbi.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/miivar.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/nsgphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/pnphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/rgephy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/pci/pci.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/pci/pci_private.h#3 integrate .. //depot/projects/mjexp_6/sys/dev/pci/pcib_private.h#3 integrate .. //depot/projects/mjexp_6/sys/dev/pci/pcireg.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/pci/pcivar.h#3 integrate .. //depot/projects/mjexp_6/sys/dev/re/if_re.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/sound/pcm/buffer.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/sound/pcm/buffer.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/usb/if_aue.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/usb/ubsa.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/usb/usbdevs#4 integrate .. //depot/projects/mjexp_6/sys/dev/usb/usbdi_util.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/wi/if_wi.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/wi/if_wivar.h#2 integrate .. //depot/projects/mjexp_6/sys/fs/deadfs/dead_vnops.c#2 integrate .. //depot/projects/mjexp_6/sys/fs/msdosfs/msdosfs_vfsops.c#3 integrate .. //depot/projects/mjexp_6/sys/fs/nwfs/nwfs_io.c#2 integrate .. //depot/projects/mjexp_6/sys/fs/procfs/procfs.c#2 integrate .. //depot/projects/mjexp_6/sys/fs/smbfs/smbfs_io.c#2 integrate .. //depot/projects/mjexp_6/sys/fs/udf/udf_vnops.c#3 integrate .. //depot/projects/mjexp_6/sys/fs/unionfs/union.h#2 integrate .. //depot/projects/mjexp_6/sys/fs/unionfs/union_subr.c#2 integrate .. //depot/projects/mjexp_6/sys/fs/unionfs/union_vfsops.c#2 integrate .. //depot/projects/mjexp_6/sys/fs/unionfs/union_vnops.c#2 integrate .. //depot/projects/mjexp_6/sys/i386/i386/mp_machdep.c#2 integrate .. //depot/projects/mjexp_6/sys/isofs/cd9660/cd9660_vfsops.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/kern_linker.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/kern_mbuf.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/subr_firmware.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/subr_turnstile.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/uipc_socket.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/vfs_lookup.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/vfs_mount.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/vfs_subr.c#2 integrate .. //depot/projects/mjexp_6/sys/modules/Makefile#3 integrate .. //depot/projects/mjexp_6/sys/modules/netgraph/Makefile#2 integrate .. //depot/projects/mjexp_6/sys/modules/netgraph/deflate/Makefile#1 branch .. //depot/projects/mjexp_6/sys/modules/netgraph/pred1/Makefile#1 branch .. //depot/projects/mjexp_6/sys/modules/wlan_amrr/Makefile#1 branch .. //depot/projects/mjexp_6/sys/net/if_media.h#2 integrate .. //depot/projects/mjexp_6/sys/net80211/_ieee80211.h#2 integrate .. //depot/projects/mjexp_6/sys/net80211/ieee80211.c#2 integrate .. //depot/projects/mjexp_6/sys/net80211/ieee80211_amrr.c#1 branch .. //depot/projects/mjexp_6/sys/net80211/ieee80211_amrr.h#1 branch .. //depot/projects/mjexp_6/sys/net80211/ieee80211_freebsd.h#2 integrate .. //depot/projects/mjexp_6/sys/net80211/ieee80211_node.c#2 integrate .. //depot/projects/mjexp_6/sys/net80211/ieee80211_output.c#2 integrate .. //depot/projects/mjexp_6/sys/net80211/ieee80211_proto.c#2 integrate .. //depot/projects/mjexp_6/sys/net80211/ieee80211_var.h#2 integrate .. //depot/projects/mjexp_6/sys/netgraph/netflow/netflow.c#2 integrate .. //depot/projects/mjexp_6/sys/netgraph/netflow/ng_netflow.c#2 integrate .. //depot/projects/mjexp_6/sys/netgraph/ng_deflate.c#1 branch .. //depot/projects/mjexp_6/sys/netgraph/ng_deflate.h#1 branch .. //depot/projects/mjexp_6/sys/netgraph/ng_nat.c#2 integrate .. //depot/projects/mjexp_6/sys/netgraph/ng_ppp.c#2 integrate .. //depot/projects/mjexp_6/sys/netgraph/ng_ppp.h#2 integrate .. //depot/projects/mjexp_6/sys/netgraph/ng_pred1.c#1 branch .. //depot/projects/mjexp_6/sys/netgraph/ng_pred1.h#1 branch .. //depot/projects/mjexp_6/sys/netgraph/ng_tcpmss.c#2 integrate .. //depot/projects/mjexp_6/sys/netgraph/ng_vlan.c#2 integrate .. //depot/projects/mjexp_6/sys/netinet/if_ether.c#2 integrate .. //depot/projects/mjexp_6/sys/netinet/in.h#2 integrate .. //depot/projects/mjexp_6/sys/netinet/ip_fastfwd.c#2 integrate .. //depot/projects/mjexp_6/sys/netinet6/ah_core.c#2 integrate .. //depot/projects/mjexp_6/sys/netinet6/icmp6.c#3 integrate .. //depot/projects/mjexp_6/sys/netinet6/nd6.c#2 integrate .. //depot/projects/mjexp_6/sys/nfs4client/nfs4_vfsops.c#2 integrate .. //depot/projects/mjexp_6/sys/nfs4client/nfs4_vnops.c#2 integrate .. //depot/projects/mjexp_6/sys/nfsclient/nfs_bio.c#2 integrate .. //depot/projects/mjexp_6/sys/nfsclient/nfs_node.c#3 integrate .. //depot/projects/mjexp_6/sys/nfsclient/nfs_socket.c#2 integrate .. //depot/projects/mjexp_6/sys/nfsclient/nfs_subs.c#2 integrate .. //depot/projects/mjexp_6/sys/nfsclient/nfs_vfsops.c#2 integrate .. //depot/projects/mjexp_6/sys/nfsclient/nfs_vnops.c#2 integrate .. //depot/projects/mjexp_6/sys/nfsclient/nfsnode.h#2 integrate .. //depot/projects/mjexp_6/sys/pc98/pc98/machdep.c#2 integrate .. //depot/projects/mjexp_6/sys/pci/agp_ati.c#2 integrate .. //depot/projects/mjexp_6/sys/pci/if_pcn.c#2 integrate .. //depot/projects/mjexp_6/sys/pci/if_pcnreg.h#2 integrate .. //depot/projects/mjexp_6/sys/pci/if_rlreg.h#2 integrate .. //depot/projects/mjexp_6/sys/powerpc/include/ipl.h#2 delete .. //depot/projects/mjexp_6/sys/sparc64/sbus/sbus.c#2 integrate .. //depot/projects/mjexp_6/sys/sparc64/sparc64/trap.c#2 integrate .. //depot/projects/mjexp_6/sys/sys/ata.h#2 integrate .. //depot/projects/mjexp_6/sys/sys/linker.h#2 integrate .. //depot/projects/mjexp_6/sys/sys/mbuf.h#2 integrate .. //depot/projects/mjexp_6/sys/sys/mount.h#2 integrate .. //depot/projects/mjexp_6/sys/sys/param.h#4 integrate .. //depot/projects/mjexp_6/sys/ufs/ffs/ffs_alloc.c#2 integrate .. //depot/projects/mjexp_6/sys/ufs/ffs/ffs_snapshot.c#2 integrate .. //depot/projects/mjexp_6/sys/ufs/ufs/quota.h#2 integrate .. //depot/projects/mjexp_6/sys/ufs/ufs/ufs_quota.c#2 integrate .. //depot/projects/mjexp_6/sys/ufs/ufs/ufs_vfsops.c#2 integrate .. //depot/projects/mjexp_6/sys/vm/uma.h#3 integrate .. //depot/projects/mjexp_6/sys/vm/uma_core.c#3 integrate Differences ... ==== //depot/projects/mjexp_6/sys/amd64/amd64/mp_machdep.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.260.2.7 2006/10/30 18:03:02 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.260.2.8 2007/02/12 21:20:43 jhb Exp $"); #include "opt_cpu.h" #include "opt_kdb.h" @@ -601,6 +601,8 @@ continue; if (cpu_info[apic_id].cpu_bsp) continue; + if (cpu_info[apic_id].cpu_disabled) + continue; /* Don't let hyperthreads service interrupts. */ if (hyperthreading_cpus > 1 && ==== //depot/projects/mjexp_6/sys/amd64/amd64/trap.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.289.2.3 2005/11/28 20:03:03 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.289.2.5 2007/02/03 03:14:21 alc Exp $"); /* * AMD64 Trap and System call handling @@ -92,6 +92,7 @@ #include #endif #include +#include extern void trap(struct trapframe frame); extern void syscall(struct trapframe frame); @@ -532,8 +533,14 @@ map = &vm->vm_map; } + /* + * PGEX_I is defined only if the execute disable bit capability is + * supported and enabled. + */ if (frame->tf_err & PGEX_W) ftype = VM_PROT_WRITE; + else if ((frame->tf_err & PGEX_I) && pg_nx != 0) + ftype = VM_PROT_EXECUTE; else ftype = VM_PROT_READ; @@ -604,9 +611,10 @@ #endif if (type == T_PAGEFLT) { printf("fault virtual address = 0x%lx\n", eva); - printf("fault code = %s %s, %s\n", + printf("fault code = %s %s %s, %s\n", code & PGEX_U ? "user" : "supervisor", code & PGEX_W ? "write" : "read", + code & PGEX_I ? "instruction" : "data", code & PGEX_P ? "protection violation" : "page not present"); } printf("instruction pointer = 0x%lx:0x%lx\n", @@ -786,10 +794,15 @@ if ((callp->sy_narg & SYF_MPSAFE) == 0) { mtx_lock(&Giant); + AUDIT_SYSCALL_ENTER(code, td); error = (*callp->sy_call)(td, argp); + AUDIT_SYSCALL_EXIT(error, td); mtx_unlock(&Giant); - } else + } else { + AUDIT_SYSCALL_ENTER(code, td); error = (*callp->sy_call)(td, argp); + AUDIT_SYSCALL_EXIT(error, td); + } } switch (error) { ==== //depot/projects/mjexp_6/sys/amd64/include/gdb_machdep.h#2 (text+ko) ==== @@ -23,13 +23,13 @@ * (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/amd64/include/gdb_machdep.h,v 1.3.2.1 2006/08/17 21:26:56 marcel Exp $ + * $FreeBSD: src/sys/amd64/include/gdb_machdep.h,v 1.3.2.2 2007/02/08 17:45:50 jhb Exp $ */ #ifndef _MACHINE_GDB_MACHDEP_H_ #define _MACHINE_GDB_MACHDEP_H_ -#define GDB_BUFSZ 500 +#define GDB_BUFSZ (GDB_NREGS * 16) #define GDB_NREGS 56 #define GDB_REG_PC 16 ==== //depot/projects/mjexp_6/sys/amd64/include/pmap.h#2 (text+ko) ==== @@ -39,7 +39,7 @@ * * from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90 * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.127 2005/06/29 22:28:45 peter Exp $ + * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.127.2.1 2007/02/03 02:57:02 alc Exp $ */ #ifndef _MACHINE_PMAP_H_ @@ -79,6 +79,8 @@ #define PGEX_P 0x01 /* Protection violation vs. not present */ #define PGEX_W 0x02 /* during a Write cycle */ #define PGEX_U 0x04 /* access from User mode (UPL) */ +#define PGEX_RSV 0x08 /* reserved PTE field is non-zero */ +#define PGEX_I 0x10 /* during an instruction fetch */ /* * Pte related macros. This is complicated by having to deal with ==== //depot/projects/mjexp_6/sys/arm/arm/pmap.c#2 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.36.2.2 2006/06/23 17:41:02 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.36.2.3 2007/02/09 00:19:58 cognet Exp $"); #include #include #include @@ -2883,6 +2883,7 @@ npv = TAILQ_NEXT(pv, pv_plist); pmap_nuke_pv(m, pmap, pv); pmap_free_pv_entry(pv); + pmap_free_l2_bucket(pmap, l2b, 1); } vm_page_unlock_queues(); cpu_idcache_wbinv_all(); ==== //depot/projects/mjexp_6/sys/boot/pc98/btx/btx/btx.S#2 (text+ko) ==== @@ -12,7 +12,7 @@ * warranties of merchantability and fitness for a particular * purpose. * - * $FreeBSD: src/sys/boot/pc98/btx/btx/btx.S,v 1.21 2005/05/08 14:17:27 nyan Exp $ + * $FreeBSD: src/sys/boot/pc98/btx/btx/btx.S,v 1.21.2.1 2007/01/28 05:49:02 nyan Exp $ */ /* @@ -206,7 +206,7 @@ #ifdef PAGING or $0x80000001,%eax # mode and enable paging #else - or $0x01,%eax # mode + inc %ax # mode #endif mov %eax,%cr0 # ljmp $SEL_SCODE,$init.8 # To 32-bit code @@ -473,12 +473,12 @@ movb $0x4,%cl # Update seg regs rep # in INT_V86 movsl # args -intrtn.2: movl %edx,%esi # Segment registers +intrtn.2: xchgl %edx,%esi # Segment registers leal 0x28(%ebp),%edi # Set up seg movb $0x4,%cl # regs for rep # later movsl # pop - movl %ebx,%esi # Restore exception + xchgl %ebx,%esi # Restore exception movb $0x5,%cl # frame to rep # supervisor movsl # stack @@ -523,9 +523,7 @@ je v86wrmsr # Yes cmpb $0x32,(%esi) # Is it a RDMSR? je v86rdmsr # Yes - cmpb $0x20,(%esi) # Is this a - jne v86mon.4 # MOV EAX,CR0 - cmpb $0xc0,0x1(%esi) # instruction? + cmpb $0x20,(%esi) # Is this a MOV reg,CRx? je v86mov # Yes v86mon.4: cmpb $0xfa,%al # CLI? je v86cli # Yes @@ -557,10 +555,24 @@ leal 0x8(%esp,1),%esp # Discard int no, error iret # To V86 mode /* - * Emulate MOV EAX,CR0. + * Emulate MOV reg,CRx. */ -v86mov: movl %cr0,%eax # CR0 to - movl %eax,0x1c(%ebp) # saved EAX +v86mov: movb 0x1(%esi),%bl # Fetch Mod R/M byte + testb $0x10,%bl # Read CR2 or CR3? + jnz v86mov.1 # Yes + movl %cr0,%eax # Read CR0 + testb $0x20,%bl # Read CR4 instead? + jz v86mov.2 # No + movl %cr4,%eax # Read CR4 + jmp v86mov.2 +v86mov.1: movl %cr2,%eax # Read CR2 + testb $0x08,%bl # Read CR3 instead? + jz v86mov.2 # No + movl %cr3,%eax # Read CR3 +v86mov.2: andl $0x7,%ebx # Compute offset in + shl $2,%ebx # frame of destination + neg %ebx # register + movl %eax,0x1c(%ebp,%ebx,1) # Store CR to reg incl %esi # Adjust IP /* * Return from emulating a 0x0f prefixed instruction @@ -636,41 +648,28 @@ * reads count of words from saved %cx * returns success by setting %ah to 0 */ -int15_87: pushl %eax # Save - pushl %ebx # some information - pushl %esi # onto the stack. - pushl %edi - xorl %eax,%eax # clean EAX - xorl %ebx,%ebx # clean EBX - movl 0x4(%ebp),%esi # Get user's ESI - movl 0x3C(%ebp),%ebx # store ES - movw %si,%ax # store SI - shll $0x4,%ebx # Make it a seg. - addl %eax,%ebx # ebx=(es<<4)+si - movb 0x14(%ebx),%al # Grab the - movb 0x17(%ebx),%ah # necessary - shll $0x10,%eax # information - movw 0x12(%ebx),%ax # from - movl %eax,%esi # the - movb 0x1c(%ebx),%al # GDT in order to - movb 0x1f(%ebx),%ah # have %esi offset - shll $0x10,%eax # of source and %edi - movw 0x1a(%ebx),%ax # of destination. - movl %eax,%edi +int15_87: pushl %esi # Save + pushl %edi # registers + movl 0x3C(%ebp),%edi # Load ES + movzwl 0x4(%ebp),%eax # Load user's SI + shll $0x4,%edi # EDI = (ES << 4) + + addl %eax,%edi # SI + movl 0x11(%edi),%eax # Read base of + movb 0x17(%edi),%al # GDT entry + ror $8,%eax # for source + xchgl %eax,%esi # into %esi + movl 0x19(%edi),%eax # Read base of + movb 0x1f(%edi),%al # GDT entry for + ror $8,%eax # destination + xchgl %eax,%edi # into %edi pushl %ds # Make: popl %es # es = ds - pushl %ecx # stash ECX - xorl %ecx,%ecx # highw of ECX is clear - movw 0x18(%ebp),%cx # Get user's ECX - shll $0x1,%ecx # Convert from num words to num - # bytes + movzwl 0x18(%ebp),%ecx # Get user's CX + shll $0x1,%ecx # Convert count from words rep # repeat... movsb # perform copy. - popl %ecx # Restore - popl %edi - popl %esi # previous - popl %ebx # register - popl %eax # values. + popl %edi # Restore + popl %esi # registers movb $0x0,0x1d(%ebp) # set ah = 0 to indicate # success andb $0xfe,%dl # clear CF @@ -689,23 +688,16 @@ cmpb $0x19,%al # is it int 19? je reboot # yes, reboot the machine cmpb $0x15,%al # is it int 15? - jne v86intn.3 # no, skip parse - pushl %eax # stash EAX - movl 0x1c(%ebp),%eax # user's saved EAX - cmpb $0x87,%ah # is it the memcpy subfunction? - jne v86intn.1 # no, keep checking - popl %eax # get the stack straight - jmp int15_87 # it's our cue -v86intn.1: cmpw $0x4f53,%ax # is it the delete key callout? - jne v86intn.2 # no, handle the int normally - movb BDA_KEYFLAGS,%al # get the shift key state - andb $0x18,%al # mask off just Ctrl and Alt - cmpb $0x18,%al # are both Ctrl and Alt down? - jne v86intn.2 # no, handle the int normally - popl %eax # restore EAX - jmp reboot # reboot the machine -v86intn.2: popl %eax # restore EAX -v86intn.3: subl %edi,%esi # From + jne v86intn.1 # no, skip parse + cmpb $0x87,0x1d(%ebp) # is it the memcpy subfunction? + je int15_87 # yes + cmpw $0x4f53,0x1c(%ebp) # is it the delete key callout? + jne v86intn.1 # no, handle the int normally + movb BDA_KEYFLAGS,%ch # get the shift key state + andb $0x18,%ch # mask off just Ctrl and Alt + cmpb $0x18,%ch # are both Ctrl and Alt down? + je reboot # yes, reboot the machine +v86intn.1: subl %edi,%esi # From shrl $0x4,%edi # linear movw %dx,-0x2(%ebx) # Save flags movw %di,-0x4(%ebx) # Save CS ==== //depot/projects/mjexp_6/sys/compat/ndis/subr_ntoskrnl.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.71.2.5 2005/12/16 17:33:47 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.71.2.6 2007/01/26 06:45:33 sam Exp $"); #include #include @@ -198,6 +198,11 @@ static uint32_t InterlockedIncrement(volatile uint32_t *); static uint32_t InterlockedDecrement(volatile uint32_t *); static void ExInterlockedAddLargeStatistic(uint64_t *, uint32_t); +static void *MmAllocateContiguousMemory(uint32_t, uint64_t); +static void *MmAllocateContiguousMemorySpecifyCache(uint32_t, + uint64_t, uint64_t, uint64_t, uint32_t); +static void MmFreeContiguousMemory(void *); +static void MmFreeContiguousMemorySpecifyCache(void *, uint32_t, uint32_t); static uint32_t MmSizeOfMdl(void *, size_t); static void *MmMapLockedPages(mdl *, uint8_t); static void *MmMapLockedPagesSpecifyCache(mdl *, @@ -235,6 +240,7 @@ static uint32_t IoWMIRegistrationControl(device_object *, uint32_t); static void *ntoskrnl_memset(void *, int, size_t); static void *ntoskrnl_memmove(void *, void *, size_t); +static void *ntoskrnl_memchr(void *, unsigned char, size_t); static char *ntoskrnl_strstr(char *, char *); static int ntoskrnl_toupper(int); static int ntoskrnl_tolower(int); @@ -434,6 +440,23 @@ return(dst); } +static void * +ntoskrnl_memchr(buf, ch, len) + void *buf; + unsigned char ch; + size_t len; +{ + if (len != 0) { + unsigned char *p = buf; + + do { + if (*p++ == ch) + return (p - 1); + } while (--len != 0); + } + return (NULL); +} + static char * ntoskrnl_strstr(s, find) char *s, *find; @@ -2472,6 +2495,52 @@ return; } +static void * +MmAllocateContiguousMemory(size, highest) + uint32_t size; + uint64_t highest; +{ + void *addr; + size_t pagelength = roundup(size, PAGE_SIZE); + + addr = ExAllocatePoolWithTag(NonPagedPool, pagelength, 0); + + return(addr); +} + +static void * +MmAllocateContiguousMemorySpecifyCache(size, lowest, highest, + boundary, cachetype) + uint32_t size; + uint64_t lowest; + uint64_t highest; + uint64_t boundary; + uint32_t cachetype; +{ + void *addr; + size_t pagelength = roundup(size, PAGE_SIZE); + + addr = ExAllocatePoolWithTag(NonPagedPool, pagelength, 0); + + return(addr); +} + +static void +MmFreeContiguousMemory(base) + void *base; +{ + ExFreePool(base); +} + +static void +MmFreeContiguousMemorySpecifyCache(base, size, cachetype) + void *base; + uint32_t size; + uint32_t cachetype; +{ + ExFreePool(base); +} + static uint32_t MmSizeOfMdl(vaddr, len) void *vaddr; @@ -4145,6 +4214,7 @@ IMPORT_SFUNC(DbgBreakPoint, 0), IMPORT_CFUNC(strncmp, 0), IMPORT_CFUNC(strcmp, 0), + IMPORT_CFUNC_MAP(stricmp, strcasecmp, 0), IMPORT_CFUNC(strncpy, 0), IMPORT_CFUNC(strcpy, 0), IMPORT_CFUNC(strlen, 0), @@ -4152,9 +4222,11 @@ IMPORT_CFUNC_MAP(tolower, ntoskrnl_tolower, 0), IMPORT_CFUNC_MAP(strstr, ntoskrnl_strstr, 0), IMPORT_CFUNC_MAP(strchr, index, 0), + IMPORT_CFUNC_MAP(strrchr, rindex, 0), IMPORT_CFUNC(memcpy, 0), IMPORT_CFUNC_MAP(memmove, ntoskrnl_memmove, 0), IMPORT_CFUNC_MAP(memset, ntoskrnl_memset, 0), + IMPORT_CFUNC_MAP(memchr, ntoskrnl_memchr, 0), IMPORT_SFUNC(IoAllocateDriverObjectExtension, 4), IMPORT_SFUNC(IoGetDriverObjectExtension, 2), IMPORT_FFUNC(IofCallDriver, 2), @@ -4240,6 +4312,11 @@ IMPORT_FFUNC(ExInterlockedAddLargeStatistic, 2), IMPORT_SFUNC(IoAllocateMdl, 5), IMPORT_SFUNC(IoFreeMdl, 1), + IMPORT_SFUNC(MmAllocateContiguousMemory, 2), + IMPORT_SFUNC(MmAllocateContiguousMemorySpecifyCache, 5), + IMPORT_SFUNC(MmFreeContiguousMemory, 1), + IMPORT_SFUNC(MmFreeContiguousMemorySpecifyCache, 3), + IMPORT_SFUNC_MAP(MmGetPhysicalAddress, pmap_kextract, 1), IMPORT_SFUNC(MmSizeOfMdl, 1), IMPORT_SFUNC(MmMapLockedPages, 2), IMPORT_SFUNC(MmMapLockedPagesSpecifyCache, 6), ==== //depot/projects/mjexp_6/sys/conf/NOTES#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1325.2.25 2006/12/30 17:55:15 maxim Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1325.2.26 2007/01/28 17:14:56 glebius Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -529,6 +529,7 @@ options NETGRAPH_BPF options NETGRAPH_BRIDGE options NETGRAPH_CISCO +options NETGRAPH_DEFLATE options NETGRAPH_DEVICE options NETGRAPH_ECHO options NETGRAPH_EIFACE @@ -553,6 +554,7 @@ options NETGRAPH_PPP options NETGRAPH_PPPOE options NETGRAPH_PPTPGRE +options NETGRAPH_PRED1 options NETGRAPH_RFC1490 options NETGRAPH_SOCKET options NETGRAPH_SPLIT ==== //depot/projects/mjexp_6/sys/conf/files#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1031.2.48 2006/12/30 17:55:15 maxim Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1031.2.50 2007/01/28 17:14:56 glebius Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1480,6 +1480,7 @@ net/zlib.c optional geom_uzip net80211/ieee80211.c optional wlan net80211/ieee80211_acl.c optional wlan_acl +net80211/ieee80211_amrr.c optional wlan_amrr net80211/ieee80211_crypto.c optional wlan net80211/ieee80211_crypto_ccmp.c optional wlan_ccmp net80211/ieee80211_crypto_none.c optional wlan @@ -1618,6 +1619,7 @@ netgraph/ng_bpf.c optional netgraph_bpf netgraph/ng_bridge.c optional netgraph_bridge netgraph/ng_cisco.c optional netgraph_cisco +netgraph/ng_deflate.c optional netgraph_deflate netgraph/ng_device.c optional netgraph_device netgraph/ng_echo.c optional netgraph_echo netgraph/ng_eiface.c optional netgraph_eiface @@ -1641,6 +1643,7 @@ netgraph/ng_ppp.c optional netgraph_ppp netgraph/ng_pppoe.c optional netgraph_pppoe netgraph/ng_pptpgre.c optional netgraph_pptpgre +netgraph/ng_pred1.c optional netgraph_pred1 netgraph/ng_rfc1490.c optional netgraph_rfc1490 netgraph/ng_socket.c optional netgraph_socket netgraph/ng_split.c optional netgraph_split ==== //depot/projects/mjexp_6/sys/conf/options#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.510.2.19 2006/09/02 13:12:08 rwatson Exp $ +# $FreeBSD: src/sys/conf/options,v 1.510.2.20 2007/01/28 17:14:56 glebius Exp $ # # On the handling of kernel options # @@ -411,6 +411,7 @@ NETGRAPH_BPF opt_netgraph.h NETGRAPH_BRIDGE opt_netgraph.h NETGRAPH_CISCO opt_netgraph.h +NETGRAPH_DEFLATE opt_netgraph.h NETGRAPH_DEVICE opt_netgraph.h NETGRAPH_ECHO opt_netgraph.h NETGRAPH_EIFACE opt_netgraph.h @@ -435,6 +436,7 @@ NETGRAPH_PPP opt_netgraph.h NETGRAPH_PPPOE opt_netgraph.h NETGRAPH_PPTPGRE opt_netgraph.h +NETGRAPH_PRED1 opt_netgraph.h NETGRAPH_RFC1490 opt_netgraph.h NETGRAPH_SOCKET opt_netgraph.h NETGRAPH_SPLIT opt_netgraph.h ==== //depot/projects/mjexp_6/sys/contrib/dev/ath/ah.h#2 (text+ko) ==== @@ -33,7 +33,7 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGES. * - * $Id: //depot/sw/branches/sam_hal/ah.h#10 $ + * $Id: //depot/sw/branches/sam_hal/ah.h#19 $ */ #ifndef _ATH_AH_H_ @@ -131,6 +131,8 @@ HAL_CAP_TPC_CTS = 27, /* cts txpower with per-packet tpc */ HAL_CAP_11D = 28, /* 11d beacon support for changing cc */ HAL_CAP_INTMIT = 29, /* interference mitigation */ + HAL_CAP_RXORN_FATAL = 30, /* HAL_INT_RXORN treated as fatal */ + HAL_CAP_RXTSTAMP_PREC = 34, /* rx desc tstamp precision (bits) */ } HAL_CAPABILITY_TYPE; /* @@ -286,9 +288,7 @@ /* compression definitions */ #define HAL_COMP_BUF_MAX_SIZE 9216 /* 9K */ #define HAL_COMP_BUF_ALIGN_SIZE 512 -#define HAL_DECOMP_MASK_SIZE 128 - /* * Transmit packet types. This belongs in ah_desc.h, but * is here so we can give a proper type to various parameters @@ -358,7 +358,7 @@ HAL_INT_GPIO = 0x01000000, HAL_INT_CABEND = 0x02000000, /* Non-common mapping */ HAL_INT_FATAL = 0x40000000, /* Non-common mapping */ - HAL_INT_GLOBAL = 0x80000000, /* Set/clear IER */ +#define HAL_INT_GLOBAL 0x80000000 /* Set/clear IER */ HAL_INT_BMISC = HAL_INT_TIM | HAL_INT_DTIM | HAL_INT_DTIMSYNC @@ -377,7 +377,6 @@ | HAL_INT_SWBA | HAL_INT_BMISS | HAL_INT_GPIO, - HAL_INT_NOCARD = 0xffffffff /* To signal the card was removed */ } HAL_INT; typedef enum { @@ -525,6 +524,7 @@ u_int16_t kv_len; /* length in bits */ u_int8_t kv_val[16]; /* enough for 128-bit keys */ u_int8_t kv_mic[8]; /* TKIP MIC key */ + u_int8_t kv_txmic[8]; /* TKIP TX MIC key (optional) */ } HAL_KEYVAL; typedef enum { @@ -592,6 +592,8 @@ #define HAL_RSSI_EP_MULTIPLIER (1<<7) /* pow2 to optimize out * and / */ struct ath_desc; +struct ath_tx_status; +struct ath_rx_status; /* * Hardware Access Layer (HAL) API. @@ -606,7 +608,7 @@ struct ath_hal { u_int32_t ah_magic; /* consistency check magic number */ u_int32_t ah_abi; /* HAL ABI version */ -#define HAL_ABI_VERSION 0x06052200 /* YYMMDDnn */ +#define HAL_ABI_VERSION 0x06102600 /* YYMMDDnn */ u_int16_t ah_devid; /* PCI device ID */ u_int16_t ah_subvendorid; /* PCI subvendor ID */ HAL_SOFTC ah_sc; /* back pointer to driver/os state */ @@ -620,7 +622,7 @@ /* NB: when only one radio is present the rev is in 5Ghz */ u_int16_t ah_analog5GhzRev;/* 5GHz radio revision */ u_int16_t ah_analog2GhzRev;/* 2GHz radio revision */ - u_int8_t ah_decompMask[HAL_DECOMP_MASK_SIZE]; /* decomp mask array */ + const HAL_RATE_TABLE *__ahdecl(*ah_getRateTable)(struct ath_hal *, u_int mode); void __ahdecl(*ah_detach)(struct ath_hal*); @@ -635,12 +637,7 @@ HAL_BOOL __ahdecl(*ah_perCalibration)(struct ath_hal*, HAL_CHANNEL *, HAL_BOOL *); HAL_BOOL __ahdecl(*ah_setTxPowerLimit)(struct ath_hal *, u_int32_t); - void __ahdecl(*ah_arEnable)(struct ath_hal *); - void __ahdecl(*ah_arDisable)(struct ath_hal *); - void __ahdecl(*ah_arReset)(struct ath_hal *); - HAL_BOOL __ahdecl(*ah_radarHaveEvent)(struct ath_hal *); - HAL_BOOL __ahdecl(*ah_processDfs)(struct ath_hal *, HAL_CHANNEL *); - u_int32_t __ahdecl(*ah_dfsNolCheck)(struct ath_hal *, HAL_CHANNEL *, u_int32_t); + /* DFS support */ HAL_BOOL __ahdecl(*ah_radarWait)(struct ath_hal *, HAL_CHANNEL *); /* Transmit functions */ @@ -674,7 +671,8 @@ HAL_BOOL __ahdecl(*ah_fillTxDesc)(struct ath_hal *, struct ath_desc *, u_int segLen, HAL_BOOL firstSeg, HAL_BOOL lastSeg, const struct ath_desc *); - HAL_STATUS __ahdecl(*ah_procTxDesc)(struct ath_hal *, struct ath_desc*); + HAL_STATUS __ahdecl(*ah_procTxDesc)(struct ath_hal *, + struct ath_desc *, struct ath_tx_status *); void __ahdecl(*ah_getTxIntrQueue)(struct ath_hal *, u_int32_t *); void __ahdecl(*ah_reqTxIntrDesc)(struct ath_hal *, struct ath_desc*); @@ -695,9 +693,10 @@ void __ahdecl(*ah_setRxFilter)(struct ath_hal*, u_int32_t); HAL_BOOL __ahdecl(*ah_setupRxDesc)(struct ath_hal *, struct ath_desc *, u_int32_t size, u_int flags); - HAL_STATUS __ahdecl(*ah_procRxDesc)(struct ath_hal *, struct ath_desc *, - u_int32_t phyAddr, struct ath_desc *next, - u_int64_t tsf); + HAL_STATUS __ahdecl(*ah_procRxDesc)(struct ath_hal *, + struct ath_desc *, u_int32_t phyAddr, + struct ath_desc *next, u_int64_t tsf, + struct ath_rx_status *); void __ahdecl(*ah_rxMonitor)(struct ath_hal *, const HAL_NODE_STATS *, HAL_CHANNEL *); void __ahdecl(*ah_procMibEvent)(struct ath_hal *, ==== //depot/projects/mjexp_6/sys/contrib/dev/ath/ah_desc.h#2 (text+ko) ==== @@ -33,7 +33,7 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGES. * - * $Id: //depot/sw/branches/sam_hal/ah_desc.h#2 $ + * $Id: //depot/sw/branches/sam_hal/ah_desc.h#5 $ */ #ifndef _DEV_ATH_DESC_H @@ -59,6 +59,7 @@ u_int8_t ts_longretry; /* # long retries */ u_int8_t ts_virtcol; /* virtual collision count */ u_int8_t ts_antenna; /* antenna information */ + u_int8_t ts_finaltsi; /* final transmit series index */ }; #define HAL_TXERR_XRETRY 0x01 /* excessive retries */ @@ -153,17 +154,14 @@ u_int32_t ds_ctl0; /* opaque DMA control 0 */ u_int32_t ds_ctl1; /* opaque DMA control 1 */ u_int32_t ds_hw[4]; /* opaque h/w region */ - /* - * The remaining definitions are managed by software; - * these are valid only after the rx/tx process descriptor - * methods return a non-EINPROGRESS code. - */ +}; + +struct ath_desc_status { union { struct ath_tx_status tx;/* xmit status */ struct ath_rx_status rx;/* recv status */ } ds_us; - void *ds_vdata; /* virtual addr of data buffer */ -} __packed; +}; #define ds_txstat ds_us.tx #define ds_rxstat ds_us.rx @@ -180,4 +178,4 @@ /* flags passed to rx descriptor setup methods */ #define HAL_RXDESC_INTREQ 0x0020 /* enable per-descriptor interrupt */ -#endif /* _DEV_ATH_AR521XDMA_H */ +#endif /* _DEV_ATH_DESC_H */ ==== //depot/projects/mjexp_6/sys/contrib/dev/ath/ah_devid.h#2 (text+ko) ==== @@ -33,7 +33,7 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGES. * - * $Id: //depot/sw/branches/sam_hal/ah_devid.h#1 $ + * $Id: //depot/sw/branches/sam_hal/ah_devid.h#2 $ */ #ifndef _DEV_ATH_DEVID_H_ @@ -88,6 +88,12 @@ #define AR5213_SREV_1_0 0x0055 #define AR5213_SREV_REG 0x4020 +/* AR5416 */ +#define AR5416_DEVID_EMU_PCI 0xff1d /* PCI Owl Emulation*/ +#define AR5416_DEVID_EMU_PCIE 0xff1c /* PCIe Owl Emulation*/ +#define AR5416_DEVID 0x0023 /* PCI (MB/CB) */ +#define AR5418_DEVID 0x0024 /* PCI Express (XB) */ + #define AR_SUBVENDOR_ID_NOG 0x0e11 /* No 11G subvendor ID */ #define AR_SUBVENDOR_ID_NEW_A 0x7065 /* Update device to new RD */ #endif /* _DEV_ATH_DEVID_H */ ==== //depot/projects/mjexp_6/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 (text) ==== @@ -35,9 +35,9 @@ * * $Id: //depot/sw/branches/sam_hal/COPYRIGHT#1 $ */ -#define ATH_HAL_VERSION "0.9.17.2" +#define ATH_HAL_VERSION "0.9.20.3" begin 644 hal.o -M?T5,1@(!`0````````````$`)I`!`````````````````````````"@-!``` +M?T5,1@(!`0````````````$`)I`!`````````````````````````.CP`P`` M`````````$```````$``#@`+````NR<``+TC$`#P0Z(5"T(``#TD```!($\` M0/2A'0M"&@`@Y*%]`T(,`"#DH5D#0D4`(.2A70)"!0`@Y*$Y`D(X`"#DH?4` M0C,`(/1!`.##H74"0CP`(/0^`.##H54*0C,`(/2A70I"!0`@Y**5`T(``#TD @@ -53,8 +53,8 @@ M`"#D`P`@_.SO(B`3`"#D(@#@P^[N(B`6`"#D'P#@PP$`?R0;\6,@H05#0!$` M(/2A#4-`!0`@Y`$`/R03\"$@H05!0`8`(/04`.##`0`_)!G_(2"A!4%`$``@ MY!,`'R(``'VG`$!;:P``NB<``+TC#0#@PP``?:<`0%MK``"Z)P``O2,(`.## -M``!]IP!`6VL``+HG``"](P,`X,,`!/]'`0`_(```-+`(``#D,`0@H`@`(+`T -M!""@+``@L#@$(*`P`""P/`0@H#0`(+```%ZG$`#>(P&`^FM`!#"R`0`?(`&` +M``!]IP!`6VL``+HG``"](P,`X,,`!/]'`0`_(```-+`(``#D>`,@H`@`(+!\ +M`R"@+``@L(`#(*`P`""PA`,@H#0`(+```%ZG$`#>(P&`^FN(`S"R`0`?(`&` M^FL``+LG``"](]#_WB,``%ZW"``^M1``7K48`'ZU(`">M2@`OK4-!/!'#`3Q M1PL$\D<)!/]'*O9A2A`$[4<1!.Q'``!]IP!`6VL``+HG``"](P``"T0@]@%( MH`4*0`$`/R`)``#T"@`?(@``?:<`0%MK``"Z)P``O2,),"!!&?PI(.W_/^P! @@ -64,9 +64,9 @@ MJ0!@Y&$%I2``WB,!@/IK``"[)P``O2/P_]XC``!> -MMP@`/K4)!/%'H!0PIF$%*4%A!2E````A0`@`(.9&_U_3(/8!2```/20``"$@ +MMP@`/K4)!/%'Z!,PIF$%*4%A!2E````A0`@`(.9&_U_3(/8!2```/20``"$@ M``0!0```("S!`"!(```I3```7J<(`#ZE$`#>(P&`^FL``+LG``"](_#_WB,` -M`%ZW"``^M0D$\4>@%#"F"P`@YC+_7],@]@%(```])```(2``!`%````@+Q@` +M`%ZW"``^M0D$\4?H$S"F"P`@YC+_7],@]@%(```])```(2``!`%````@+Q@` MZ4/9`"!+``!]IP!`^VH+`.##(?8A26(%(4!B!T)`8@5!0&(%04!"!D)`(_=! M2",%8D!#!F%`8P5A0)N69$@`!/M'``!>IP@`/J40`-XC`8#Z:P``NR<``+TC MP/_>(P``7K<(`#ZU$`!>M1@`?K4@`)ZU*`"^M3``WK4.!/!'#`3Q1P0`,:`! @@ -105,2507 +105,2515 @@ M!.Y'$03L1PX`7R(3!.M'%`3_1R?^7],,`"HL+`!)($$"(DA@!P)(``0!1`P` M"CP0!.Y'$03L1PX`7R(3!.M'`0"?(AO^7],.`"HL+@`I(4$"*4A@!PE(``0! M1`X`"CP-,*!!```LH*$-+4#(_S_D``!>IP@`/J40`%ZE&`!^I2``GJ4H`+ZE -M,`#>I4``WB,!@/IK``"[)P``O2-(!%`@,?8A2J&7(T)9`"#D```])```(2!! -M!"%"```AH`$$H4-1`.%K;`0PH`(`X,,(`"*@P5(@2"%V($@``#.P``3_1P&` -M^FL(`"*@^O__PP``(J#!4B!()P#@PP``(J"!]B%(``3_1X"R(40!@/IK```B -MH`&0($0"`.##```BH`$0(42A`^%#``3_1X"T(40!@/IK```BH`$0(D3Y___# -M7`0PH.7__\,R]D%*H35`0@<`(/0`!/]'+P!`YJ%50$('`"#TH75`0@<`(/0G -M`.##8`0PH"$7)DB!%R9(U___PV`$,*#3___#9`0PH-/__\,``"*@@38B2``$ -M_T?`LB%$`8#Z:P``(J"!5B)(^O__PP``(J"!%B%(]___PP``(J"!EB)(]/__ -MPP``(J"!MB)(\?__PS+V04JA-4!"!P`@]`,`0.:A54!"!@`@]`<`X,,``"*@ -M@=8B2.?__\.\%#"@R?__P[@4,*"S___##0`?(`&`^FL,`!\@`8#Z:S'V(4JA -M]2%"`P`@]*$U(T('`"#T%@#@PZ%U0$(4`"#DH9=@0A(`(.1D!'"R"`#@PS+V -M04JA-4!"`P`@]*%50$(%`"#T"@#@PZ$#\T.\%#"P`0`?(`&`^FNX%%"@(I9? -M2"%V8$H!!")$N!0PL/C__\,"`(#F#``_(```-+``!/]'`8#Z:P``NR<``+TC -ML/_>(P``7K<(`#ZU$`!>M1@`?K4@`)ZU*`"^M3``WK4X`/ZU#03P1T``/K9( -M`%ZV"@3S1PL$\DI$$$XD$``$$LR0)!2`(` >>> TRUNCATED FOR MAIL (1000 lines) <<<