xref: /netbsd-src/sys/arch/powerpc/ibm4xx/genassym.cf (revision 94924a74951467fd24cb327426e24f4a3eb8732d)
1#	$NetBSD: genassym.cf,v 1.24 2018/07/15 05:16:43 maxv Exp $
2
3#
4# Copyright (C) 1995, 1996 Wolfgang Solfrank.
5# Copyright (C) 1995, 1996 TooLs GmbH.
6# All rights reserved.
7#
8# Redistribution and use in source and binary forms, with or without
9# modification, are permitted provided that the following conditions
10# are met:
11# 1. Redistributions of source code must retain the above copyright
12#    notice, this list of conditions and the following disclaimer.
13# 2. Redistributions in binary form must reproduce the above copyright
14#    notice, this list of conditions and the following disclaimer in the
15#    documentation and/or other materials provided with the distribution.
16# 3. All advertising materials mentioning features or use of this software
17#    must display the following acknowledgement:
18#	This product includes software developed by TooLs GmbH.
19# 4. The name of TooLs GmbH may not be used to endorse or promote products
20#    derived from this software without specific prior written permission.
21#
22# THIS SOFTWARE IS PROVIDED BY TOOLS GMBH ``AS IS'' AND ANY EXPRESS OR
23# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
24# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
25# IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
27# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
28# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
29# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
30# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
31# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32#
33
34include <sys/param.h>
35include <sys/bitops.h>
36
37include <machine/pmap.h>
38
39define	FRAME_DEAR	offsetof(struct ktrapframe, ktf_tf.tf_dear)
40define	FRAME_ESR	offsetof(struct ktrapframe, ktf_tf.tf_esr)
41define	FRAME_PID	offsetof(struct ktrapframe, ktf_tf.tf_pid)
42
43define	PM_CTX		offsetof(struct pmap, pm_ctx)
44define	KERNEL_PID	KERNEL_PID
45
46define	CI_INTSTK	offsetof(struct cpu_info, ci_intstk)
47define	CI_TEMPSAVE	offsetof(struct cpu_info, ci_savearea[CI_SAVETEMP])
48define	CI_DDBSAVE	offsetof(struct cpu_info, ci_savearea[CI_SAVEDDB])
49define	CI_TLBMISSSAVE	offsetof(struct cpu_info, ci_savearea[CI_SAVEMMU])
50
51define	CPUSAVE_R28	CPUSAVE_R28*sizeof(register_t)
52define	CPUSAVE_R29	CPUSAVE_R29*sizeof(register_t)
53define	CPUSAVE_R30	CPUSAVE_R30*sizeof(register_t)
54define	CPUSAVE_R31	CPUSAVE_R31*sizeof(register_t)
55define	CPUSAVE_DEAR	CPUSAVE_DEAR*sizeof(register_t)
56define	CPUSAVE_ESR	CPUSAVE_ESR*sizeof(register_t)
57define	CPUSAVE_SRR0	CPUSAVE_SRR0*sizeof(register_t)
58define	CPUSAVE_SRR1	CPUSAVE_SRR1*sizeof(register_t)
59