vmparam.h revision 1.1
11.1Sober/*	$NetBSD: vmparam.h,v 1.1 2006/12/16 05:48:52 ober Exp $	*/
21.1Sober
31.1Sober/*
41.1Sober * Copyright (c) 1988 The Regents of the University of California.
51.1Sober * All rights reserved.
61.1Sober *
71.1Sober * Redistribution and use in source and binary forms, with or without
81.1Sober * modification, are permitted provided that the following conditions
91.1Sober * are met:
101.1Sober * 1. Redistributions of source code must retain the above copyright
111.1Sober *    notice, this list of conditions and the following disclaimer.
121.1Sober * 2. Redistributions in binary form must reproduce the above copyright
131.1Sober *    notice, this list of conditions and the following disclaimer in the
141.1Sober *    documentation and/or other materials provided with the distribution.
151.1Sober * 3. Neither the name of the University nor the names of its contributors
161.1Sober *    may be used to endorse or promote products derived from this software
171.1Sober *    without specific prior written permission.
181.1Sober *
191.1Sober * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
201.1Sober * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
211.1Sober * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
221.1Sober * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
231.1Sober * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
241.1Sober * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
251.1Sober * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
261.1Sober * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
271.1Sober * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
281.1Sober * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
291.1Sober * SUCH DAMAGE.
301.1Sober */
311.1Sober
321.1Sober#ifndef	_ZAURUS_VMPARAM_H_
331.1Sober#define	_ZAURUS_VMPARAM_H_
341.1Sober
351.1Sober#ifdef _KERNEL
361.1Sober
371.1Sober#include <arm/arm32/vmparam.h>
381.1Sober
391.1Sober/*
401.1Sober * Address space constants
411.1Sober */
421.1Sober
431.1Sober/*
441.1Sober * The line between user space and kernel space
451.1Sober * Mappings >= KERNEL_BASE are constant across all processes
461.1Sober */
471.1Sober#define	KERNEL_BASE		0xc0000000
481.1Sober
491.1Sober/*
501.1Sober * Override the default pager_map size, there's not enough KVA.
511.1Sober */
521.1Sober#define PAGER_MAP_SIZE		(4 * 1024 * 1024)
531.1Sober
541.1Sober/*
551.1Sober * Size of User Raw I/O map
561.1Sober */
571.1Sober
581.1Sober#define USRIOSIZE       300
591.1Sober
601.1Sober/* virtual sizes (bytes) for various kernel submaps */
611.1Sober
621.1Sober#define VM_PHYS_SIZE		(USRIOSIZE*PAGE_SIZE)
631.1Sober
641.1Sober/*
651.1Sober * max number of non-contig chunks of physical RAM you can have
661.1Sober */
671.1Sober
681.1Sober#define	VM_PHYSSEG_MAX		32
691.1Sober
701.1Sober/*
711.1Sober * when converting a physical address to a vm_page structure, we
721.1Sober * want to use a binary search on the chunks of physical memory
731.1Sober * to find our RAM
741.1Sober */
751.1Sober
761.1Sober#define	VM_PHYSSEG_STRAT	VM_PSTRAT_BSEARCH
771.1Sober
781.1Sober/*
791.1Sober * this indicates that we can't add RAM to the VM system after the
801.1Sober * vm system is init'd.
811.1Sober */
821.1Sober
831.1Sober#define	VM_PHYSSEG_NOADD
841.1Sober
851.1Sober/*
861.1Sober * we support 2 free lists:
871.1Sober *
881.1Sober *	- DEFAULT for all systems
891.1Sober *	- ISADMA for the ISA DMA range on Sharks only
901.1Sober */
911.1Sober
921.1Sober#define	VM_NFREELIST		2
931.1Sober#define	VM_FREELIST_DEFAULT	0
941.1Sober#define	VM_FREELIST_ISADMA	1
951.1Sober
961.1Sober#endif /* _KERNEL */
971.1Sober
981.1Sober#endif	/* _ZAURUS_VMPARAM_H_ */
99