Commit 85c4adf65f20437c428a1ebf2d3293dd56a53596
1 parent
b69fedff
PowerPC merge
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@860 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
50 additions
and
3 deletions
target-ppc/cpu.h
... | ... | @@ -74,6 +74,10 @@ enum { |
74 | 74 | |
75 | 75 | #define PPC_COMMON (PPC_INTEGER | PPC_FLOAT | PPC_FLOW | PPC_MEM | \ |
76 | 76 | PPC_RES | PPC_CACHE | PPC_MISC | PPC_SEGMENT) |
77 | +/* PPC 604 */ | |
78 | +#define PPC_604 (PPC_INTEGER | PPC_FLOAT | PPC_FLOW | PPC_MEM | \ | |
79 | + PPC_RES | PPC_CACHE | PPC_MISC | PPC_EXTERN | PPC_SEGMENT \ | |
80 | + PPC_MEM_OPT) | |
77 | 81 | /* PPC 740/745/750/755 (aka G3) has external access instructions */ |
78 | 82 | #define PPC_750 (PPC_INTEGER | PPC_FLOAT | PPC_FLOW | PPC_MEM | \ |
79 | 83 | PPC_RES | PPC_CACHE | PPC_MISC | PPC_EXTERN | PPC_SEGMENT) |
... | ... | @@ -202,6 +206,8 @@ void _store_xer (CPUPPCState *env, uint32_t value); |
202 | 206 | uint32_t _load_msr (CPUPPCState *env); |
203 | 207 | void _store_msr (CPUPPCState *env, uint32_t value); |
204 | 208 | |
209 | +int cpu_ppc_register (CPUPPCState *env, uint32_t pvr); | |
210 | + | |
205 | 211 | /* Time-base and decrementer management */ |
206 | 212 | #ifndef NO_CPU_IO_DEFS |
207 | 213 | uint32_t cpu_ppc_load_tbl (CPUPPCState *env); |
... | ... | @@ -235,7 +241,10 @@ void cpu_ppc_store_decr (CPUPPCState *env, uint32_t value); |
235 | 241 | #define xer_ca env->xer[1] |
236 | 242 | #define xer_bc env->xer[0] |
237 | 243 | |
244 | +#define MQ SPR_ENCODE(0) | |
238 | 245 | #define XER SPR_ENCODE(1) |
246 | +#define RTCUR SPR_ENCODE(4) | |
247 | +#define RTCLR SPR_ENCODE(5) | |
239 | 248 | #define LR SPR_ENCODE(8) |
240 | 249 | #define CTR SPR_ENCODE(9) |
241 | 250 | /* VEA mode SPR */ |
... | ... | @@ -244,6 +253,8 @@ void cpu_ppc_store_decr (CPUPPCState *env, uint32_t value); |
244 | 253 | /* supervisor mode SPR */ |
245 | 254 | #define DSISR SPR_ENCODE(18) |
246 | 255 | #define DAR SPR_ENCODE(19) |
256 | +#define RTCUW SPR_ENCODE(20) | |
257 | +#define RTCLW SPR_ENCODE(21) | |
247 | 258 | #define DECR SPR_ENCODE(22) |
248 | 259 | #define SDR1 SPR_ENCODE(25) |
249 | 260 | #define SRR0 SPR_ENCODE(26) |
... | ... | @@ -293,14 +304,50 @@ void cpu_ppc_store_decr (CPUPPCState *env, uint32_t value); |
293 | 304 | #define DBAT6L SPR_ENCODE(573) |
294 | 305 | #define DBAT7U SPR_ENCODE(574) |
295 | 306 | #define DBAT7L SPR_ENCODE(575) |
307 | +#define UMMCR0 SPR_ENCODE(936) | |
308 | +#define UPMC1 SPR_ENCODE(937) | |
309 | +#define UPMC2 SPR_ENCODE(938) | |
310 | +#define USIA SPR_ENCODE(939) | |
311 | +#define UMMCR1 SPR_ENCODE(940) | |
312 | +#define UPMC3 SPR_ENCODE(941) | |
313 | +#define UPMC4 SPR_ENCODE(942) | |
314 | +#define MMCR0 SPR_ENCODE(952) | |
315 | +#define PMC1 SPR_ENCODE(953) | |
316 | +#define PMC2 SPR_ENCODE(954) | |
317 | +#define SIA SPR_ENCODE(955) | |
318 | +#define MMCR1 SPR_ENCODE(956) | |
319 | +#define PMC3 SPR_ENCODE(957) | |
320 | +#define PMC4 SPR_ENCODE(958) | |
321 | +#define SDA SPR_ENCODE(959) | |
322 | +#define DMISS SPR_ENCODE(976) | |
323 | +#define DCMP SPR_ENCODE(977) | |
324 | +#define DHASH1 SPR_ENCODE(978) | |
325 | +#define DHASH2 SPR_ENCODE(979) | |
326 | +#define IMISS SPR_ENCODE(980) | |
327 | +#define ICMP SPR_ENCODE(981) | |
328 | +#define RPA SPR_ENCODE(982) | |
329 | +#define TCR SPR_ENCODE(984) | |
330 | +#define IBR SPR_ENCODE(986) | |
331 | +#define ESASRR SPR_ENCODE(987) | |
332 | +#define SEBR SPR_ENCODE(990) | |
333 | +#define SER SPR_ENCODE(991) | |
334 | +#define HID0 SPR_ENCODE(1008) | |
335 | +#define HID1 SPR_ENCODE(1009) | |
336 | +#define IABR SPR_ENCODE(1010) | |
337 | +#define HID2 SPR_ENCODE(1011) | |
296 | 338 | #define DABR SPR_ENCODE(1013) |
339 | +#define L2PM SPR_ENCODE(1016) | |
340 | +#define L2CR SPR_ENCODE(1017) | |
341 | +#define ICTC SPR_ENCODE(1019) | |
342 | +#define THRM1 SPR_ENCODE(1020) | |
343 | +#define THRM2 SPR_ENCODE(1021) | |
344 | +#define THRM3 SPR_ENCODE(1022) | |
345 | +#define SP SPR_ENCODE(1021) | |
346 | +#define LP SPR_ENCODE(1022) | |
297 | 347 | #define DABR_MASK 0xFFFFFFF8 |
298 | 348 | #define FPECR SPR_ENCODE(1022) |
299 | 349 | #define PIR SPR_ENCODE(1023) |
300 | 350 | |
301 | -#define TARGET_PAGE_BITS 12 | |
302 | -#include "cpu-all.h" | |
303 | - | |
304 | 351 | /* Memory access type : |
305 | 352 | * may be needed for precise access rights control and precise exceptions. |
306 | 353 | */ | ... | ... |