more vm_offset_t/vm_size_t -> {p,v}{addr,size}_t changes

move pmap_* declarations to pmap.h.  fix conflicts this
exposed (e.g different definitions for pmap_bootstrap).
This commit is contained in:
matt 2001-03-04 19:05:55 +00:00
parent 4b8c25f151
commit d6fc837c17
12 changed files with 87 additions and 109 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: pmap.c,v 1.2 2001/03/04 07:30:19 matt Exp $ */
/* $NetBSD: pmap.c,v 1.3 2001/03/04 19:05:55 matt Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@ -656,7 +656,7 @@ pmap_map(va, spa, epa, prot)
/*
* void pmap_bootstrap(pd_entry_t *kernel_l1pt)
* void pmap_bootstrap(pd_entry_t *kernel_l1pt, pv_addr_t kernel_ptpt)
*
* bootstrap the pmap system. This is called from initarm and allows
* the pmap system to initailise any structures it requires.
@ -2762,7 +2762,7 @@ void
pmap_procwr(p, va, len)
struct proc *p;
vaddr_t va;
u_long len;
int len;
{
/* We only need to do anything if it is the current process. */
if (p == curproc)

View File

@ -1,4 +1,4 @@
/* $NetBSD: pmap.h,v 1.3 2001/03/04 07:30:20 matt Exp $ */
/* $NetBSD: pmap.h,v 1.4 2001/03/04 19:05:56 matt Exp $ */
/*
* Copyright (c) 1994,1995 Mark Brinicombe.
@ -141,6 +141,7 @@ typedef struct {
extern pv_entry_t pv_table; /* Phys to virt mappings, per page. */
extern pmap_t kernel_pmap; /* pmap pointer used for the kernel */
extern struct pmap kernel_pmap_store; /* kernel_pmap points to this */
extern int pmap_debug_level; /* Only exists if PMAP_DEBUG */
/*
* Macros that we need to export
@ -158,9 +159,19 @@ extern struct pmap kernel_pmap_store; /* kernel_pmap points to this */
extern boolean_t pmap_testbit __P((paddr_t, int));
extern void pmap_changebit __P((paddr_t, int, int));
extern vaddr_t pmap_map __P((vaddr_t, vaddr_t, vaddr_t, int));
void pmap_procwr __P((struct proc *, vaddr_t, u_long));
extern void pmap_procwr __P((struct proc *, vaddr_t, int));
#define PMAP_NEED_PROCWR
/*
* Functions we use internally
*/
extern void pmap_bootstrap __P((pd_entry_t *, pv_addr_t));
extern void pmap_debug __P((int));
extern int pmap_handled_emulation __P((pmap_t, vaddr_t));
extern int pmap_modified_emulation __P((pmap_t, vaddr_t));
extern void pmap_postinit __P((void));
extern pt_entry_t *pmap_pte __P((pmap_t, vaddr_t));
#endif /* _KERNEL */
/*

View File

@ -1,4 +1,4 @@
/* $NetBSD: fault.c,v 1.50 2001/02/28 18:15:43 bjh21 Exp $ */
/* $NetBSD: fault.c,v 1.51 2001/03/04 19:05:56 matt Exp $ */
/*
* Copyright (c) 1994-1997 Mark Brinicombe.
@ -66,15 +66,7 @@
#include <arch/arm/arm/disassem.h>
#ifdef PMAP_DEBUG
extern int pmap_debug_level;
#endif /* PMAP_DEBUG */
int pmap_modified_emulation __P((pmap_t, vm_offset_t));
int pmap_handled_emulation __P((pmap_t, vm_offset_t));
pt_entry_t *pmap_pte __P((pmap_t pmap, vm_offset_t va));
int cowfault __P((vaddr_t));
int fetchuserword __P((u_int address, u_int *location));
extern char fusubailout[];
@ -325,14 +317,14 @@ copyfault:
* the page and possibly the page table page.
*/
{
register vm_offset_t va;
register vaddr_t va;
register struct vmspace *vm = p->p_vmspace;
register vm_map_t map;
int rv;
vm_prot_t ftype;
extern vm_map_t kernel_map;
va = trunc_page((vm_offset_t)fault_address);
va = trunc_page((vaddr_t)fault_address);
#ifdef PMAP_DEBUG
if (pmap_debug_level >= 0)
@ -567,7 +559,7 @@ prefetch_abort_handler(frame)
/* Is the page already mapped ? */
/* This is debugging for rev K SA110 silicon */
pte = pmap_pte(p->p_vmspace->vm_map.pmap, (vm_offset_t)fault_pc);
pte = pmap_pte(p->p_vmspace->vm_map.pmap, (vaddr_t)fault_pc);
if (pte && *pte != 0) {
if (kernel_debug & 1) {
printf("prefetch_abort: page is already mapped - pte=%p *pte=%08x\n",
@ -601,7 +593,7 @@ prefetch_abort_handler(frame)
disassemble(fault_pc);
printf("return addr=%08x", frame->tf_pc);
pte = pmap_pte(p->p_vmspace->vm_map.pmap,
(vm_offset_t)fault_pc);
(vaddr_t)fault_pc);
if (pte)
printf(" pte=%p *pte=%08x\n", pte, *pte);
else

View File

@ -1,4 +1,4 @@
/* $NetBSD: ipkdb_glue.c,v 1.3 2000/06/29 08:52:58 mrg Exp $ */
/* $NetBSD: ipkdb_glue.c,v 1.4 2001/03/04 19:05:56 matt Exp $ */
/*
* Copyright (C) 1994 Wolfgang Solfrank.
@ -170,10 +170,10 @@ ipkdbfbyte(src)
unsigned char *src;
{
pt_entry_t *ptep;
vm_offset_t va;
vaddr_t va;
int ch;
va = (unsigned long)src & (~PGOFSET);
va = (vaddr_t)src & (~PGOFSET);
ptep = vtopte(va);
if ((*ptep & L2_MASK) == L2_INVAL)
@ -191,9 +191,9 @@ ipkdbsbyte(dst, ch)
int ch;
{
pt_entry_t *ptep, pte, pteo;
vm_offset_t va;
vaddr_t va;
va = (unsigned long)dst & (~PGOFSET);
va = (vaddr_t)dst & (~PGOFSET);
ptep = vtopte(va);
if ((*ptep & L2_MASK) == L2_INVAL)

View File

@ -1,4 +1,4 @@
/* $NetBSD: machdep.c,v 1.87 2001/03/04 01:50:53 matt Exp $ */
/* $NetBSD: machdep.c,v 1.88 2001/03/04 19:05:56 matt Exp $ */
/*
* Copyright (c) 1994-1998 Mark Brinicombe.
@ -106,11 +106,7 @@ struct cpu_info cpu_info_store;
extern pt_entry_t msgbufpte;
caddr_t msgbufaddr;
extern vm_offset_t msgbufphys;
#ifdef PMAP_DEBUG
extern int pmap_debug_level;
#endif
extern paddr_t msgbufphys;
int kernel_debug = 0;
@ -122,26 +118,20 @@ char *booted_kernel;
void consinit __P((void));
void map_section __P((vm_offset_t pt, vm_offset_t va, vm_offset_t pa,
void map_section __P((vaddr_t pt, vaddr_t va, paddr_t pa,
int cacheable));
void map_pagetable __P((vm_offset_t pt, vm_offset_t va, vm_offset_t pa));
void map_entry __P((vm_offset_t pt, vm_offset_t va, vm_offset_t pa));
void map_entry_nc __P((vm_offset_t pt, vm_offset_t va, vm_offset_t pa));
void map_entry_ro __P((vm_offset_t pt, vm_offset_t va, vm_offset_t pa));
void map_pagetable __P((vaddr_t pt, vaddr_t va, paddr_t pa));
void map_entry __P((vaddr_t pt, vaddr_t va, paddr_t pa));
void map_entry_nc __P((vaddr_t pt, vaddr_t va, paddr_t pa));
void map_entry_ro __P((vaddr_t pt, vaddr_t va, paddr_t pa));
void pmap_bootstrap __P((vm_offset_t kernel_l1pt));
u_long strtoul __P((const char *s, char **ptr, int base));
void data_abort_handler __P((trapframe_t *frame));
void prefetch_abort_handler __P((trapframe_t *frame));
void zero_page_readonly __P((void));
void zero_page_readwrite __P((void));
extern void configure __P((void));
extern pt_entry_t *pmap_pte __P((pmap_t pmap, vm_offset_t va));
extern void pmap_postinit __P((void));
extern void dumpsys __P((void));
#ifdef PMAP_DEBUG
extern void pmap_debug __P((int level));
#endif /* PMAP_DEBUG */
/*
* Debug function just to park the CPU
@ -188,9 +178,9 @@ bootsync(void)
void
map_section(pagetable, va, pa, cacheable)
vm_offset_t pagetable;
vm_offset_t va;
vm_offset_t pa;
vaddr_t pagetable;
vaddr_t va;
paddr_t pa;
int cacheable;
{
#ifdef DIAGNOSTIC
@ -209,9 +199,9 @@ map_section(pagetable, va, pa, cacheable)
void
map_pagetable(pagetable, va, pa)
vm_offset_t pagetable;
vm_offset_t va;
vm_offset_t pa;
vaddr_t pagetable;
vaddr_t va;
paddr_t pa;
{
#ifdef DIAGNOSTIC
if ((pa & 0xc00) != 0)
@ -228,19 +218,19 @@ map_pagetable(pagetable, va, pa)
L1_PTE((pa & PG_FRAME) + 0xc00);
}
vm_size_t
vsize_t
map_chunk(pd, pt, va, pa, size, acc, flg)
vm_offset_t pd;
vm_offset_t pt;
vm_offset_t va;
vm_offset_t pa;
vm_size_t size;
vaddr_t pd;
vaddr_t pt;
vaddr_t va;
paddr_t pa;
vsize_t size;
u_int acc;
u_int flg;
{
pd_entry_t *l1pt = (pd_entry_t *)pd;
pt_entry_t *l2pt = (pt_entry_t *)pt;
vm_size_t remain;
vsize_t remain;
u_int loop;
remain = (size + (NBPG - 1)) & ~(NBPG - 1);
@ -296,9 +286,9 @@ map_chunk(pd, pt, va, pa, size, acc, flg)
void
map_entry(pagetable, va, pa)
vm_offset_t pagetable;
vm_offset_t va;
vm_offset_t pa;
vaddr_t pagetable;
vaddr_t va;
paddr_t pa;
{
((pt_entry_t *)pagetable)[((va >> PGSHIFT) & 0x000003ff)] =
L2_PTE((pa & PG_FRAME), AP_KRW);
@ -307,9 +297,9 @@ map_entry(pagetable, va, pa)
void
map_entry_nc(pagetable, va, pa)
vm_offset_t pagetable;
vm_offset_t va;
vm_offset_t pa;
vaddr_t pagetable;
vaddr_t va;
paddr_t pa;
{
((pt_entry_t *)pagetable)[((va >> PGSHIFT) & 0x000003ff)] =
L2_PTE_NC_NB((pa & PG_FRAME), AP_KRW);
@ -318,9 +308,9 @@ map_entry_nc(pagetable, va, pa)
void
map_entry_ro(pagetable, va, pa)
vm_offset_t pagetable;
vm_offset_t va;
vm_offset_t pa;
vaddr_t pagetable;
vaddr_t va;
paddr_t pa;
{
((pt_entry_t *)pagetable)[((va >> PGSHIFT) & 0x000003ff)] =
L2_PTE((pa & PG_FRAME), AP_KR);
@ -338,11 +328,11 @@ void
cpu_startup()
{
int loop;
vm_offset_t minaddr;
vm_offset_t maxaddr;
paddr_t minaddr;
paddr_t maxaddr;
caddr_t sysbase;
caddr_t size;
vm_size_t bufsize;
vsize_t bufsize;
int base, residual;
char pbuf[9];
@ -371,7 +361,7 @@ cpu_startup()
/* msgbufphys was setup during the secondary boot strap */
for (loop = 0; loop < btoc(MSGBUFSIZE); ++loop)
pmap_enter(pmap_kernel(),
(vm_offset_t)((caddr_t)msgbufaddr + loop * NBPG),
(vaddr_t)msgbufaddr + loop * NBPG,
msgbufphys + loop * NBPG, VM_PROT_READ|VM_PROT_WRITE,
VM_PROT_READ|VM_PROT_WRITE|PMAP_WIRED);
initmsgbuf(msgbufaddr, round_page(MSGBUFSIZE));
@ -403,12 +393,12 @@ cpu_startup()
* in that they usually occupy more virtual memory than physical.
*/
bufsize = MAXBSIZE * nbuf;
if (uvm_map(kernel_map, (vm_offset_t *)&buffers, round_page(bufsize),
if (uvm_map(kernel_map, (vaddr_t *)&buffers, round_page(bufsize),
NULL, UVM_UNKNOWN_OFFSET, 0,
UVM_MAPFLAG(UVM_PROT_NONE, UVM_PROT_NONE, UVM_INH_NONE,
UVM_ADV_NORMAL, 0)) != KERN_SUCCESS)
panic("cpu_startup: cannot allocate UVM space for buffers");
minaddr = (vm_offset_t)buffers;
minaddr = (vaddr_t)buffers;
if ((bufpages / nbuf) >= btoc(MAXBSIZE)) {
/* don't want to alloc more physical mem than needed */
bufpages = btoc(MAXBSIZE) * nbuf;
@ -417,11 +407,11 @@ cpu_startup()
base = bufpages / nbuf;
residual = bufpages % nbuf;
for (loop = 0; loop < nbuf; ++loop) {
vm_size_t curbufsize;
vm_offset_t curbuf;
vsize_t curbufsize;
vaddr_t curbuf;
struct vm_page *pg;
curbuf = (vm_offset_t) buffers + (loop * MAXBSIZE);
curbuf = (vaddr_t) buffers + (loop * MAXBSIZE);
curbufsize = NBPG * ((loop < residual) ? (base+1) : base);
while (curbufsize) {

View File

@ -1,4 +1,4 @@
/* $NetBSD: mem.c,v 1.15 2000/06/29 08:52:58 mrg Exp $ */
/* $NetBSD: mem.c,v 1.16 2001/03/04 19:05:56 matt Exp $ */
/*
* Copyright (c) 1988 University of Utah.
@ -89,7 +89,7 @@ mmrw(dev, uio, flags)
struct uio *uio;
int flags;
{
register vm_offset_t o, v;
register vaddr_t o, v;
register int c;
register struct iovec *iov;
int error = 0;
@ -122,13 +122,13 @@ mmrw(dev, uio, flags)
v = uio->uio_offset;
prot = uio->uio_rw == UIO_READ ? VM_PROT_READ :
VM_PROT_WRITE;
pmap_enter(pmap_kernel(), (vm_offset_t)memhook,
pmap_enter(pmap_kernel(), (vaddr_t)memhook,
trunc_page(v), prot, prot|PMAP_WIRED);
o = uio->uio_offset & PGOFSET;
c = min(uio->uio_resid, (int)(NBPG - o));
error = uiomove((caddr_t)memhook + o, c, uio);
pmap_remove(pmap_kernel(), (vm_offset_t)memhook,
(vm_offset_t)memhook + NBPG);
pmap_remove(pmap_kernel(), (vaddr_t)memhook,
(vaddr_t)memhook + NBPG);
continue;
/* minor device 1 is kernel memory */

View File

@ -1,4 +1,4 @@
/* $NetBSD: stubs.c,v 1.31 2001/02/19 13:29:40 bjh21 Exp $ */
/* $NetBSD: stubs.c,v 1.32 2001/03/04 19:05:56 matt Exp $ */
/*
* Copyright (c) 1994-1998 Mark Brinicombe.
@ -164,7 +164,7 @@ dumpsys()
int addr;
int block;
int len;
vm_offset_t dumpspace;
vaddr_t dumpspace;
/* Save registers. */
savectx(&dumppcb);

View File

@ -1,4 +1,4 @@
/* $NetBSD: vm_machdep.c,v 1.55 2001/02/28 18:15:44 bjh21 Exp $ */
/* $NetBSD: vm_machdep.c,v 1.56 2001/03/04 19:05:57 matt Exp $ */
/*
* Copyright (c) 1994-1998 Mark Brinicombe.
@ -69,18 +69,12 @@
extern pv_addr_t systempage;
#ifdef PMAP_DEBUG
extern int pmap_debug_level;
#endif
int process_read_regs __P((struct proc *p, struct reg *regs));
int process_read_fpregs __P((struct proc *p, struct fpreg *regs));
void switch_exit __P((struct proc *p, struct proc *proc0));
extern void proc_trampoline __P((void));
pt_entry_t *pmap_pte __P((pmap_t, vm_offset_t));
/*
* Special compilation symbols:
*
@ -310,11 +304,10 @@ extern vm_map_t phys_map;
void
vmapbuf(bp, len)
struct buf *bp;
vm_size_t len;
vsize_t len;
{
vm_offset_t faddr, taddr, off;
vaddr_t faddr, taddr, off;
pt_entry_t *fpte, *tpte;
pt_entry_t *pmap_pte __P((pmap_t, vm_offset_t));
int pages;
#ifdef PMAP_DEBUG
@ -329,7 +322,7 @@ vmapbuf(bp, len)
taddr = uvm_km_valloc_wait(phys_map, len);
faddr = trunc_page((vaddr_t)bp->b_data);
off = (vm_offset_t)bp->b_data - faddr;
off = (vaddr_t)bp->b_data - faddr;
len = round_page(off + len);
bp->b_saveaddr = bp->b_data;
bp->b_data = (caddr_t)(taddr + off);
@ -366,9 +359,9 @@ vmapbuf(bp, len)
void
vunmapbuf(bp, len)
struct buf *bp;
vm_size_t len;
vsize_t len;
{
vm_offset_t addr, off;
vaddr_t addr, off;
pt_entry_t *pte;
int pages;
@ -386,7 +379,7 @@ vunmapbuf(bp, len)
* pages we had mapped.
*/
addr = trunc_page((vaddr_t)bp->b_data);
off = (vm_offset_t)bp->b_data - addr;
off = (vaddr_t)bp->b_data - addr;
len = round_page(off + len);
bp->b_data = bp->b_saveaddr;
bp->b_saveaddr = 0;

View File

@ -1,4 +1,4 @@
/* $NetBSD: ebsa285_machdep.c,v 1.13 2000/06/26 14:20:35 mrg Exp $ */
/* $NetBSD: ebsa285_machdep.c,v 1.14 2001/03/04 19:05:57 matt Exp $ */
/*
* Copyright (c) 1997,1998 Mark Brinicombe.
@ -164,8 +164,6 @@ vm_size_t map_chunk __P((vm_offset_t pd, vm_offset_t pt, vm_offset_t va,
vm_offset_t pa, vm_size_t size, u_int acc,
u_int flg));
void pmap_bootstrap __P((vm_offset_t kernel_l1pt,
pv_addr_t kernel_ptpt));
void process_kernel_args __P((char *));
void data_abort_handler __P((trapframe_t *frame));
void prefetch_abort_handler __P((trapframe_t *frame));
@ -173,7 +171,6 @@ void undefinedinstruction_bounce __P((trapframe_t *frame));
void zero_page_readonly __P((void));
void zero_page_readwrite __P((void));
extern void configure __P((void));
extern pt_entry_t *pmap_pte __P((pmap_t pmap, vm_offset_t va));
extern void db_machine_init __P((void));
extern void parse_mi_bootargs __P((char *args));
extern void dumpsys __P((void));
@ -726,7 +723,7 @@ initarm(bootinfo)
/* Boot strap pmap telling it where the kernel page table is */
printf("pmap ");
pmap_bootstrap(kernel_l1pt.pv_va, kernel_ptpt);
pmap_bootstrap((pd_entry_t *)kernel_l1pt.pv_va, kernel_ptpt);
/* Setup the IRQ system */
printf("irq ");

View File

@ -1,4 +1,4 @@
/* $NetBSD: ofw.c,v 1.26 2000/06/29 08:53:02 mrg Exp $ */
/* $NetBSD: ofw.c,v 1.27 2001/03/04 19:05:57 matt Exp $ */
/*
* Copyright 1997
@ -100,7 +100,6 @@ extern void map_pagetable __P((vm_offset_t pt, vm_offset_t va, vm_offset_t pa)
extern void map_entry __P((vm_offset_t pt, vm_offset_t va, vm_offset_t pa));
extern void map_entry_nc __P((vm_offset_t pt, vm_offset_t va, vm_offset_t pa));
extern void map_entry_ro __P((vm_offset_t pt, vm_offset_t va, vm_offset_t pa));
extern void pmap_bootstrap __P((vm_offset_t kernel_l1pt, pv_addr_t kernel_ptpt));
extern void dump_spl_masks __P((void));
extern void dumpsys __P((void));
extern void dotickgrovelling __P((vm_offset_t));
@ -869,7 +868,7 @@ ofw_configmem(void)
}
/* Initialize pmap module. */
pmap_bootstrap(proc0_ttbbase.pv_va, proc0_ptpt);
pmap_bootstrap((pd_entry_t *)proc0_ttbbase.pv_va, proc0_ptpt);
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: rc7500_machdep.c,v 1.32 2001/02/27 20:23:12 reinoud Exp $ */
/* $NetBSD: rc7500_machdep.c,v 1.33 2001/03/04 19:05:57 matt Exp $ */
/*
* Copyright (c) 1994-1998 Mark Brinicombe.
@ -176,7 +176,6 @@ vm_size_t map_chunk __P((vm_offset_t pd, vm_offset_t pt, vm_offset_t va,
vm_offset_t pa, vm_size_t size, u_int acc,
u_int flg));
void pmap_bootstrap __P((vm_offset_t kernel_l1pt, pv_addr_t kernel_ptpt));
void data_abort_handler __P((trapframe_t *frame));
void prefetch_abort_handler __P((trapframe_t *frame));
void undefinedinstruction_bounce __P((trapframe_t *frame));
@ -186,7 +185,6 @@ void zero_page_readwrite __P((void));
static void process_kernel_args __P((void));
extern void dump_spl_masks __P((void));
extern pt_entry_t *pmap_pte __P((pmap_t pmap, vm_offset_t va));
extern void db_machine_init __P((void));
extern void console_flush __P((void));
extern void vidcrender_reinit __P((void));
@ -915,7 +913,7 @@ initarm(prom_id)
/* Boot strap pmap telling it where the kernel page table is */
printf("pmap ");
pmap_bootstrap(kernel_l1pt.pv_va, kernel_ptpt);
pmap_bootstrap((pd_entry_t *) kernel_l1pt.pv_va, kernel_ptpt);
console_flush();
/* Setup the IRQ system */

View File

@ -1,4 +1,4 @@
/* $NetBSD: rpc_machdep.c,v 1.43 2001/03/02 01:46:57 reinoud Exp $ */
/* $NetBSD: rpc_machdep.c,v 1.44 2001/03/04 19:05:57 matt Exp $ */
/*
* Copyright (c) 2000-2001 Reinoud Zandijk.
@ -182,7 +182,6 @@ vm_size_t map_chunk __P((vm_offset_t pd, vm_offset_t pt, vm_offset_t va,
vm_offset_t pa, vm_size_t size, u_int acc,
u_int flg));
void pmap_bootstrap __P((vm_offset_t kernel_l1pt, pv_addr_t kernel_ptpt));
void data_abort_handler __P((trapframe_t *frame));
void prefetch_abort_handler __P((trapframe_t *frame));
void undefinedinstruction_bounce __P((trapframe_t *frame));
@ -192,7 +191,6 @@ void zero_page_readwrite __P((void));
static void process_kernel_args __P((void));
extern void dump_spl_masks __P((void));
extern pt_entry_t *pmap_pte __P((pmap_t pmap, vm_offset_t va));
extern void db_machine_init __P((void));
extern void console_flush __P((void));
extern void vidcrender_reinit __P((void));
@ -904,7 +902,7 @@ initarm_new_bootloader(bootconf)
/* Boot strap pmap telling it where the kernel page table is */
printf("pmap ");
pmap_bootstrap(kernel_l1pt.pv_va, kernel_ptpt);
pmap_bootstrap((pd_entry_t *)kernel_l1pt.pv_va, kernel_ptpt);
console_flush();
/* Setup the IRQ system */
@ -1955,7 +1953,7 @@ initarm_old_bootloader(bootconf)
/* Boot strap pmap telling it where the kernel page table is */
printf("pmap ");
pmap_bootstrap(kernel_l1pt.pv_va, kernel_ptpt);
pmap_bootstrap((pd_entry_t *)kernel_l1pt.pv_va, kernel_ptpt);
console_flush();
/* Setup the IRQ system */