PERFORCE change 159702 for review
John Baldwin
jhb at FreeBSD.org
Mon Mar 23 13:20:32 PDT 2009
http://perforce.freebsd.org/chv.cgi?CH=159702
Change 159702 by jhb at jhb_jhbbsd on 2009/03/23 20:19:50
IFC @159699
Affected files ...
.. //depot/projects/smpng/sys/amd64/amd64/pmap.c#92 integrate
.. //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#41 integrate
.. //depot/projects/smpng/sys/amd64/conf/GENERIC#74 integrate
.. //depot/projects/smpng/sys/amd64/include/pmap.h#31 integrate
.. //depot/projects/smpng/sys/arm/conf/HL200#8 integrate
.. //depot/projects/smpng/sys/arm/conf/KB920X#15 integrate
.. //depot/projects/smpng/sys/boot/forth/loader.conf#59 integrate
.. //depot/projects/smpng/sys/boot/pc98/libpc98/bioscd.c#4 integrate
.. //depot/projects/smpng/sys/boot/pc98/libpc98/biosdisk.c#16 integrate
.. //depot/projects/smpng/sys/boot/pc98/libpc98/time.c#4 integrate
.. //depot/projects/smpng/sys/cddl/dev/dtnfsclient/dtnfsclient.c#1 branch
.. //depot/projects/smpng/sys/conf/NOTES#164 integrate
.. //depot/projects/smpng/sys/conf/files#233 integrate
.. //depot/projects/smpng/sys/dev/age/if_age.c#5 integrate
.. //depot/projects/smpng/sys/dev/agp/agp.c#7 integrate
.. //depot/projects/smpng/sys/dev/agp/agp_amd64.c#4 integrate
.. //depot/projects/smpng/sys/dev/agp/agp_i810.c#8 integrate
.. //depot/projects/smpng/sys/dev/agp/agp_intel.c#3 integrate
.. //depot/projects/smpng/sys/dev/agp/agp_via.c#4 integrate
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ah.h#5 integrate
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c#4 integrate
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c#4 integrate
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c#4 integrate
.. //depot/projects/smpng/sys/dev/ath/if_ath.c#72 integrate
.. //depot/projects/smpng/sys/dev/ath/if_athvar.h#44 integrate
.. //depot/projects/smpng/sys/dev/bge/if_bge.c#105 integrate
.. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#60 integrate
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_main.c#20 integrate
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_offload.c#5 integrate
.. //depot/projects/smpng/sys/dev/dc/dcphy.c#7 integrate
.. //depot/projects/smpng/sys/dev/dc/pnphy.c#5 integrate
.. //depot/projects/smpng/sys/dev/drm/ati_pcigart.c#7 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_irq.c#9 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_pciids.h#12 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_scatter.c#8 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_vm.c#6 integrate
.. //depot/projects/smpng/sys/dev/drm/i915_drv.c#9 integrate
.. //depot/projects/smpng/sys/dev/drm/i915_suspend.c#4 integrate
.. //depot/projects/smpng/sys/dev/msk/if_msk.c#15 integrate
.. //depot/projects/smpng/sys/dev/my/if_my.c#30 integrate
.. //depot/projects/smpng/sys/dev/syscons/teken/teken.c#5 integrate
.. //depot/projects/smpng/sys/dev/syscons/teken/teken_subr.h#3 integrate
.. //depot/projects/smpng/sys/dev/twa/tw_cl_init.c#5 integrate
.. //depot/projects/smpng/sys/dev/twa/tw_osl.h#6 integrate
.. //depot/projects/smpng/sys/dev/twa/tw_osl_freebsd.c#11 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/at91dci.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/at91dci_atmelarm.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/atmegadci.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/atmegadci_atmelarm.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci.h#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci_ixp4xx.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci_mbus.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci_pci.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/musb_otg.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/musb_otg_atmelarm.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ohci.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ohci.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ohci_atmelarm.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ohci_pci.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/uhci.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/uhci.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/uhci_pci.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/usb_controller.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/uss820dci.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/uss820dci_atmelarm.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/image/uscanner.c#5 delete
.. //depot/projects/smpng/sys/dev/usb/input/uhid.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/input/ums.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb/misc/udbp.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/net/if_cdce.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/u3g.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/ubser.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/ucycom.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/ufoma.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/ugensa.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/umct.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/umodem.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/uplcom.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/uvisor.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/storage/umass.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb/storage/urio.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/storage/ustorage_fs.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/template/usb_template.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_bus.h#3 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_busdma.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_busdma.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_compat_linux.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_compat_linux.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_controller.h#3 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_core.h#5 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_debug.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_debug.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_defs.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_dev.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_dev.h#5 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_device.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_device.h#6 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_dynamic.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_endian.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_generic.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_handle_request.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_hid.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_hid.h#4 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_hub.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_hub.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_lookup.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_lookup.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_mbuf.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_mbuf.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_msctest.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_process.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_process.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_request.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_request.h#3 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_sw_transfer.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_transfer.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_transfer.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_util.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_util.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdevs#132 integrate
.. //depot/projects/smpng/sys/geom/part/g_part.c#17 integrate
.. //depot/projects/smpng/sys/i386/conf/GENERIC#106 integrate
.. //depot/projects/smpng/sys/i386/conf/XBOX#12 integrate
.. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#91 integrate
.. //depot/projects/smpng/sys/i386/include/pmap.h#42 integrate
.. //depot/projects/smpng/sys/kern/imgact_elf.c#65 integrate
.. //depot/projects/smpng/sys/kern/kern_environment.c#28 integrate
.. //depot/projects/smpng/sys/kern/kern_time.c#56 integrate
.. //depot/projects/smpng/sys/kern/subr_bus.c#76 integrate
.. //depot/projects/smpng/sys/kern/vfs_cache.c#51 integrate
.. //depot/projects/smpng/sys/modules/dtrace/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/dtrace/dtnfsclient/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/dtrace/dtraceall/dtraceall.c#2 integrate
.. //depot/projects/smpng/sys/modules/usb/Makefile#14 integrate
.. //depot/projects/smpng/sys/modules/usb/uscanner/Makefile#2 delete
.. //depot/projects/smpng/sys/net/if.c#114 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_node.h#26 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_output.c#38 integrate
.. //depot/projects/smpng/sys/netinet/ip_mroute.c#64 integrate
.. //depot/projects/smpng/sys/netinet/tcp_subr.c#109 integrate
.. //depot/projects/smpng/sys/netipsec/key.c#32 integrate
.. //depot/projects/smpng/sys/nfs4client/nfs4_vnops.c#31 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs.h#34 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_krpc.c#2 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#84 integrate
.. //depot/projects/smpng/sys/nfsclient/nfsnode.h#23 integrate
.. //depot/projects/smpng/sys/pc98/conf/GENERIC#82 integrate
.. //depot/projects/smpng/sys/powerpc/conf/GENERIC#56 integrate
.. //depot/projects/smpng/sys/sparc64/central/central.c#10 integrate
.. //depot/projects/smpng/sys/sparc64/conf/GENERIC#91 integrate
.. //depot/projects/smpng/sys/sparc64/ebus/ebus.c#26 integrate
.. //depot/projects/smpng/sys/sparc64/fhc/fhc.c#13 integrate
.. //depot/projects/smpng/sys/sparc64/include/trap.h#12 integrate
.. //depot/projects/smpng/sys/sparc64/isa/isa.c#21 integrate
.. //depot/projects/smpng/sys/sparc64/isa/ofw_isa.c#11 integrate
.. //depot/projects/smpng/sys/sparc64/pci/apb.c#16 integrate
.. //depot/projects/smpng/sys/sparc64/pci/ofw_pcib.c#11 integrate
.. //depot/projects/smpng/sys/sparc64/pci/ofw_pcibus.c#15 integrate
.. //depot/projects/smpng/sys/sparc64/pci/psycho.c#49 integrate
.. //depot/projects/smpng/sys/sparc64/pci/psychovar.h#17 integrate
.. //depot/projects/smpng/sys/sparc64/pci/schizo.c#5 integrate
.. //depot/projects/smpng/sys/sparc64/sbus/dma_sbus.c#8 integrate
.. //depot/projects/smpng/sys/sparc64/sbus/sbus.c#33 integrate
.. //depot/projects/smpng/sys/sparc64/sbus/sbusvar.h#7 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/eeprom.c#11 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/jbusppm.c#2 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/machdep.c#94 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/mp_machdep.c#37 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/nexus.c#20 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/rtc.c#7 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/sc_machdep.c#4 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/schppm.c#2 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/trap.c#83 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/upa.c#10 integrate
.. //depot/projects/smpng/sys/sun4v/conf/GENERIC#15 integrate
.. //depot/projects/smpng/sys/sun4v/include/trap.h#5 integrate
.. //depot/projects/smpng/sys/sun4v/sun4v/trap.c#11 integrate
.. //depot/projects/smpng/sys/sys/dtrace_bsd.h#2 integrate
.. //depot/projects/smpng/sys/sys/param.h#139 integrate
Differences ...
==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#92 (text+ko) ====
@@ -77,7 +77,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.656 2009/03/14 08:28:02 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.657 2009/03/22 04:32:05 alc Exp $");
/*
* Manages physical address maps.
@@ -542,7 +542,7 @@
* Initialize the kernel pmap (which is statically allocated).
*/
PMAP_LOCK_INIT(kernel_pmap);
- kernel_pmap->pm_pml4 = (pdp_entry_t *) (KERNBASE + KPML4phys);
+ kernel_pmap->pm_pml4 = (pdp_entry_t *)PHYS_TO_DMAP(KPML4phys);
kernel_pmap->pm_root = NULL;
kernel_pmap->pm_active = -1; /* don't allow deactivation */
TAILQ_INIT(&kernel_pmap->pm_pvchunk);
@@ -1351,7 +1351,7 @@
{
PMAP_LOCK_INIT(pmap);
- pmap->pm_pml4 = (pml4_entry_t *)(KERNBASE + KPML4phys);
+ pmap->pm_pml4 = (pml4_entry_t *)PHYS_TO_DMAP(KPML4phys);
pmap->pm_root = NULL;
pmap->pm_active = 0;
TAILQ_INIT(&pmap->pm_pvchunk);
@@ -4695,7 +4695,7 @@
oldpmap->pm_active &= ~PCPU_GET(cpumask);
pmap->pm_active |= PCPU_GET(cpumask);
#endif
- cr3 = vtophys(pmap->pm_pml4);
+ cr3 = DMAP_TO_PHYS((vm_offset_t)pmap->pm_pml4);
td->td_pcb->pcb_cr3 = cr3;
load_cr3(cr3);
critical_exit();
==== //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#41 (text+ko) ====
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.260 2009/03/02 18:43:50 kib Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.262 2009/03/22 04:32:05 alc Exp $");
#include "opt_isa.h"
#include "opt_cpu.h"
@@ -103,6 +103,7 @@
register struct proc *p1;
struct pcb *pcb2;
struct mdproc *mdp2;
+ pmap_t pmap2;
p1 = td1->td_proc;
if ((flags & RFPROC) == 0)
@@ -150,7 +151,8 @@
* Set registers for trampoline to user mode. Leave space for the
* return address on stack. These are the kernel mode register values.
*/
- pcb2->pcb_cr3 = vtophys(vmspace_pmap(p2->p_vmspace)->pm_pml4);
+ pmap2 = vmspace_pmap(p2->p_vmspace);
+ pcb2->pcb_cr3 = DMAP_TO_PHYS((vm_offset_t)pmap2->pm_pml4);
pcb2->pcb_r12 = (register_t)fork_return; /* fork_trampoline argument */
pcb2->pcb_rbp = 0;
pcb2->pcb_rsp = (register_t)td2->td_frame - sizeof(void *);
@@ -287,7 +289,6 @@
* Set registers for trampoline to user mode. Leave space for the
* return address on stack. These are the kernel mode register values.
*/
- pcb2->pcb_cr3 = vtophys(vmspace_pmap(td->td_proc->p_vmspace)->pm_pml4);
pcb2->pcb_r12 = (register_t)fork_return; /* trampoline arg */
pcb2->pcb_rbp = 0;
pcb2->pcb_rsp = (register_t)td->td_frame - sizeof(void *); /* trampoline arg */
@@ -295,6 +296,7 @@
pcb2->pcb_rip = (register_t)fork_trampoline;
/*
* If we didn't copy the pcb, we'd need to do the following registers:
+ * pcb2->pcb_cr3: cloned above.
* pcb2->pcb_dr*: cloned above.
* pcb2->pcb_savefpu: cloned above.
* pcb2->pcb_onfault: cloned above (always NULL here?).
==== //depot/projects/smpng/sys/amd64/conf/GENERIC#74 (text+ko) ====
@@ -16,7 +16,7 @@
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
-# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.521 2009/02/23 18:34:56 thompsa Exp $
+# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.522 2009/03/19 20:33:26 thompsa Exp $
cpu HAMMER
ident GENERIC
@@ -295,7 +295,6 @@
device ural # Ralink Technology RT2500USB wireless NICs
device rum # Ralink Technology RT2501USB wireless NICs
device urio # Diamond Rio 500 MP3 player
-device uscanner # Scanners
# USB Serial devices
device uark # Technologies ARK3116 based serial adapters
device ubsa # Belkin F5U103 and compatible serial adapters
==== //depot/projects/smpng/sys/amd64/include/pmap.h#31 (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.148 2008/08/04 08:04:09 alc Exp $
+ * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.150 2009/03/22 18:56:26 alc Exp $
*/
#ifndef _MACHINE_PMAP_H_
@@ -160,13 +160,7 @@
#define PDESHIFT (3)
/*
- * Address of current and alternate address space page table maps
- * and directories.
- * XXX it might be saner to just direct map all of physical memory
- * into the kernel using 2MB pages. We have enough space to do
- * it (2^47 bits of KVM, while current max physical addressability
- * is 2^40 physical bits). Then we can get rid of the evil hole
- * in the page tables and the evil overlapping.
+ * Address of current address space page table maps and directories.
*/
#ifdef _KERNEL
#define addr_PTmap (KVADDR(PML4PML4I, 0, 0, 0))
@@ -243,6 +237,10 @@
TAILQ_HEAD(,pv_entry) pv_list;
};
+/*
+ * The kernel virtual address (KVA) of the level 4 page table page is always
+ * within the direct map (DMAP) region.
+ */
struct pmap {
struct mtx pm_mtx;
pml4_entry_t *pm_pml4; /* KVA of level 4 page table */
==== //depot/projects/smpng/sys/arm/conf/HL200#8 (text+ko) ====
@@ -15,7 +15,7 @@
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
-# $FreeBSD: src/sys/arm/conf/HL200,v 1.9 2009/02/23 18:34:56 thompsa Exp $
+# $FreeBSD: src/sys/arm/conf/HL200,v 1.10 2009/03/19 20:33:26 thompsa Exp $
ident HL200
@@ -103,7 +103,6 @@
device ural # Ralink Technology RT2500USB wireless NICs
device rum # Ralink Technology RT2501USB wireless NICs
device urio # Diamond Rio 500 MP3 player
-device uscanner # Scanners
# USB Ethernet, requires miibus
device miibus
device aue # ADMtek USB Ethernet
==== //depot/projects/smpng/sys/arm/conf/KB920X#15 (text) ====
@@ -16,7 +16,7 @@
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
-# $FreeBSD: src/sys/arm/conf/KB920X,v 1.22 2009/02/23 18:34:56 thompsa Exp $
+# $FreeBSD: src/sys/arm/conf/KB920X,v 1.23 2009/03/19 20:33:26 thompsa Exp $
ident KB920X
@@ -104,7 +104,6 @@
device ural # Ralink Technology RT2500USB wireless NICs
device rum # Ralink Technology RT2501USB wireless NICs
device urio # Diamond Rio 500 MP3 player
-device uscanner # Scanners
# USB Ethernet, requires miibus
device miibus
device aue # ADMtek USB Ethernet
==== //depot/projects/smpng/sys/boot/forth/loader.conf#59 (text+ko) ====
@@ -6,7 +6,7 @@
#
# All arguments must be in double quotes.
#
-# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.137 2009/03/16 10:36:24 dchagin Exp $
+# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.138 2009/03/19 20:33:26 thompsa Exp $
##############################################################
### Basic configuration options ############################
@@ -379,7 +379,6 @@
ums_load="NO" # Mouse
umass_load="NO" # Mass Storage Devices
umodem_load="NO" # Modems
-uscanner_load="NO" # Scanners
if_aue_load="NO" # ADMtek USB ethernet
if_axe_load="NO" # ASIX Electronics AX88172 USB ethernet
if_cue_load="NO" # CATC USB ethernet
==== //depot/projects/smpng/sys/boot/pc98/libpc98/bioscd.c#4 (text) ====
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/bioscd.c,v 1.3 2007/10/24 04:03:25 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/bioscd.c,v 1.5 2009/03/20 13:03:33 nyan Exp $");
/*
* BIOS CD device handling for CD's that have been booted off of via no
@@ -170,9 +170,9 @@
static void
bc_print(int verbose)
{
+ char line[80];
int i;
- char line[80];
-
+
for (i = 0; i < nbcinfo; i++) {
sprintf(line, " cd%d: Device 0x%x\n", i,
bcinfo[i].bc_sp.sp_devicespec);
@@ -232,7 +232,7 @@
if (dblk % (BIOSCD_SECSIZE / DEV_BSIZE) != 0)
return (EINVAL);
dblk /= (BIOSCD_SECSIZE / DEV_BSIZE);
- DEBUG("read %d from %d to %p", blks, dblk, buf);
+ DEBUG("read %d from %lld to %p", blks, dblk, buf);
if (rsize)
*rsize = 0;
@@ -241,9 +241,9 @@
return (EIO);
}
#ifdef BD_SUPPORT_FRAGS
- DEBUG("bc_strategy: frag read %d from %d+%d to %p",
+ DEBUG("frag read %d from %lld+%d to %p",
fragsize, dblk, blks, buf + (blks * BIOSCD_SECSIZE));
- if (fragsize && bc_read(unit, dblk + blks, 1, fragsize)) {
+ if (fragsize && bc_read(unit, dblk + blks, 1, fragbuf)) {
DEBUG("frag read error");
return(EIO);
}
@@ -254,11 +254,14 @@
return (0);
}
+/* Max number of sectors to bounce-buffer at a time. */
+#define CD_BOUNCEBUF 8
+
static int
bc_read(int unit, daddr_t dblk, int blks, caddr_t dest)
{
- u_int result, retry;
- static unsigned short packet[8];
+ u_int maxfer, resid, result, retry, x;
+ caddr_t bbuf, p, xp;
int biosdev;
#ifdef DISK_DEBUG
int error;
@@ -272,40 +275,73 @@
if (blks == 0)
return (0);
+ /* Decide whether we have to bounce */
+ if (VTOP(dest) >> 20 != 0) {
+ /*
+ * The destination buffer is above first 1MB of
+ * physical memory so we have to arrange a suitable
+ * bounce buffer.
+ */
+ x = min(CD_BOUNCEBUF, (unsigned)blks);
+ bbuf = alloca(x * BIOSCD_SECSIZE);
+ maxfer = x;
+ } else {
+ bbuf = NULL;
+ maxfer = 0;
+ }
+
biosdev = bc_unit2bios(unit);
- /*
- * Loop retrying the operation a couple of times. The BIOS
- * may also retry.
- */
- for (retry = 0; retry < 3; retry++) {
- /* If retrying, reset the drive */
- if (retry > 0) {
+ resid = blks;
+ p = dest;
+
+ while (resid > 0) {
+ if (bbuf)
+ xp = bbuf;
+ else
+ xp = p;
+ x = resid;
+ if (maxfer > 0)
+ x = min(x, maxfer);
+
+ /*
+ * Loop retrying the operation a couple of times. The BIOS
+ * may also retry.
+ */
+ for (retry = 0; retry < 3; retry++) {
+ /* If retrying, reset the drive */
+ if (retry > 0) {
+ v86.ctl = V86_FLAGS;
+ v86.addr = 0x1b;
+ v86.eax = 0x0300 | biosdev;
+ v86int();
+ }
+
v86.ctl = V86_FLAGS;
v86.addr = 0x1b;
- v86.eax = 0x0300 | biosdev;
+ v86.eax = 0x0600 | (biosdev & 0x7f);
+ v86.ebx = x * BIOSCD_SECSIZE;
+ v86.ecx = dblk & 0xffff;
+ v86.edx = (dblk >> 16) & 0xffff;
+ v86.ebp = VTOPOFF(xp);
+ v86.es = VTOPSEG(xp);
v86int();
+ result = (v86.efl & PSL_C);
+ if (result == 0)
+ break;
}
-
- v86.ctl = V86_FLAGS;
- v86.addr = 0x1b;
- v86.eax = 0x0600 | (biosdev & 0x7f);
- v86.ebx = blks * BIOSCD_SECSIZE;
- v86.ecx = dblk & 0xffff;
- v86.edx = (dblk >> 16) & 0xffff;
- v86.ebp = VTOPOFF(dest);
- v86.es = VTOPSEG(dest);
- v86int();
- result = (v86.efl & PSL_C);
- if (result == 0)
- break;
- }
#ifdef DISK_DEBUG
- error = (v86.eax >> 8) & 0xff;
+ error = (v86.eax >> 8) & 0xff;
#endif
- DEBUG("%d sectors from %ld to %p (0x%x) %s", blks, dblk, dest,
- VTOP(dest), result ? "failed" : "ok");
- DEBUG("unit %d status 0x%x", unit, error);
+ DEBUG("%d sectors from %lld to %p (0x%x) %s", x, dblk, p,
+ VTOP(p), result ? "failed" : "ok");
+ DEBUG("unit %d status 0x%x", unit, error);
+ if (bbuf != NULL)
+ bcopy(bbuf, p, x * BIOSCD_SECSIZE);
+ p += (x * BIOSCD_SECSIZE);
+ dblk += x;
+ resid -= x;
+ }
/* hexdump(dest, (blks * BIOSCD_SECSIZE)); */
return(0);
==== //depot/projects/smpng/sys/boot/pc98/libpc98/biosdisk.c#16 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.40 2009/03/19 12:33:37 nyan Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.41 2009/03/20 05:33:58 nyan Exp $");
/*
* BIOS disk device handling.
@@ -269,17 +269,8 @@
/* Check for a "dedicated" disk */
for (j = 0; j < od->od_nslices; j++) {
- switch(dptr[j].dp_mid) {
- case DOSMID_386BSD:
- sprintf(line, " disk%ds%d", i, j + 1);
- bd_printbsdslice(od,
- dptr[j].dp_scyl * od->od_hds * od->od_sec +
- dptr[j].dp_shd * od->od_sec + dptr[j].dp_ssect,
- line, verbose);
- break;
- default:
- break;
- }
+ sprintf(line, " disk%ds%d", i, j + 1);
+ bd_printslice(od, &dptr[j], line, verbose);
}
}
bd_closedisk(od);
@@ -311,6 +302,52 @@
}
/*
+ * Print information about slices on a disk. For the size calculations we
+ * assume a 512 byte sector.
+ */
+static void
+bd_printslice(struct open_disk *od, struct pc98_partition *dp, char *prefix,
+ int verbose)
+{
+ int cylsecs, start, size;
+ char stats[80];
+ char line[80];
+
+ cylsecs = od->od_hds * od->od_sec;
+ start = dp->dp_scyl * cylsecs + dp->dp_shd * od->od_sec + dp->dp_ssect;
+ size = (dp->dp_ecyl - dp->dp_scyl + 1) * cylsecs;
+
+ if (verbose)
+ sprintf(stats, " %s (%d - %d)", display_size(size),
+ start, start + size);
+ else
+ stats[0] = '\0';
+
+ switch(dp->dp_mid & PC98_MID_MASK) {
+ case PC98_MID_386BSD:
+ bd_printbsdslice(od, start, prefix, verbose);
+ return;
+ case 0x00: /* unused partition */
+ return;
+ case 0x01:
+ sprintf(line, "%s: FAT-12%s\n", prefix, stats);
+ break;
+ case 0x11:
+ case 0x20:
+ case 0x21:
+ case 0x22:
+ case 0x23:
+ case 0x24:
+ sprintf(line, "%s: FAT-16%s\n", prefix, stats);
+ break;
+ default:
+ sprintf(line, "%s: Unknown fs: 0x%x %s\n", prefix, dp->dp_mid,
+ stats);
+ }
+ pager_output(line);
+}
+
+/*
* Print out each valid partition in the disklabel of a FreeBSD slice.
* For size calculations, we assume a 512 byte sector size.
*/
@@ -349,7 +386,7 @@
/* Only print out statistics in verbose mode */
if (verbose)
- sprintf(line, " %s%c: %s %s (%d - %d)\n", prefix, 'a' + i,
+ sprintf(line, " %s%c: %s %s (%d - %d)\n", prefix, 'a' + i,
(lp->d_partitions[i].p_fstype == FS_SWAP) ? "swap " :
(lp->d_partitions[i].p_fstype == FS_VINUM) ? "vinum" :
"FFS ",
==== //depot/projects/smpng/sys/boot/pc98/libpc98/time.c#4 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/time.c,v 1.6 2005/05/08 14:17:28 nyan Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/time.c,v 1.7 2009/03/20 05:21:29 nyan Exp $");
#include <stand.h>
#include <btxv86.h>
@@ -33,23 +33,21 @@
#include "bootstrap.h"
#include "libi386.h"
+static int bios_seconds(void);
+
/*
- * Return the time in seconds since the beginning of the day.
- *
- * If we pass midnight, don't wrap back to 0.
+ * Return the BIOS time-of-day value.
*
* XXX uses undocumented BCD support from libstand.
*/
-
-time_t
-time(time_t *t)
+static int
+bios_seconds(void)
{
- static time_t lasttime, now;
int hr, minute, sec;
unsigned char bios_time[6];
-
+
v86.ctl = 0;
- v86.addr = 0x1c; /* int 0x1c, function 0 */
+ v86.addr = 0x1c; /* int 0x1c, function 0 */
v86.eax = 0x0000;
v86.es = VTOPSEG(bios_time);
v86.ebx = VTOPOFF(bios_time);
@@ -59,7 +57,20 @@
minute = bcd2bin(bios_time[4]);
sec = bcd2bin(bios_time[5]);
- now = hr * 3600 + minute * 60 + sec;
+ return (hr * 3600 + minute * 60 + sec);
+}
+
+/*
+ * Return the time in seconds since the beginning of the day.
+ */
+time_t
+time(time_t *t)
+{
+ static time_t lasttime;
+ time_t now;
+
+ now = bios_seconds();
+
if (now < lasttime)
now += 24 * 3600;
lasttime = now;
==== //depot/projects/smpng/sys/conf/NOTES#164 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1531 2009/03/15 14:21:05 rwatson Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1532 2009/03/19 20:33:26 thompsa Exp $
#
# NOTES -- Lines that can be cut/pasted into kernel and hints configs.
#
@@ -2413,8 +2413,6 @@
device ums
# Diamond Rio 500 MP3 player
device urio
-# USB scanners
-device uscanner
#
# USB serial support
device ucom
==== //depot/projects/smpng/sys/conf/files#233 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.1382 2009/03/15 14:21:05 rwatson Exp $
+# $FreeBSD: src/sys/conf/files,v 1.1383 2009/03/19 20:33:26 thompsa Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -1656,10 +1656,6 @@
dev/usb/template/usb_template_msc.c optional usb_template
dev/usb/template/usb_template_mtp.c optional usb_template
#
-# USB image drivers
-#
-dev/usb/image/uscanner.c optional uscanner
-#
# USB END
#
dev/utopia/idtphy.c optional utopia
==== //depot/projects/smpng/sys/dev/age/if_age.c#5 (text+ko) ====
@@ -28,7 +28,7 @@
/* Driver for Attansic Technology Corp. L1 Gigabit Ethernet. */
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/age/if_age.c,v 1.6 2008/11/07 07:02:28 yongari Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/age/if_age.c,v 1.7 2009/03/23 00:27:46 yongari Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -1369,7 +1369,7 @@
AGE_LOCK_ASSERT(sc);
- if (pci_find_extcap(sc->age_dev, PCIY_PMG, &pmc) == 0) {
+ if (pci_find_extcap(sc->age_dev, PCIY_PMG, &pmc) != 0) {
CSR_WRITE_4(sc, AGE_WOL_CFG, 0);
/*
* No PME capability, PHY power down.
==== //depot/projects/smpng/sys/dev/agp/agp.c#7 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/agp/agp.c,v 1.63 2009/03/09 13:27:33 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/agp/agp.c,v 1.64 2009/03/20 18:30:20 rnoland Exp $");
#include "opt_agp.h"
#include "opt_bus.h"
@@ -532,7 +532,7 @@
int error;
/* Do some sanity checks first. */
- if (offset < 0 || (offset & (AGP_PAGE_SIZE - 1)) != 0 ||
+ if ((offset & (AGP_PAGE_SIZE - 1)) != 0 ||
offset + mem->am_size > AGP_GET_APERTURE(dev)) {
device_printf(dev, "binding memory at bad offset %#x\n",
(int)offset);
==== //depot/projects/smpng/sys/dev/agp/agp_amd64.c#4 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/agp/agp_amd64.c,v 1.18 2009/03/09 13:27:33 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/agp/agp_amd64.c,v 1.19 2009/03/20 18:30:20 rnoland Exp $");
#include "opt_bus.h"
@@ -337,7 +337,7 @@
{
struct agp_amd64_softc *sc = device_get_softc(dev);
- if (offset < 0 || offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
+ if (offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
return (EINVAL);
sc->gatt->ag_virtual[offset >> AGP_PAGE_SHIFT] =
@@ -351,7 +351,7 @@
{
struct agp_amd64_softc *sc = device_get_softc(dev);
- if (offset < 0 || offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
+ if (offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
return (EINVAL);
sc->gatt->ag_virtual[offset >> AGP_PAGE_SHIFT] = 0;
==== //depot/projects/smpng/sys/dev/agp/agp_i810.c#8 (text+ko) ====
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/agp/agp_i810.c,v 1.50 2009/03/09 13:27:33 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/agp/agp_i810.c,v 1.51 2009/03/20 18:30:20 rnoland Exp $");
#include "opt_bus.h"
@@ -840,7 +840,7 @@
{
struct agp_i810_softc *sc = device_get_softc(dev);
- if (offset < 0 || offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT)) {
+ if (offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT)) {
device_printf(dev, "failed: offset is 0x%08jx, shift is %d, entries is %d\n", (intmax_t)offset, AGP_PAGE_SHIFT, sc->gatt->ag_entries);
return EINVAL;
}
@@ -862,7 +862,7 @@
{
struct agp_i810_softc *sc = device_get_softc(dev);
- if (offset < 0 || offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
+ if (offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
return EINVAL;
if ( sc->chiptype != CHIP_I810 ) {
@@ -1016,7 +1016,7 @@
vm_offset_t i;
/* Do some sanity checks first. */
- if (offset < 0 || (offset & (AGP_PAGE_SIZE - 1)) != 0 ||
+ if ((offset & (AGP_PAGE_SIZE - 1)) != 0 ||
offset + mem->am_size > AGP_GET_APERTURE(dev)) {
device_printf(dev, "binding memory at bad offset %#x\n",
(int)offset);
==== //depot/projects/smpng/sys/dev/agp/agp_intel.c#3 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/agp/agp_intel.c,v 1.37 2009/03/09 13:27:33 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/agp/agp_intel.c,v 1.38 2009/03/20 18:30:20 rnoland Exp $");
#include "opt_bus.h"
@@ -371,7 +371,7 @@
sc = device_get_softc(dev);
- if (offset < 0 || offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
+ if (offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
return (EINVAL);
sc->gatt->ag_virtual[offset >> AGP_PAGE_SHIFT] = physical | 0x17;
@@ -385,7 +385,7 @@
sc = device_get_softc(dev);
- if (offset < 0 || offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
+ if (offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
return (EINVAL);
sc->gatt->ag_virtual[offset >> AGP_PAGE_SHIFT] = 0;
==== //depot/projects/smpng/sys/dev/agp/agp_via.c#4 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/agp/agp_via.c,v 1.28 2009/03/09 13:27:33 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/agp/agp_via.c,v 1.29 2009/03/20 18:30:20 rnoland Exp $");
#include "opt_bus.h"
@@ -362,7 +362,7 @@
{
struct agp_via_softc *sc = device_get_softc(dev);
- if (offset < 0 || offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
+ if (offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
return EINVAL;
sc->gatt->ag_virtual[offset >> AGP_PAGE_SHIFT] = physical;
@@ -374,7 +374,7 @@
{
struct agp_via_softc *sc = device_get_softc(dev);
- if (offset < 0 || offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
+ if (offset >= (sc->gatt->ag_entries << AGP_PAGE_SHIFT))
return EINVAL;
sc->gatt->ag_virtual[offset >> AGP_PAGE_SHIFT] = 0;
==== //depot/projects/smpng/sys/dev/ath/ath_hal/ah.h#5 (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.h,v 1.6 2009/02/24 01:07:06 sam Exp $
+ * $FreeBSD: src/sys/dev/ath/ath_hal/ah.h,v 1.7 2009/03/19 19:29:10 sam Exp $
*/
#ifndef _ATH_AH_H_
@@ -598,8 +598,6 @@
*/
struct ath_hal {
uint32_t ah_magic; /* consistency check magic number */
- uint32_t ah_abi; /* HAL ABI version */
-#define HAL_ABI_VERSION 0x08112800 /* YYMMDDnn */
uint16_t ah_devid; /* PCI device ID */
uint16_t ah_subvendorid; /* PCI subvendor ID */
HAL_SOFTC ah_sc; /* back pointer to driver/os state */
==== //depot/projects/smpng/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c#4 (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/ar5210/ar5210_attach.c,v 1.4 2009/02/24 01:07:06 sam Exp $
+ * $FreeBSD: src/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c,v 1.5 2009/03/19 19:29:10 sam Exp $
*/
#include "opt_ah.h"
@@ -38,7 +38,6 @@
static const struct ath_hal_private ar5210hal = {{
.ah_magic = AR5210_MAGIC,
- .ah_abi = HAL_ABI_VERSION,
.ah_getRateTable = ar5210GetRateTable,
.ah_detach = ar5210Detach,
==== //depot/projects/smpng/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c#4 (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/ar5211/ar5211_attach.c,v 1.5 2009/02/24 01:07:06 sam Exp $
+ * $FreeBSD: src/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c,v 1.6 2009/03/19 19:29:10 sam Exp $
*/
#include "opt_ah.h"
@@ -38,7 +38,6 @@
static const struct ath_hal_private ar5211hal = {{
.ah_magic = AR5211_MAGIC,
- .ah_abi = HAL_ABI_VERSION,
.ah_getRateTable = ar5211GetRateTable,
.ah_detach = ar5211Detach,
==== //depot/projects/smpng/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c#4 (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_attach.c,v 1.4 2009/02/24 01:07:06 sam Exp $
+ * $FreeBSD: src/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c,v 1.5 2009/03/19 19:29:10 sam Exp $
*/
#include "opt_ah.h"
@@ -34,7 +34,6 @@
static const struct ath_hal_private ar5212hal = {{
.ah_magic = AR5212_MAGIC,
- .ah_abi = HAL_ABI_VERSION,
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list