diff options
Diffstat (limited to 'sys/arch/mvmeppc/include/pmap.h')
-rw-r--r-- | sys/arch/mvmeppc/include/pmap.h | 97 |
1 files changed, 2 insertions, 95 deletions
diff --git a/sys/arch/mvmeppc/include/pmap.h b/sys/arch/mvmeppc/include/pmap.h index a0a0b898f89..61c7982c52a 100644 --- a/sys/arch/mvmeppc/include/pmap.h +++ b/sys/arch/mvmeppc/include/pmap.h @@ -1,96 +1,3 @@ -/* $OpenBSD: pmap.h,v 1.2 2001/07/18 10:47:05 art Exp $ */ -/* $NetBSD: pmap.h,v 1.1 1996/09/30 16:34:29 ws Exp $ */ +/* $OpenBSD: pmap.h,v 1.3 2001/09/02 19:40:24 miod Exp $ */ -/*- - * Copyright (C) 1995, 1996 Wolfgang Solfrank. - * Copyright (C) 1995, 1996 TooLs GmbH. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by TooLs GmbH. - * 4. The name of TooLs GmbH may not be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY TOOLS GMBH ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; - * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR - * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF - * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef _MACHINE_PMAP_H_ -#define _MACHINE_PMAP_H_ - -#include <machine/pte.h> - -/* - * Segment registers - */ -#ifndef _LOCORE -typedef u_int sr_t; -#endif /* _LOCORE */ -#define SR_TYPE 0x80000000 -#define SR_SUKEY 0x40000000 -#define SR_PRKEY 0x20000000 -#define SR_VSID 0x00ffffff - -#ifndef _LOCORE -/* V->P mapping data */ -typedef int pmapv_t; -#define VP_SR_SIZE 32 -#define VP_SR_MASK VP_SR_SIZE-1 -#define VP_SR_POS 27 -#define VP_IDX1_SIZE 1024 -#define VP_IDX1_MASK VP_IDX1_SIZE-1 -#define VP_IDX1_POS 17 -#define VP_IDX2_SIZE 32 -#define VP_IDX2_MASK VP_IDX2_SIZE-1 -#define VP_IDX2_POS 12 - -/* - * Pmap stuff - */ -struct pmap { - sr_t pm_sr[16]; /* segments used in this pmap */ - int pm_refs; /* ref count */ - pmapv_t *vps[VP_SR_SIZE]; /* virtual to physical table */ - struct pmap_statistics pm_stats; /* pmap statistics */ -}; - -typedef struct pmap *pmap_t; - -#ifdef _KERNEL -extern struct pmap kernel_pmap_; -#define pmap_kernel() (&kernel_pmap_) - -#define pmap_clear_modify(pa) (ptemodify(VM_PAGE_TO_PHYS(pa), PTE_CHG, 0)) -#define pmap_clear_reference(pa) (ptemodify(VM_PAGE_TO_PHYS(pa), PTE_REF, 0)) -#define pmap_is_modified(pg) (ptebits(VM_PAGE_TO_PHYS(pg), PTE_CHG)) -#define pmap_is_referenced(pg) (ptebits(VM_PAGE_TO_PHYS(pg), PTE_REF)) -#define pmap_change_wiring(pm, va, wired) - -#define pmap_unwire(pm, va) - -#define pmap_phys_address(x) (x) - -#define pmap_resident_count(pmap) ((pmap)->pm_stats.resident_count) - -void pmap_bootstrap __P((u_int kernelstart, u_int kernelend)); - -#endif /* _KERNEL */ -#endif /* _LOCORE */ -#endif /* _MACHINE_PMAP_H_ */ +#include <powerpc/pmap.h> |