diff options
author | Steve Murphree <smurph@cvs.openbsd.org> | 2001-01-12 07:29:28 +0000 |
---|---|---|
committer | Steve Murphree <smurph@cvs.openbsd.org> | 2001-01-12 07:29:28 +0000 |
commit | 0764426082e0e2480c3365cf453b99287858662c (patch) | |
tree | baac8a0d30bf0e8e7e9674104178fc580472e62b /sys/arch/mvme88k/include/vmparam.h | |
parent | 36a7fbd69a94ac66a8f93f5d4471c4213500a12c (diff) |
Update vm interface to MACHIN_NEW_NONCONTIG. Fix compile warning in pcctwo.c
Diffstat (limited to 'sys/arch/mvme88k/include/vmparam.h')
-rw-r--r-- | sys/arch/mvme88k/include/vmparam.h | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/sys/arch/mvme88k/include/vmparam.h b/sys/arch/mvme88k/include/vmparam.h index 8823aaa8a62..1e10d3be943 100644 --- a/sys/arch/mvme88k/include/vmparam.h +++ b/sys/arch/mvme88k/include/vmparam.h @@ -1,4 +1,4 @@ -/* $OpenBSD: vmparam.h,v 1.6 1999/09/27 20:46:19 smurph Exp $ */ +/* $OpenBSD: vmparam.h,v 1.7 2001/01/12 07:29:27 smurph Exp $ */ /* * Mach Operating System * Copyright (c) 1992 Carnegie Mellon University @@ -68,6 +68,14 @@ #endif /* + * PTEs for mapping user space into the kernel for phyio operations. + * One page is enough to handle 4Mb of simultaneous raw IO operations. + */ +#ifndef USRIOSIZE +#define USRIOSIZE (1 * NPTEPG) /* 4mb */ +#endif + +/* * External IO space map size. */ #ifndef EIOMAPSIZE @@ -168,6 +176,7 @@ /* virtual sizes (bytes) for various kernel submaps */ #define VM_MBUF_SIZE (NMBCLUSTERS*MCLBYTES) #define VM_KMEM_SIZE (NKMEMCLUSTERS*CLBYTES) +#define VM_PHYS_SIZE (USRIOSIZE*CLBYTES) /* * Conversion between MACHINE pages and VM pages @@ -177,6 +186,32 @@ #define round_m88k_to_vm(p) (atop(round_page(m88k_ptob(p)))) #define vm_to_m88k(p) (m88k_btop(ptoa(p))) +/* Use new VM page bootstrap interface. */ +#define MACHINE_NEW_NONCONTIG + +#if defined(MACHINE_NEW_NONCONTIG) +/* + * Constants which control the way the VM system deals with memory segments. + * The hp300 only has one physical memory segment. + */ +#define VM_PHYSSEG_MAX 1 +#define VM_PHYSSEG_STRAT VM_PSTRAT_BSEARCH +#define VM_PHYSSEG_NOADD + +#define VM_NFREELIST 1 +#define VM_FREELIST_DEFAULT 0 + +/* + * pmap-specific data stored in the vm_physmem[] array. + */ +struct pmap_physseg { + struct pv_entry *pvent; /* pv table for this seg */ + char *attrs; /* page modify list for this seg */ + struct simplelock *plock; /* page lock for this seg */ +}; +#endif /* MACHINE_NEW_NONCONTIG */ + + #if 1 /*Do we really need all this stuff*/ #if 1 /*Do we really need all this stuff*/ #if 1 /*Do we really need all this stuff*/ |