xref: /netbsd-src/sys/arch/acorn32/include/vmparam.h (revision 2688b45919104063fe0cb59463eebf907599f0ac)
1*2688b459Schristos /*	$NetBSD: vmparam.h,v 1.28 2019/03/27 17:15:29 christos Exp $	*/
27d4a1addSreinoud 
37d4a1addSreinoud /*
47d4a1addSreinoud  * Copyright (c) 1988 The Regents of the University of California.
57d4a1addSreinoud  * All rights reserved.
67d4a1addSreinoud  *
77d4a1addSreinoud  * Redistribution and use in source and binary forms, with or without
87d4a1addSreinoud  * modification, are permitted provided that the following conditions
97d4a1addSreinoud  * are met:
107d4a1addSreinoud  * 1. Redistributions of source code must retain the above copyright
117d4a1addSreinoud  *    notice, this list of conditions and the following disclaimer.
127d4a1addSreinoud  * 2. Redistributions in binary form must reproduce the above copyright
137d4a1addSreinoud  *    notice, this list of conditions and the following disclaimer in the
147d4a1addSreinoud  *    documentation and/or other materials provided with the distribution.
15aad01611Sagc  * 3. Neither the name of the University nor the names of its contributors
167d4a1addSreinoud  *    may be used to endorse or promote products derived from this software
177d4a1addSreinoud  *    without specific prior written permission.
187d4a1addSreinoud  *
197d4a1addSreinoud  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
207d4a1addSreinoud  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
217d4a1addSreinoud  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
227d4a1addSreinoud  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
237d4a1addSreinoud  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
247d4a1addSreinoud  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
257d4a1addSreinoud  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
267d4a1addSreinoud  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
277d4a1addSreinoud  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
287d4a1addSreinoud  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
297d4a1addSreinoud  * SUCH DAMAGE.
307d4a1addSreinoud  */
317d4a1addSreinoud 
32caff4f57Schristos #ifndef	_ACORN32_VMPARAM_H_
33caff4f57Schristos #define	_ACORN32_VMPARAM_H_
347d4a1addSreinoud 
354ffa9834Sthorpej #include <arm/arm32/vmparam.h>
364ffa9834Sthorpej 
377d4a1addSreinoud /*
387d4a1addSreinoud  * Address space constants
397d4a1addSreinoud  */
407d4a1addSreinoud 
417d4a1addSreinoud /*
427d4a1addSreinoud  * The line between user space and kernel space
43110e2a57Sthorpej  * Mappings >= KERNEL_BASE are constant across all processes
447d4a1addSreinoud  */
45110e2a57Sthorpej #define	KERNEL_BASE		0xf0000000
467d4a1addSreinoud 
477d4a1addSreinoud /*
487d4a1addSreinoud  * Size of User Raw I/O map
497d4a1addSreinoud  */
507d4a1addSreinoud 
517d4a1addSreinoud #define USRIOSIZE       300
527d4a1addSreinoud 
537d4a1addSreinoud /* virtual sizes (bytes) for various kernel submaps */
547d4a1addSreinoud 
55cc2c493bSthorpej #define VM_PHYS_SIZE		(USRIOSIZE*PAGE_SIZE)
567d4a1addSreinoud 
577d4a1addSreinoud /*
587d4a1addSreinoud  * max number of non-contig chunks of physical RAM you can have
597d4a1addSreinoud  */
607d4a1addSreinoud 
617d4a1addSreinoud #define	VM_PHYSSEG_MAX		32
627d4a1addSreinoud 
637d4a1addSreinoud /*
647d4a1addSreinoud  * when converting a physical address to a vm_page structure, we
657d4a1addSreinoud  * want to use a binary search on the chunks of physical memory
667d4a1addSreinoud  * to find our RAM
677d4a1addSreinoud  */
687d4a1addSreinoud 
697d4a1addSreinoud #define	VM_PHYSSEG_STRAT	VM_PSTRAT_BSEARCH
707d4a1addSreinoud 
717d4a1addSreinoud /*
727d4a1addSreinoud  * we support 2 free lists:
737d4a1addSreinoud  *
747d4a1addSreinoud  *	- DEFAULT for all systems
7581f10ee7Sskrll  *	- ISADMA for the ISA DMA range
767d4a1addSreinoud  *	- RPCDMA for the DMA range on RiscPC's + Kinetic cards
777d4a1addSreinoud  */
787d4a1addSreinoud 
797d4a1addSreinoud #define	VM_NFREELIST		2
807d4a1addSreinoud #define	VM_FREELIST_DEFAULT	0
817d4a1addSreinoud #define	VM_FREELIST_ISADMA	1
827d4a1addSreinoud #define VM_FREELIST_RPCDMA	1
837d4a1addSreinoud 
84caff4f57Schristos #endif	/* _ACORN32_VMPARAM_H_ */
85