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