Commit f8cc85341531b4c9cacd2fc199f984b09a073258
1 parent
75fc9c0c
Document which IPR are used by 21264
Signed-off-by: Tristan Gingold <gingold@adacore.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6927 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
65 additions
and
31 deletions
target-alpha/cpu.h
@@ -144,51 +144,85 @@ enum { | @@ -144,51 +144,85 @@ enum { | ||
144 | /* XXX: TOFIX: most of those registers are implementation dependant */ | 144 | /* XXX: TOFIX: most of those registers are implementation dependant */ |
145 | enum { | 145 | enum { |
146 | /* Ebox IPRs */ | 146 | /* Ebox IPRs */ |
147 | - IPR_CC = 0xC0, | ||
148 | - IPR_CC_CTL = 0xC1, | ||
149 | - IPR_VA = 0xC2, | ||
150 | - IPR_VA_CTL = 0xC4, | ||
151 | - IPR_VA_FORM = 0xC3, | 147 | + IPR_CC = 0xC0, /* 21264 */ |
148 | + IPR_CC_CTL = 0xC1, /* 21264 */ | ||
149 | +#define IPR_CC_CTL_ENA_SHIFT 32 | ||
150 | +#define IPR_CC_CTL_COUNTER_MASK 0xfffffff0UL | ||
151 | + IPR_VA = 0xC2, /* 21264 */ | ||
152 | + IPR_VA_CTL = 0xC4, /* 21264 */ | ||
153 | +#define IPR_VA_CTL_VA_48_SHIFT 1 | ||
154 | +#define IPR_VA_CTL_VPTB_SHIFT 30 | ||
155 | + IPR_VA_FORM = 0xC3, /* 21264 */ | ||
152 | /* Ibox IPRs */ | 156 | /* Ibox IPRs */ |
153 | - IPR_ITB_TAG = 0x00, | ||
154 | - IPR_ITB_PTE = 0x01, | ||
155 | - IPT_ITB_IAP = 0x02, | ||
156 | - IPT_ITB_IA = 0x03, | ||
157 | - IPT_ITB_IS = 0x04, | 157 | + IPR_ITB_TAG = 0x00, /* 21264 */ |
158 | + IPR_ITB_PTE = 0x01, /* 21264 */ | ||
159 | + IPR_ITB_IAP = 0x02, | ||
160 | + IPR_ITB_IA = 0x03, /* 21264 */ | ||
161 | + IPR_ITB_IS = 0x04, | ||
158 | IPR_PMPC = 0x05, | 162 | IPR_PMPC = 0x05, |
159 | - IPR_EXC_ADDR = 0x06, | ||
160 | - IPR_IVA_FORM = 0x07, | ||
161 | - IPR_CM = 0x09, | ||
162 | - IPR_IER = 0x0A, | ||
163 | - IPR_SIRR = 0x0C, | ||
164 | - IPR_ISUM = 0x0D, | ||
165 | - IPR_HW_INT_CLR = 0x0E, | 163 | + IPR_EXC_ADDR = 0x06, /* 21264 */ |
164 | + IPR_IVA_FORM = 0x07, /* 21264 */ | ||
165 | + IPR_CM = 0x09, /* 21264 */ | ||
166 | +#define IPR_CM_SHIFT 3 | ||
167 | +#define IPR_CM_MASK (3ULL << IPR_CM_SHIFT) /* 21264 */ | ||
168 | + IPR_IER = 0x0A, /* 21264 */ | ||
169 | +#define IPR_IER_MASK 0x0000007fffffe000ULL | ||
170 | + IPR_IER_CM = 0x0B, /* 21264: = CM | IER */ | ||
171 | + IPR_SIRR = 0x0C, /* 21264 */ | ||
172 | +#define IPR_SIRR_SHIFT 14 | ||
173 | +#define IPR_SIRR_MASK 0x7fff | ||
174 | + IPR_ISUM = 0x0D, /* 21264 */ | ||
175 | + IPR_HW_INT_CLR = 0x0E, /* 21264 */ | ||
166 | IPR_EXC_SUM = 0x0F, | 176 | IPR_EXC_SUM = 0x0F, |
167 | IPR_PAL_BASE = 0x10, | 177 | IPR_PAL_BASE = 0x10, |
168 | IPR_I_CTL = 0x11, | 178 | IPR_I_CTL = 0x11, |
169 | - IPR_I_STAT = 0x16, | ||
170 | - IPR_IC_FLUSH = 0x13, | ||
171 | - IPR_IC_FLUSH_ASM = 0x12, | 179 | +#define IPR_I_CTL_CHIP_ID_SHIFT 24 /* 21264 */ |
180 | +#define IPR_I_CTL_BIST_FAIL (1 << 23) /* 21264 */ | ||
181 | +#define IPR_I_CTL_IC_EN_SHIFT 2 /* 21264 */ | ||
182 | +#define IPR_I_CTL_SDE1_SHIFT 7 /* 21264 */ | ||
183 | +#define IPR_I_CTL_HWE_SHIFT 12 /* 21264 */ | ||
184 | +#define IPR_I_CTL_VA_48_SHIFT 15 /* 21264 */ | ||
185 | +#define IPR_I_CTL_SPE_SHIFT 3 /* 21264 */ | ||
186 | +#define IPR_I_CTL_CALL_PAL_R23_SHIFT 20 /* 21264 */ | ||
187 | + IPR_I_STAT = 0x16, /* 21264 */ | ||
188 | + IPR_IC_FLUSH = 0x13, /* 21264 */ | ||
189 | + IPR_IC_FLUSH_ASM = 0x12, /* 21264 */ | ||
172 | IPR_CLR_MAP = 0x15, | 190 | IPR_CLR_MAP = 0x15, |
173 | IPR_SLEEP = 0x17, | 191 | IPR_SLEEP = 0x17, |
174 | IPR_PCTX = 0x40, | 192 | IPR_PCTX = 0x40, |
175 | - IPR_PCTR_CTL = 0x14, | 193 | + IPR_PCTX_ASN = 0x01, /* field */ |
194 | +#define IPR_PCTX_ASN_SHIFT 39 | ||
195 | + IPR_PCTX_ASTER = 0x02, /* field */ | ||
196 | +#define IPR_PCTX_ASTER_SHIFT 5 | ||
197 | + IPR_PCTX_ASTRR = 0x04, /* field */ | ||
198 | +#define IPR_PCTX_ASTRR_SHIFT 9 | ||
199 | + IPR_PCTX_PPCE = 0x08, /* field */ | ||
200 | +#define IPR_PCTX_PPCE_SHIFT 1 | ||
201 | + IPR_PCTX_FPE = 0x10, /* field */ | ||
202 | +#define IPR_PCTX_FPE_SHIFT 2 | ||
203 | + IPR_PCTX_ALL = 0x5f, /* all fields */ | ||
204 | + IPR_PCTR_CTL = 0x14, /* 21264 */ | ||
176 | /* Mbox IPRs */ | 205 | /* Mbox IPRs */ |
177 | - IPR_DTB_TAG0 = 0x20, | ||
178 | - IPR_DTB_TAG1 = 0xA0, | ||
179 | - IPR_DTB_PTE0 = 0x21, | ||
180 | - IPR_DTB_PTE1 = 0xA1, | 206 | + IPR_DTB_TAG0 = 0x20, /* 21264 */ |
207 | + IPR_DTB_TAG1 = 0xA0, /* 21264 */ | ||
208 | + IPR_DTB_PTE0 = 0x21, /* 21264 */ | ||
209 | + IPR_DTB_PTE1 = 0xA1, /* 21264 */ | ||
181 | IPR_DTB_ALTMODE = 0xA6, | 210 | IPR_DTB_ALTMODE = 0xA6, |
211 | + IPR_DTB_ALTMODE0 = 0x26, /* 21264 */ | ||
212 | +#define IPR_DTB_ALTMODE_MASK 3 | ||
182 | IPR_DTB_IAP = 0xA2, | 213 | IPR_DTB_IAP = 0xA2, |
183 | - IPR_DTB_IA = 0xA3, | 214 | + IPR_DTB_IA = 0xA3, /* 21264 */ |
184 | IPR_DTB_IS0 = 0x24, | 215 | IPR_DTB_IS0 = 0x24, |
185 | IPR_DTB_IS1 = 0xA4, | 216 | IPR_DTB_IS1 = 0xA4, |
186 | - IPR_DTB_ASN0 = 0x25, | ||
187 | - IPR_DTB_ASN1 = 0xA5, | ||
188 | - IPR_MM_STAT = 0x27, | ||
189 | - IPR_M_CTL = 0x28, | 217 | + IPR_DTB_ASN0 = 0x25, /* 21264 */ |
218 | + IPR_DTB_ASN1 = 0xA5, /* 21264 */ | ||
219 | +#define IPR_DTB_ASN_SHIFT 56 | ||
220 | + IPR_MM_STAT = 0x27, /* 21264 */ | ||
221 | + IPR_M_CTL = 0x28, /* 21264 */ | ||
222 | +#define IPR_M_CTL_SPE_SHIFT 1 | ||
223 | +#define IPR_M_CTL_SPE_MASK 7 | ||
190 | IPR_DC_CTL = 0x29, | 224 | IPR_DC_CTL = 0x29, |
191 | - IPR_DC_STAT = 0x2A, | 225 | + IPR_DC_STAT = 0x2A, /* 21264 */ |
192 | /* Cbox IPRs */ | 226 | /* Cbox IPRs */ |
193 | IPR_C_DATA = 0x2B, | 227 | IPR_C_DATA = 0x2B, |
194 | IPR_C_SHIFT = 0x2C, | 228 | IPR_C_SHIFT = 0x2C, |