xref: /netbsd-src/sys/arch/cesfic/include/param.h (revision b4cc495b2a2744717707f459b49dcee46df2e7bb)
1*b4cc495bSchristos /*	$NetBSD: param.h,v 1.13 2017/01/14 22:24:43 christos Exp $	*/
2e047259aSdrochner 
3e047259aSdrochner /*
49b6bd2d9Srmind  * Copyright (c) 1988 University of Utah.
5e047259aSdrochner  * Copyright (c) 1982, 1986, 1990, 1993
6e047259aSdrochner  *	The Regents of the University of California.  All rights reserved.
7e047259aSdrochner  *
8e047259aSdrochner  * This code is derived from software contributed to Berkeley by
9e047259aSdrochner  * the Systems Programming Group of the University of Utah Computer
10e047259aSdrochner  * Science Department.
11e047259aSdrochner  *
12e047259aSdrochner  * Redistribution and use in source and binary forms, with or without
13e047259aSdrochner  * modification, are permitted provided that the following conditions
14e047259aSdrochner  * are met:
15e047259aSdrochner  * 1. Redistributions of source code must retain the above copyright
16e047259aSdrochner  *    notice, this list of conditions and the following disclaimer.
17e047259aSdrochner  * 2. Redistributions in binary form must reproduce the above copyright
18e047259aSdrochner  *    notice, this list of conditions and the following disclaimer in the
19e047259aSdrochner  *    documentation and/or other materials provided with the distribution.
20aad01611Sagc  * 3. Neither the name of the University nor the names of its contributors
21aad01611Sagc  *    may be used to endorse or promote products derived from this software
22aad01611Sagc  *    without specific prior written permission.
23aad01611Sagc  *
24aad01611Sagc  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
25aad01611Sagc  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26aad01611Sagc  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27aad01611Sagc  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
28aad01611Sagc  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
29aad01611Sagc  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30aad01611Sagc  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31aad01611Sagc  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32aad01611Sagc  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33aad01611Sagc  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34aad01611Sagc  * SUCH DAMAGE.
35aad01611Sagc  *
36aad01611Sagc  * from: Utah $Hdr: machparam.h 1.16 92/12/20$
37aad01611Sagc  *
38aad01611Sagc  *	@(#)param.h	8.1 (Berkeley) 6/10/93
39aad01611Sagc  */
40*b4cc495bSchristos #ifndef _MACHINE_PARAM_H_
41*b4cc495bSchristos #define _MACHINE_PARAM_H_
42e047259aSdrochner /*
43e047259aSdrochner  * Machine dependent constants for CES FIC8234.
44e047259aSdrochner  */
45e047259aSdrochner #define	_MACHINE	cesfic
46e047259aSdrochner #define	MACHINE		"cesfic"
47e047259aSdrochner 
48e047259aSdrochner /*
49e047259aSdrochner  * Round p (pointer or byte index) up to a correctly-aligned value for all
50e047259aSdrochner  * data types (int, long, ...).   The result is u_int and must be cast to
51e047259aSdrochner  * any desired pointer type.
52e047259aSdrochner  *
53e047259aSdrochner  * ALIGNED_POINTER is a boolean macro that checks whether an address
54e047259aSdrochner  * is valid to fetch data elements of type t from on this architecture.
55e047259aSdrochner  * This does not reflect the optimal alignment, just the possibility
56e047259aSdrochner  * (within reasonable limits).
57e047259aSdrochner  *
58e047259aSdrochner  */
59e047259aSdrochner 
60e047259aSdrochner #define	PGSHIFT		12		/* LOG2(NBPG) */
61e047259aSdrochner #define	NPTEPG		(NBPG/(sizeof (pt_entry_t)))
62e047259aSdrochner 
63e047259aSdrochner #define	KERNBASE	0x00002000	/* start of kernel virtual */
64e047259aSdrochner 
65e047259aSdrochner #define	UPAGES		2		/* pages of u-area */
66e047259aSdrochner 
67e047259aSdrochner #include <m68k/param.h>
68e047259aSdrochner 
69e047259aSdrochner /*
70e047259aSdrochner  * Minimum and maximum sizes of the kernel malloc arena in PAGE_SIZE-sized
71e047259aSdrochner  * logical pages.
72e047259aSdrochner  */
734c23b30cSpara #define	NKMEMPAGES_MIN_DEFAULT	((8 * 1024 * 1024) >> PAGE_SHIFT)
744c23b30cSpara #define	NKMEMPAGES_MAX_DEFAULT	((128 * 1024 * 1024) >> PAGE_SHIFT)
75e047259aSdrochner 
76e047259aSdrochner /*
773086980bSkleink  * Interrupt glue.
78e047259aSdrochner  */
793086980bSkleink #include <machine/intr.h>
80e047259aSdrochner 
81e047259aSdrochner #if defined(_KERNEL) && !defined(_LOCORE)
82e047259aSdrochner #define	delay(us)	_delay((us) << 8)
83e047259aSdrochner #define DELAY(us)	delay(us)
84e047259aSdrochner 
8502cdf4d2Sdsl void	_delay(u_int);
86e047259aSdrochner #endif /* _KERNEL && !_LOCORE */
87*b4cc495bSchristos #endif /* _MACHINE_PARAM_H_ */
88