1 /* $OpenBSD: pmap_table.h,v 1.1 2004/07/25 11:06:42 miod Exp $ */ 2 /* 3 * Mach Operating System 4 * Copyright (c) 1992 Carnegie Mellon University 5 * All Rights Reserved. 6 * 7 * Permission to use, copy, modify and distribute this software and its 8 * documentation is hereby granted, provided that both the copyright 9 * notice and this permission notice appear in all copies of the 10 * software, derivative works or modified versions, and any portions 11 * thereof, and that both notices appear in supporting documentation. 12 * 13 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" 14 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR 15 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. 16 * 17 * Carnegie Mellon requests users of this software to return to 18 * 19 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 20 * School of Computer Science 21 * Carnegie Mellon University 22 * Pittsburgh PA 15213-3890 23 * 24 * any improvements or extensions that they make and grant Carnegie Mellon 25 * the rights to redistribute these changes. 26 */ 27 28 #ifndef __M88K_PMAP_TABLE_H__ 29 #define __M88K_PMAP_TABLE_H__ 30 31 /* 32 * Built-in mappings list. 33 * An entry is considered invalid if pm_size = 0, and 34 * end of list is indicated by pm_size 0xffffffff 35 */ 36 typedef struct { 37 vaddr_t phys_start; /* in bytes */ 38 vaddr_t virt_start; /* in bytes */ 39 vsize_t size; /* in bytes */ 40 unsigned int prot; /* vm_prot_read, vm_prot_write */ 41 unsigned int cacheability; /* none, writeback, normal */ 42 } pmap_table_entry; 43 44 typedef const pmap_table_entry *pmap_table_t; 45 46 pmap_table_t pmap_table_build(void); 47 48 #endif /* __M88K_PMAP_TABLE_H__ */ 49