vmparam.h revision 1.6
11.6Sskrll/* $NetBSD: vmparam.h,v 1.6 2017/11/02 09:42:45 skrll 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.4Schristos#if defined(_KERNEL) || defined(_KMEMUSER) 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 * Size of User Raw I/O map 511.1Sober */ 521.1Sober 531.1Sober#define USRIOSIZE 300 541.1Sober 551.1Sober/* virtual sizes (bytes) for various kernel submaps */ 561.1Sober 571.1Sober#define VM_PHYS_SIZE (USRIOSIZE*PAGE_SIZE) 581.1Sober 591.1Sober/* 601.1Sober * max number of non-contig chunks of physical RAM you can have 611.1Sober */ 621.1Sober 631.1Sober#define VM_PHYSSEG_MAX 32 641.1Sober 651.1Sober/* 661.1Sober * when converting a physical address to a vm_page structure, we 671.1Sober * want to use a binary search on the chunks of physical memory 681.1Sober * to find our RAM 691.1Sober */ 701.1Sober 711.1Sober#define VM_PHYSSEG_STRAT VM_PSTRAT_BSEARCH 721.1Sober 731.1Sober/* 741.1Sober * we support 2 free lists: 751.1Sober * 761.1Sober * - DEFAULT for all systems 771.6Sskrll * - ISADMA for the ISA DMA range 781.1Sober */ 791.1Sober 801.1Sober#define VM_NFREELIST 2 811.1Sober#define VM_FREELIST_DEFAULT 0 821.1Sober#define VM_FREELIST_ISADMA 1 831.1Sober 841.4Schristos#endif /* _KERNEL || _KMEMUSER */ 851.1Sober 861.1Sober#endif /* _ZAURUS_VMPARAM_H_ */ 87