ev5_paldef.h revision 8012:2f71125bf413
1/*
2Copyright 1993 Hewlett-Packard Development Company, L.P.
3
4Permission is hereby granted, free of charge, to any person obtaining a copy of
5this software and associated documentation files (the "Software"), to deal in
6the Software without restriction, including without limitation the rights to
7use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
8of the Software, and to permit persons to whom the Software is furnished to do
9so, subject to the following conditions:
10
11The above copyright notice and this permission notice shall be included in all
12copies or substantial portions of the Software.
13
14THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20SOFTWARE.
21*/
22
23#ifndef EV5_PALDEF_INCLUDED
24#define EV5_PALDEF_INCLUDED 1
25
26// from ev5_paldef.mar from Lance's fetch directory...pb Nov/95
27// some entries have been superceeded by the more recent evt_defs.h
28
29// These are lower-caseified and have the $ signs (unnecessarily we now discover) removed.
30
31// Note that at the bottom of this file is the version of ev5_defs.mar
32// which is more recent than the top part of the file and contains overlapping information...pb Nov/95
33
34//	.MACRO	PALDEFS
35//	PALDEF_VER == 1		; Flag the version number of this file.
36//	.ENDM
37//
38//
39//	.MACRO	_HALT_CODES,_GBL
40//	_DEFINI	HALT_CODES,_GBL
41
42#define hlt_c_reset		0
43#define hlt_c_hw_halt		1
44#define hlt_c_ksp_inval		2
45#define hlt_c_scbb_inval	3
46#define hlt_c_ptbr_inval	4
47#define hlt_c_sw_halt		5
48#define hlt_c_dbl_mchk		6
49#define hlt_c_mchk_from_pal	7
50#define hlt_c_start		32
51#define hlt_c_callback		33
52#define hlt_c_mpstart		34
53#define hlt_c_lfu_start		35
54
55// halt codes above 255 reserved for platform specific errors
56//	_DEFEND	HALT_CODES,_GBL,DEF
57//	.ENDM
58//	.MACRO	_MCHK_CODES,_GBL
59//	_DEFINI	MCHK_CODES,_GBL
60
61#define mchk_c_tperr			(64<<1)
62#define mchk_c_tcperr			(65<<1)
63#define mchk_c_herr			(66<<1)
64#define mchk_c_ecc_c			(67<<1)
65#define mchk_c_ecc_nc			(68<<1)
66#define mchk_c_unknown		        (69<<1)
67#define mchk_c_cacksoft			(70<<1)
68#define mchk_c_bugcheck			(71<<1)
69#define mchk_c_os_bugcheck		(72<<1)
70#define mchk_c_dcperr			(73<<1)
71#define mchk_c_icperr			(74<<1)
72#define mchk_c_retryable_ird		(75<<1)
73#define mchk_c_proc_hrd_error		(76<<1)
74#define mchk_c_scperr			(77<<1)
75#define mchk_c_bcperr			(78<<1)
76//; mchk codes above 255 reserved for platform specific errors
77
78
79#define mchk_c_read_nxm			(256<<1)
80#define mchk_c_sys_hrd_error		(257<<1)
81#define mchk_c_sys_ecc			(258<<1)
82
83//	_DEFEND	MCHK_CODES,_GBL,DEF
84//	.ENDM
85
86//	.MACRO	_EV5_MM,_GBL
87//	_DEFINI	_EV5_MM,_GBL
88
89#define page_seg_size_bits	 10
90#define page_offset_size_bits	 13
91#define page_size_bytes		 8192
92#define va_size_bits		 43
93#define pa_size_bits		 45
94
95//	_DEFEND	_EV5_MM,_GBL,DEF
96//	.ENDM
97
98//	.MACRO	_PALTEMP,_GBL
99//	_DEFINI	_PALTEMP,_GBL
100
101// replaced by ev5_defs.h #define pt0  		(0x140)
102// replaced by ev5_defs.h #define pt1  		(0x141)
103// replaced by ev5_defs.h #define pt2  		(0x142)
104#define pt_entuna	(0x142)
105// replaced by ev5_defs.h #define pt3	 	(0x143)
106#define pt_impure	(0x143)
107// replaced by ev5_defs.h #define pt4  		(0x144)
108// replaced by ev5_defs.h #define pt5  		(0x145)
109// replaced by ev5_defs.h #define pt6  		(0x146)
110// replaced by ev5_defs.h #define pt7  		(0x147)
111#define pt_entif	(0x147)
112// replaced by ev5_defs.h #define pt8  		(0x148)
113#define pt_intmask	(0x148)
114// replaced by ev5_defs.h #define pt9  		(0x149)
115#define pt_entsys	(0x149)
116#define pt_ps  		(0x149)
117// replaced by ev5_defs.h #define pt10  		(0x14a)
118// replaced by ev5_defs.h #define pt11  		(0x14b)
119#define pt_trap		(0x14b)
120#define pt_entint	(0x14b)
121// replaced by ev5_defs.h #define pt12  		(0x14c)
122#define pt_entarith	(0x14c)
123// replaced by ev5_defs.h #define pt13		(0x14d)
124#define pt_sys0		(0x14d)
125// replaced by ev5_defs.h #define pt14		(0x14e)
126#define pt_sys1		(0x14e)
127// replaced by ev5_defs.h #define pt15		(0x14f)
128#define pt_sys2		(0x14f)
129// replaced by ev5_defs.h #define pt16  		(0x150)
130#define pt_whami	(0x150)
131#define pt_mces		(0x150)
132#define pt_misc 	(0x150)
133// replaced by ev5_defs.h #define pt17  		(0x151)
134#define pt_scc 		(0x151)
135#define pt_sysval	(0x151)
136// replaced by ev5_defs.h #define pt18  		(0x152)
137#define pt_prbr		(0x152)
138#define pt_usp		(0x152)
139// replaced by ev5_defs.h #define pt19  		(0x153)
140#define pt_ksp 		(0x153)
141// replaced by ev5_defs.h #define pt20  		(0x154)
142#define pt_ptbr		(0x154)
143// replaced by ev5_defs.h #define pt21  		(0x155)
144#define pt_vptbr	(0x155)
145#define pt_entmm	(0x155)
146// replaced by ev5_defs.h #define pt22  		(0x156)
147#define pt_scbb		(0x156)
148#define pt_kgp		(0x156)
149// replaced by ev5_defs.h #define pt23  		(0x157)
150#define pt_pcbb		(0x157)
151
152
153#define pt_misc_v_switch 48
154#define pt_misc_v_cm     56
155
156//	_DEFEND	_PALTEMP,_GBL,DEF
157//	.ENDM
158
159//	.MACRO	_OSF_MMCSR_DEF,_GBL
160//	_DEFINI	OSFMMCSR,_GBL
161
162#define mmcsr_c_tnv		0
163#define mmcsr_c_acv		1
164#define mmcsr_c_for		2
165#define mmcsr_c_foe		3
166#define mmcsr_c_fow		4
167
168//	_DEFEND	OSFMMCSR,_GBL,DEF
169//	.ENDM
170
171//	.MACRO	_MM_STAT_DEF,_GBL
172//	_DEFINI	MMSTATDEF,_GBL
173
174#define mm_stat_m_opcode  	(0x3F)
175#define mm_stat_m_ra  		(0x1F)
176#define evx_opc_sync	 	(0x18)
177#define EVX_OPC_SYNC	 	(0x18)
178#define evx_opc_hw_ld	 	(0x1B)
179
180//	_DEFEND	MMSTATDEF,_GBL,DEF
181//	.ENDM
182
183//	.MACRO	_OSF_A0_DEF,_GBL
184//	_DEFINI	OSFA0DEF,_GBL
185
186#define osf_a0_bpt	  	(0x0)
187#define osf_a0_bugchk	  	(0x1)
188#define osf_a0_gentrap	  	(0x2)
189#define osf_a0_fen	  	(0x3)
190#define osf_a0_opdec	  	(0x4)
191
192//	_DEFEND	OSFA0DEF,_GBL,DEF
193//	.ENDM
194
195//	.MACRO	_EV5_IPLDEF,_GBL
196//	_DEFINI	EV5_IPLDEF,_GBL
197
198#define ipl_machine_check	31
199#define ipl_powerfail		30
200#define ipl_perf_count		29
201#define ipl_clock		22
202#define ipl_interprocessor	22
203
204//	_DEFEND	EV5_IPLDEF,_GBL,DEF
205//	.ENDM
206
207#endif
208