1/*
2 * Copyright (c) 1993 The Hewlett-Packard Development Company
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;
9 * redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution;
12 * neither the name of the copyright holders nor the names of its
13 * contributors may be used to endorse or promote products derived from
14 * this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28
29#ifndef EV5_PALDEF_INCLUDED
30#define EV5_PALDEF_INCLUDED 1
31
32// from ev5_paldef.mar from Lance's fetch directory...pb Nov/95
33// some entries have been superceeded by the more recent evt_defs.h
34
35// These are lower-caseified and have the $ signs (unnecessarily we
36// now discover) removed.
37
38// Note that at the bottom of this file is the version of ev5_defs.mar
39// which is more recent than the top part of the file and contains
40// overlapping information...pb Nov/95
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#define mchk_c_tperr			(64<<1)
56#define mchk_c_tcperr			(65<<1)
57#define mchk_c_herr			(66<<1)
58#define mchk_c_ecc_c			(67<<1)
59#define mchk_c_ecc_nc			(68<<1)
60#define mchk_c_unknown		        (69<<1)
61#define mchk_c_cacksoft			(70<<1)
62#define mchk_c_bugcheck			(71<<1)
63#define mchk_c_os_bugcheck		(72<<1)
64#define mchk_c_dcperr			(73<<1)
65#define mchk_c_icperr			(74<<1)
66#define mchk_c_retryable_ird		(75<<1)
67#define mchk_c_proc_hrd_error		(76<<1)
68#define mchk_c_scperr			(77<<1)
69#define mchk_c_bcperr			(78<<1)
70//; mchk codes above 255 reserved for platform specific errors
71
72
73#define mchk_c_read_nxm			(256<<1)
74#define mchk_c_sys_hrd_error		(257<<1)
75#define mchk_c_sys_ecc			(258<<1)
76
77#define page_seg_size_bits	 10
78#define page_offset_size_bits	 13
79#define page_size_bytes		 8192
80#define va_size_bits		 43
81#define pa_size_bits		 45
82
83// replaced by ev5_defs.h #define pt0  		(0x140)
84// replaced by ev5_defs.h #define pt1  		(0x141)
85// replaced by ev5_defs.h #define pt2  		(0x142)
86#define pt_entuna	(0x142)
87// replaced by ev5_defs.h #define pt3	 	(0x143)
88#define pt_impure	(0x143)
89// replaced by ev5_defs.h #define pt4  		(0x144)
90// replaced by ev5_defs.h #define pt5  		(0x145)
91// replaced by ev5_defs.h #define pt6  		(0x146)
92// replaced by ev5_defs.h #define pt7  		(0x147)
93#define pt_entif	(0x147)
94// replaced by ev5_defs.h #define pt8  		(0x148)
95#define pt_intmask	(0x148)
96// replaced by ev5_defs.h #define pt9  		(0x149)
97#define pt_entsys	(0x149)
98#define pt_ps  		(0x149)
99// replaced by ev5_defs.h #define pt10  		(0x14a)
100// replaced by ev5_defs.h #define pt11  		(0x14b)
101#define pt_trap		(0x14b)
102#define pt_entint	(0x14b)
103// replaced by ev5_defs.h #define pt12  		(0x14c)
104#define pt_entarith	(0x14c)
105// replaced by ev5_defs.h #define pt13		(0x14d)
106#define pt_sys0		(0x14d)
107// replaced by ev5_defs.h #define pt14		(0x14e)
108#define pt_sys1		(0x14e)
109// replaced by ev5_defs.h #define pt15		(0x14f)
110#define pt_sys2		(0x14f)
111// replaced by ev5_defs.h #define pt16  		(0x150)
112#define pt_whami	(0x150)
113#define pt_mces		(0x150)
114#define pt_misc 	(0x150)
115// replaced by ev5_defs.h #define pt17  		(0x151)
116#define pt_scc 		(0x151)
117#define pt_sysval	(0x151)
118// replaced by ev5_defs.h #define pt18  		(0x152)
119#define pt_prbr		(0x152)
120#define pt_usp		(0x152)
121// replaced by ev5_defs.h #define pt19  		(0x153)
122#define pt_ksp 		(0x153)
123// replaced by ev5_defs.h #define pt20  		(0x154)
124#define pt_ptbr		(0x154)
125// replaced by ev5_defs.h #define pt21  		(0x155)
126#define pt_vptbr	(0x155)
127#define pt_entmm	(0x155)
128// replaced by ev5_defs.h #define pt22  		(0x156)
129#define pt_scbb		(0x156)
130#define pt_kgp		(0x156)
131// replaced by ev5_defs.h #define pt23  		(0x157)
132#define pt_pcbb		(0x157)
133
134
135#define pt_misc_v_switch 48
136#define pt_misc_v_cm     56
137
138#define mmcsr_c_tnv		0
139#define mmcsr_c_acv		1
140#define mmcsr_c_for		2
141#define mmcsr_c_foe		3
142#define mmcsr_c_fow		4
143
144#define mm_stat_m_opcode  	(0x3F)
145#define mm_stat_m_ra  		(0x1F)
146#define evx_opc_sync	 	(0x18)
147#define EVX_OPC_SYNC	 	(0x18)
148#define evx_opc_hw_ld	 	(0x1B)
149
150#define osf_a0_bpt	  	(0x0)
151#define osf_a0_bugchk	  	(0x1)
152#define osf_a0_gentrap	  	(0x2)
153#define osf_a0_fen	  	(0x3)
154#define osf_a0_opdec	  	(0x4)
155
156#define ipl_machine_check	31
157#define ipl_powerfail		30
158#define ipl_perf_count		29
159#define ipl_clock		22
160#define ipl_interprocessor	22
161
162#endif
163