diff options
author | Martin Pieuchot <mpi@cvs.openbsd.org> | 2014-04-01 20:42:40 +0000 |
---|---|---|
committer | Martin Pieuchot <mpi@cvs.openbsd.org> | 2014-04-01 20:42:40 +0000 |
commit | 460628dca858056a6128b963d940a4804897b9dc (patch) | |
tree | 6d2f471efc0ba8482aee1bcd1f1af0e9add67ab1 /sys/arch/powerpc | |
parent | c23355c3c24bd2208ba93faf001f65b227fdfb41 (diff) |
Remove the almost unused abstraction around "struct firmware" and use
instead a single function ppc_mem_regions() required by the ppc pmap.
ok kettenis@
Diffstat (limited to 'sys/arch/powerpc')
-rw-r--r-- | sys/arch/powerpc/include/powerpc.h | 53 | ||||
-rw-r--r-- | sys/arch/powerpc/powerpc/pmap.c | 9 |
2 files changed, 59 insertions, 3 deletions
diff --git a/sys/arch/powerpc/include/powerpc.h b/sys/arch/powerpc/include/powerpc.h new file mode 100644 index 00000000000..a94979ef4d6 --- /dev/null +++ b/sys/arch/powerpc/include/powerpc.h @@ -0,0 +1,53 @@ +/* $OpenBSD: powerpc.h,v 1.8 2014/04/01 20:42:39 mpi Exp $ */ +/* $NetBSD: powerpc.h,v 1.1 1996/09/30 16:34:30 ws Exp $ */ + +/* + * Copyright (C) 1996 Wolfgang Solfrank. + * Copyright (C) 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 _POWERPC_POWERPC_H_ +#define _POWERPC_POWERPC_H_ + +struct mem_region { + vaddr_t start; + vsize_t size; +}; + +void ppc_mem_regions(struct mem_region **, struct mem_region **); + +struct dumpmem { + vaddr_t start; + vsize_t end; +}; + +extern struct dumpmem dumpmem[VM_PHYSSEG_MAX]; +extern u_int ndumpmem; + +#endif /* _POWERPC_POWERPC_H_ */ diff --git a/sys/arch/powerpc/powerpc/pmap.c b/sys/arch/powerpc/powerpc/pmap.c index 0ca34dc7599..c9f1f19adec 100644 --- a/sys/arch/powerpc/powerpc/pmap.c +++ b/sys/arch/powerpc/powerpc/pmap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pmap.c,v 1.126 2014/03/31 18:58:41 mpi Exp $ */ +/* $OpenBSD: pmap.c,v 1.127 2014/04/01 20:42:39 mpi Exp $ */ /* * Copyright (c) 2001, 2002, 2007 Dale Rahn. @@ -84,7 +84,7 @@ #include <uvm/uvm_extern.h> #include <machine/pcb.h> -#include <machine/powerpc.h> +#include <powerpc/powerpc.h> #include <machine/pmap.h> #include <machine/db_machdep.h> @@ -93,6 +93,9 @@ #include <powerpc/lock.h> +struct dumpmem dumpmem[VM_PHYSSEG_MAX]; +u_int ndumpmem; + struct pmap kernel_pmap_; static struct mem_region *pmap_mem, *pmap_avail; struct mem_region pmap_allocated[10]; @@ -1398,7 +1401,7 @@ pmap_avail_setup(void) struct mem_region *mp; int pmap_physmem; - (fw->mem_regions) (&pmap_mem, &pmap_avail); + ppc_mem_regions(&pmap_mem, &pmap_avail); pmap_cnt_avail = 0; pmap_physmem = 0; |