diff options
Diffstat (limited to 'sys/arch/mvme88k/include')
-rw-r--r-- | sys/arch/mvme88k/include/pmap.h | 82 | ||||
-rw-r--r-- | sys/arch/mvme88k/include/pmap_table.h | 52 |
2 files changed, 11 insertions, 123 deletions
diff --git a/sys/arch/mvme88k/include/pmap.h b/sys/arch/mvme88k/include/pmap.h index 6cd196398ce..12165a55839 100644 --- a/sys/arch/mvme88k/include/pmap.h +++ b/sys/arch/mvme88k/include/pmap.h @@ -1,79 +1,13 @@ -/* $OpenBSD: pmap.h,v 1.35 2004/05/20 09:20:42 kettenis Exp $ */ -/* - * Mach Operating System - * Copyright (c) 1991 Carnegie Mellon University - * Copyright (c) 1991 OMRON Corporation - * All Rights Reserved. - * - * Permission to use, copy, modify and distribute this software and its - * documentation is hereby granted, provided that both the copyright - * notice and this permission notice appear in all copies of the - * software, derivative works or modified versions, and any portions - * thereof, and that both notices appear in supporting documentation. - * - */ -#ifndef _MACHINE_PMAP_H_ -#define _MACHINE_PMAP_H_ +/* $OpenBSD: pmap.h,v 1.36 2004/07/25 11:06:42 miod Exp $ */ +/* public domain */ -#include <machine/mmu.h> -#include <machine/pcb.h> +#ifndef _MVME88K_PMAP_H_ +#define _MVME88K_PMAP_H_ -/* - * PMAP structure - */ - -/* #define PMAP_USE_BATC */ -struct pmap { - sdt_entry_t *pm_stab; /* virtual pointer to sdt */ - u_int32_t pm_apr; - int pm_count; /* reference count */ - /* cpus using of this pmap; NCPU must be <= 32 */ - u_int32_t pm_cpus; - struct simplelock pm_lock; - struct pmap_statistics pm_stats; /* pmap statistics */ -#ifdef PMAP_USE_BATC - u_int32_t pm_ibatc[BATC_MAX]; /* instruction BATCs */ - u_int32_t pm_dbatc[BATC_MAX]; /* data BATCs */ -#endif -}; - -#define PMAP_NULL ((pmap_t) 0) - -/* The PV (Physical to virtual) List. - * - * For each vm_page_t, pmap keeps a list of all currently valid virtual - * mappings of that page. An entry is a pv_entry_t; the list is the - * pv_head_table. This is used by things like pmap_remove, when we must - * find and remove all mappings for a particular physical page. - */ -/* XXX - struct pv_entry moved to vmparam.h because of include ordering issues */ - -typedef struct pmap *pmap_t; -typedef struct pv_entry *pv_entry_t; +#include <m88k/pmap.h> #ifdef _KERNEL +vaddr_t pmap_bootstrap_md(vaddr_t); +#endif -extern pmap_t kernel_pmap; -extern struct pmap kernel_pmap_store; -extern caddr_t vmmap; - -#define pmap_kernel() (&kernel_pmap_store) -#define pmap_resident_count(pmap) ((pmap)->pm_stats.resident_count) -#define pmap_wired_count(pmap) ((pmap)->pm_stats.wired_count) -#define pmap_phys_address(frame) ((paddr_t)(ptoa(frame))) - -#define pmap_copy(dp,sp,d,l,s) do { /* nothing */ } while (0) -#define pmap_update(pmap) do { /* nothing (yet) */ } while (0) - -#define pmap_clear_modify(pg) pmap_unsetbit(pg, PG_M) -#define pmap_clear_reference(pg) pmap_unsetbit(pg, PG_U) - -#define pmap_proc_iflush(p,va,len) do { /* nothing */ } while (0) - -void pmap_bootstrap(vaddr_t); -void pmap_cache_ctrl(pmap_t, vaddr_t, vaddr_t, u_int); -boolean_t pmap_unsetbit(struct vm_page *, int); - -#endif /* _KERNEL */ - -#endif /* _MACHINE_PMAP_H_ */ +#endif _MVME88K_PMAP_H_ diff --git a/sys/arch/mvme88k/include/pmap_table.h b/sys/arch/mvme88k/include/pmap_table.h index faab4e416ee..327226180d3 100644 --- a/sys/arch/mvme88k/include/pmap_table.h +++ b/sys/arch/mvme88k/include/pmap_table.h @@ -1,49 +1,3 @@ -/* $OpenBSD: pmap_table.h,v 1.10 2003/10/05 20:27:46 miod Exp $ */ -/* - * Mach Operating System - * Copyright (c) 1992 Carnegie Mellon University - * All Rights Reserved. - * - * Permission to use, copy, modify and distribute this software and its - * documentation is hereby granted, provided that both the copyright - * notice and this permission notice appear in all copies of the - * software, derivative works or modified versions, and any portions - * thereof, and that both notices appear in supporting documentation. - * - * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" - * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR - * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. - * - * Carnegie Mellon requests users of this software to return to - * - * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU - * School of Computer Science - * Carnegie Mellon University - * Pittsburgh PA 15213-3890 - * - * any improvements or extensions that they make and grant Carnegie Mellon - * the rights to redistribute these changes. - */ - -#ifndef __MACHINE_PMAP_TABLE_H__ -#define __MACHINE_PMAP_TABLE_H__ - -/* - * Built-in mappings list. - * An entry is considered invalid if pm_size = 0, and - * end of list is indicated by pm_size 0xffffffff - */ -typedef struct { - vaddr_t phys_start; /* in bytes */ - vaddr_t virt_start; /* in bytes */ - vsize_t size; /* in bytes */ - unsigned int prot; /* vm_prot_read, vm_prot_write */ - unsigned int cacheability; /* none, writeback, normal */ -} pmap_table_entry; - -typedef const pmap_table_entry *pmap_table_t; - -pmap_table_t pmap_table_build(void); - -#endif /* __MACHINE_PMAP_TABLE_H__ */ - +/* $OpenBSD: pmap_table.h,v 1.11 2004/07/25 11:06:42 miod Exp $ */ +/* public domain */ +#include <m88k/pmap_table.h> |