PERFORCE change 114642 for review
Matt Jacob
mjacob at FreeBSD.org
Sat Feb 17 05:15:54 UTC 2007
http://perforce.freebsd.org/chv.cgi?CH=114642
Change 114642 by mjacob at 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 <sys/cdefs.h>
-__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 <sys/cdefs.h>
-__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 <machine/smp.h>
#endif
#include <machine/tss.h>
+#include <security/audit/audit.h>
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 <sys/cdefs.h>
-__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 <sys/param.h>
#include <sys/systm.h>
#include <sys/kernel.h>
@@ -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 <sys/cdefs.h>
-__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 <sys/ctype.h>
#include <sys/unistd.h>
@@ -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, at 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 at H`@`(+`T
-M!""@+``@L#@$(*`P`""P/`0 at H#0`(+```%ZG$`#>(P&`^FM`!#"R`0`?(`&`
+M``!]IP!`6VL``+HG``"](P,`X,,`!/]'`0`_(```-+`(``#D>`, at H`@`(+!\
+M`R"@+``@L(`#(*`P`""PA`, at 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&$%<T)!!#%`)0!!+"4`(2#"`$%(H55`0!P`(/2A74!``@`@Y`8`0.2<
M`.##H75`0&<`(/2AE4!`?``@])<`X,/``)\@!@"`YF$%<T)!!#%`*0!!+"D`
M(2#"`$%(Q!1,1$$20$)8!"%`6`080U@$&$-8$@!#&0#C0P``?:<`0/MJ&P1D
-M0P!084.%`.##H!10I!P`0.0$`$(@_O\B+$$/(DB!%R9(%P`@^"*78$A!!D)`
+M0P!084.%`.##Z!-0I!P`0.0$`$(@_O\B+$$/(DB!%R9(%P`@^"*78$A!!D)`
M80<B0$$&(4!!!B)`000A0$$$(D!!!B)`804A0&$'(4!!!")`804B0)G6)$A!
-MUD)"`0#A0Q@$.4`X,0!#&0#Y0P``?:<`0/MJ(9=@2P`0,D!G`.##H!10I!L`
+MUD)"`0#A0Q@$.4`X,0!#&0#Y0P``?:<`0/MJ(9=@2P`0,D!G`.##Z!-0I!L`
M0.0"`"(L`@!"(,$"(DB!UB%(%@`@X$(68$!!!D)`80<B0$$&(4!!!B)`000A
M0$$$(D!!!B)`804A0&$'(4!!!")`804B0)G6)$A!UD)"`0#A0Q@$.4`X,0!#
M&0#Y0P``?:<`0/MJ019I0RL`X,-"%&!`009"0&$'(D!!!B%`008B0$$$(4!!
@@ -92,9 +92,9 @@
M(?8A2$($(4!"!D%`0 at 1"0&(%04!"!$%`8 at 5!0",70D@"!$-`0 at 1!0(*61$@/
M``(@#`#@PWCL*B`A]B%(0 at 0A0$(&04!"!$)`8 at 5!0$($04!B!4%`(Q="2`($
M0T!"!$%`@%9$2```7J<(`#ZE$`!>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 at 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$\D</!/]'H?=@0B$`(/0#`-\A0`!>I$$$XD$``$$LR0)!2`(`
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list