Home | History | Annotate | Line # | Download | only in luna68k
genassym.cf revision 1.2
      1  1.2   thorpej #	$NetBSD: genassym.cf,v 1.2 2000/05/26 00:36:46 thorpej Exp $
      2  1.1  nisimura 
      3  1.1  nisimura #
      4  1.1  nisimura # Copyright (c) 1982, 1990, 1993
      5  1.1  nisimura #	The Regents of the University of California.  All rights reserved.
      6  1.1  nisimura #
      7  1.1  nisimura # Redistribution and use in source and binary forms, with or without
      8  1.1  nisimura # modification, are permitted provided that the following conditions
      9  1.1  nisimura # are met:
     10  1.1  nisimura # 1. Redistributions of source code must retain the above copyright
     11  1.1  nisimura #    notice, this list of conditions and the following disclaimer.
     12  1.1  nisimura # 2. Redistributions in binary form must reproduce the above copyright
     13  1.1  nisimura #    notice, this list of conditions and the following disclaimer in the
     14  1.1  nisimura #    documentation and/or other materials provided with the distribution.
     15  1.1  nisimura # 3. All advertising materials mentioning features or use of this software
     16  1.1  nisimura #    must display the following acknowledgement:
     17  1.1  nisimura #	This product includes software developed by the University of
     18  1.1  nisimura #	California, Berkeley and its contributors.
     19  1.1  nisimura # 4. Neither the name of the University nor the names of its contributors
     20  1.1  nisimura #    may be used to endorse or promote products derived from this software
     21  1.1  nisimura #    without specific prior written permission.
     22  1.1  nisimura #
     23  1.1  nisimura # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
     24  1.1  nisimura # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     25  1.1  nisimura # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     26  1.1  nisimura # ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
     27  1.1  nisimura # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     28  1.1  nisimura # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     29  1.1  nisimura # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     30  1.1  nisimura # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
     31  1.1  nisimura # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     32  1.1  nisimura # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     33  1.1  nisimura # SUCH DAMAGE.
     34  1.1  nisimura #
     35  1.1  nisimura #	@(#)genassym.c	8.3 (Berkeley) 1/4/94
     36  1.1  nisimura #
     37  1.1  nisimura 
     38  1.1  nisimura include "opt_compat_svr4.h"
     39  1.1  nisimura 
     40  1.1  nisimura include <sys/param.h>
     41  1.1  nisimura include <sys/buf.h>
     42  1.1  nisimura include <sys/map.h>
     43  1.1  nisimura include <sys/proc.h>
     44  1.1  nisimura include <sys/mbuf.h>
     45  1.1  nisimura include <sys/msgbuf.h>
     46  1.1  nisimura include <sys/syscall.h>
     47  1.1  nisimura include <sys/user.h>
     48  1.1  nisimura 
     49  1.1  nisimura include <vm/vm.h>
     50  1.1  nisimura 
     51  1.1  nisimura include <uvm/uvm_extern.h>
     52  1.1  nisimura 
     53  1.1  nisimura ifdef COMPAT_SVR4
     54  1.1  nisimura include <compat/svr4/svr4_syscall.h>
     55  1.1  nisimura include <compat/svr4/svr4_ucontext.h>
     56  1.1  nisimura endif
     57  1.1  nisimura 
     58  1.1  nisimura include <machine/cpu.h>
     59  1.1  nisimura include <machine/psl.h>
     60  1.1  nisimura include <machine/reg.h>
     61  1.1  nisimura include <machine/pte.h>
     62  1.1  nisimura 
     63  1.1  nisimura # values for mmutype
     64  1.1  nisimura define	MMU_68030		MMU_68030
     65  1.1  nisimura define	MMU_68851		MMU_68851
     66  1.1  nisimura define	MMU_68040		MMU_68040
     67  1.1  nisimura 
     68  1.1  nisimura # values for cputype
     69  1.1  nisimura define	CPU_68020		CPU_68020
     70  1.1  nisimura define	CPU_68030		CPU_68030
     71  1.1  nisimura define	CPU_68040		CPU_68040
     72  1.1  nisimura 
     73  1.1  nisimura # CPU configuration options
     74  1.1  nisimura ifdef M68020
     75  1.1  nisimura define	M68020			1
     76  1.1  nisimura endif
     77  1.1  nisimura ifdef M68030
     78  1.1  nisimura define	M68030			1
     79  1.1  nisimura endif
     80  1.1  nisimura ifdef M68040
     81  1.1  nisimura define	M68040			1
     82  1.1  nisimura endif
     83  1.1  nisimura 
     84  1.1  nisimura # values for fputype
     85  1.1  nisimura define	FPU_NONE		FPU_NONE
     86  1.1  nisimura define	FPU_68881		FPU_68881
     87  1.1  nisimura define	FPU_68882		FPU_68882
     88  1.1  nisimura define	FPU_68040		FPU_68040
     89  1.1  nisimura 
     90  1.1  nisimura # values for ectype
     91  1.1  nisimura define	EC_PHYS			EC_PHYS
     92  1.1  nisimura define	EC_NONE			EC_NONE
     93  1.1  nisimura define	EC_VIRT			EC_VIRT
     94  1.1  nisimura 
     95  1.1  nisimura # general constants
     96  1.1  nisimura define	UPAGES			UPAGES
     97  1.1  nisimura define	USPACE			USPACE
     98  1.1  nisimura define	NBPG			NBPG
     99  1.1  nisimura define	PGSHIFT			PGSHIFT
    100  1.1  nisimura define	USRSTACK		USRSTACK
    101  1.1  nisimura 
    102  1.1  nisimura # proc fields and values
    103  1.1  nisimura define	P_FORW			offsetof(struct proc, p_forw)
    104  1.1  nisimura define	P_BACK			offsetof(struct proc, p_back)
    105  1.1  nisimura define	P_VMSPACE		offsetof(struct proc, p_vmspace)
    106  1.1  nisimura define	P_ADDR			offsetof(struct proc, p_addr)
    107  1.1  nisimura define	P_PRIORITY		offsetof(struct proc, p_priority)
    108  1.1  nisimura define	P_STAT			offsetof(struct proc, p_stat)
    109  1.1  nisimura define	P_WCHAN			offsetof(struct proc, p_wchan)
    110  1.1  nisimura define	P_MD_FLAGS		offsetof(struct proc, p_md.md_flags)
    111  1.1  nisimura define	P_MD_REGS		offsetof(struct proc, p_md.md_regs)
    112  1.1  nisimura define	SSLEEP			SSLEEP
    113  1.1  nisimura define	SRUN			SRUN
    114  1.2   thorpej define	SONPROC			SONPROC
    115  1.1  nisimura 
    116  1.1  nisimura # interrupt/fault metering
    117  1.1  nisimura define	UVMEXP_INTRS		offsetof(struct uvmexp, intrs)
    118  1.1  nisimura 
    119  1.1  nisimura define	T_BUSERR		T_BUSERR
    120  1.1  nisimura define	T_ADDRERR		T_ADDRERR
    121  1.1  nisimura define	T_ILLINST		T_ILLINST
    122  1.1  nisimura define	T_ZERODIV		T_ZERODIV
    123  1.1  nisimura define	T_CHKINST		T_CHKINST
    124  1.1  nisimura define	T_TRAPVINST		T_TRAPVINST
    125  1.1  nisimura define	T_PRIVINST		T_PRIVINST
    126  1.1  nisimura define	T_TRACE			T_TRACE
    127  1.1  nisimura define	T_MMUFLT		T_MMUFLT
    128  1.1  nisimura define	T_SSIR			T_SSIR
    129  1.1  nisimura define	T_FMTERR		T_FMTERR
    130  1.1  nisimura define	T_COPERR		T_COPERR
    131  1.1  nisimura define	T_FPERR			T_FPERR
    132  1.1  nisimura define	T_ASTFLT		T_ASTFLT
    133  1.1  nisimura define	T_TRAP15		T_TRAP15
    134  1.1  nisimura define	T_FPEMULI		T_FPEMULI
    135  1.1  nisimura define	T_FPEMULD		T_FPEMULD
    136  1.1  nisimura 
    137  1.1  nisimura # PSL values (should just include psl.h?)
    138  1.1  nisimura define	PSL_S			PSL_S
    139  1.1  nisimura define	PSL_IPL7		PSL_IPL7
    140  1.1  nisimura define	PSL_LOWIPL		PSL_LOWIPL
    141  1.1  nisimura define	PSL_HIGHIPL		PSL_HIGHIPL
    142  1.1  nisimura define	PSL_USER		PSL_USER
    143  1.1  nisimura define	PSL_TS			PSL_T | PSL_S
    144  1.1  nisimura define	SPL1			PSL_S | PSL_IPL1
    145  1.1  nisimura define	SPL2			PSL_S | PSL_IPL2
    146  1.1  nisimura define	SPL3			PSL_S | PSL_IPL3
    147  1.1  nisimura define	SPL4			PSL_S | PSL_IPL4
    148  1.1  nisimura define	SPL5			PSL_S | PSL_IPL5
    149  1.1  nisimura define	SPL6			PSL_S | PSL_IPL6
    150  1.1  nisimura 
    151  1.1  nisimura # magic
    152  1.1  nisimura define	FC_USERD		FC_USERD
    153  1.1  nisimura define	FC_SUPERD		FC_SUPERD
    154  1.1  nisimura define	CACHE_ON		CACHE_ON
    155  1.1  nisimura define	CACHE_OFF		CACHE_OFF
    156  1.1  nisimura define	CACHE_CLR		CACHE_CLR
    157  1.1  nisimura define	IC_CLEAR		IC_CLEAR
    158  1.1  nisimura define	DC_CLEAR		DC_CLEAR
    159  1.1  nisimura 
    160  1.1  nisimura # pte/ste bits
    161  1.1  nisimura define	PG_V			PG_V
    162  1.1  nisimura define	PG_NV			PG_NV
    163  1.1  nisimura define	PG_RO			PG_RO
    164  1.1  nisimura define	PG_RW			PG_RW
    165  1.1  nisimura define	PG_CI			PG_CI
    166  1.1  nisimura define	PG_PROT			PG_PROT
    167  1.1  nisimura define	PG_FRAME		PG_FRAME
    168  1.1  nisimura define	SG_V			SG_V
    169  1.1  nisimura define	SG_NV			SG_NV
    170  1.1  nisimura define	SG_RW			SG_RW
    171  1.1  nisimura define	SG_FRAME		SG_FRAME
    172  1.1  nisimura define	SG_ISHIFT		SG_ISHIFT
    173  1.1  nisimura 
    174  1.1  nisimura # pcb fields
    175  1.1  nisimura define	PCB_PS			offsetof(struct pcb, pcb_ps)
    176  1.1  nisimura define	PCB_USP			offsetof(struct pcb, pcb_usp)
    177  1.1  nisimura define	PCB_REGS		offsetof(struct pcb, pcb_regs)
    178  1.1  nisimura define	PCB_ONFAULT		offsetof(struct pcb, pcb_onfault)
    179  1.1  nisimura define	PCB_FPCTX		offsetof(struct pcb, pcb_fpregs)
    180  1.1  nisimura define	SIZEOF_PCB		sizeof(struct pcb)
    181  1.1  nisimura 
    182  1.1  nisimura # exception frame offset/sizes
    183  1.1  nisimura define	FR_SP			offsetof(struct frame, f_regs[15])
    184  1.1  nisimura define	FR_HW			offsetof(struct frame, f_sr)
    185  1.1  nisimura define	FR_ADJ			offsetof(struct frame, f_stackadj)
    186  1.1  nisimura define	FR_SIZE			sizeof(struct trapframe)
    187  1.1  nisimura 
    188  1.1  nisimura # system calls
    189  1.1  nisimura define	SYS_exit		SYS_exit
    190  1.1  nisimura define	SYS_execve		SYS_execve
    191  1.1  nisimura define	SYS___sigreturn14	SYS___sigreturn14
    192  1.1  nisimura define	SYS_compat_13_sigreturn13 SYS_compat_13_sigreturn13
    193  1.1  nisimura 
    194  1.1  nisimura # errno
    195  1.1  nisimura define	EFAULT			EFAULT
    196  1.1  nisimura define	ENAMETOOLONG		ENAMETOOLONG
    197  1.1  nisimura 
    198  1.1  nisimura # SVR4 binary compatibility
    199  1.1  nisimura ifdef COMPAT_SVR4
    200  1.1  nisimura define	SVR4_SIGF_HANDLER	offsetof(struct svr4_sigframe, sf_handler)
    201  1.1  nisimura define	SVR4_SIGF_UC		offsetof(struct svr4_sigframe, sf_uc)
    202  1.1  nisimura define	SVR4_SYS_context	SVR4_SYS_context
    203  1.1  nisimura define	SVR4_SYS_exit		SVR4_SYS_exit
    204  1.1  nisimura define	SVR4_SETCONTEXT		SVR4_SETCONTEXT
    205  1.1  nisimura endif
    206  1.1  nisimura 
    207