Revision 25ba3a68 target-ppc/cpu.h
b/target-ppc/cpu.h | ||
---|---|---|
354 | 354 |
#define MSR_AP 23 /* Access privilege state on 602 hflags */ |
355 | 355 |
#define MSR_SA 22 /* Supervisor access mode on 602 hflags */ |
356 | 356 |
#define MSR_KEY 19 /* key bit on 603e */ |
357 |
#define MSR_POW 18 /* Power management x */ |
|
358 |
#define MSR_WE 18 /* Wait state enable on embedded PowerPC x */ |
|
357 |
#define MSR_POW 18 /* Power management */ |
|
359 | 358 |
#define MSR_TGPR 17 /* TGPR usage on 602/603 x */ |
360 | 359 |
#define MSR_CE 17 /* Critical interrupt enable on embedded PowerPC x */ |
361 | 360 |
#define MSR_ILE 16 /* Interrupt little-endian mode */ |
... | ... | |
371 | 370 |
#define MSR_DE 9 /* Debug interrupts enable on embedded PowerPC x */ |
372 | 371 |
#define MSR_FE1 8 /* Floating point exception mode 1 hflags */ |
373 | 372 |
#define MSR_AL 7 /* AL bit on POWER */ |
374 |
#define MSR_IP 6 /* Interrupt prefix */
|
|
373 |
#define MSR_EP 3 /* Exception prefix on 601 */
|
|
375 | 374 |
#define MSR_IR 5 /* Instruction relocate */ |
376 | 375 |
#define MSR_DR 4 /* Data relocate */ |
377 |
#define MSR_PE 3 /* Protection enable on 403 x */ |
|
378 |
#define MSR_EP 3 /* Exception prefix on 601 x */ |
|
376 |
#define MSR_PE 3 /* Protection enable on 403 */ |
|
379 | 377 |
#define MSR_PX 2 /* Protection exclusive on 403 x */ |
380 | 378 |
#define MSR_PMM 2 /* Performance monitor mark on POWER x */ |
381 | 379 |
#define MSR_RI 1 /* Recoverable interrupt 1 */ |
... | ... | |
392 | 390 |
#define msr_sa env->msr[MSR_SA] |
393 | 391 |
#define msr_key env->msr[MSR_KEY] |
394 | 392 |
#define msr_pow env->msr[MSR_POW] |
395 |
#define msr_we env->msr[MSR_WE] |
|
396 | 393 |
#define msr_tgpr env->msr[MSR_TGPR] |
397 | 394 |
#define msr_ce env->msr[MSR_CE] |
398 | 395 |
#define msr_ile env->msr[MSR_ILE] |
... | ... | |
408 | 405 |
#define msr_de env->msr[MSR_DE] |
409 | 406 |
#define msr_fe1 env->msr[MSR_FE1] |
410 | 407 |
#define msr_al env->msr[MSR_AL] |
411 |
#define msr_ip env->msr[MSR_IP] |
|
412 | 408 |
#define msr_ir env->msr[MSR_IR] |
413 | 409 |
#define msr_dr env->msr[MSR_DR] |
414 | 410 |
#define msr_pe env->msr[MSR_PE] |
... | ... | |
419 | 415 |
#define msr_le env->msr[MSR_LE] |
420 | 416 |
|
421 | 417 |
enum { |
422 |
/* Beware that MSR bits are given using IBM standard (ie MSB is 0 !) */ |
|
423 | 418 |
POWERPC_FLAG_NONE = 0x00000000, |
424 | 419 |
/* Flag for MSR bit 25 signification (VRE/SPE) */ |
425 | 420 |
POWERPC_FLAG_SPE = 0x00000001, |
426 | 421 |
POWERPC_FLAG_VRE = 0x00000002, |
427 |
/* Flag for MSR bit 18 may not be needed... */ |
|
428 |
POWERPC_FLAG_POW = 0x00000004, |
|
429 |
POWERPC_FLAG_WE = 0x00000008, |
|
430 | 422 |
/* Flag for MSR bit 17 signification (TGPR/CE) */ |
431 |
POWERPC_FLAG_TGPR = 0x00000010,
|
|
432 |
POWERPC_FLAG_CE = 0x00000020,
|
|
423 |
POWERPC_FLAG_TGPR = 0x00000004,
|
|
424 |
POWERPC_FLAG_CE = 0x00000008,
|
|
433 | 425 |
/* Flag for MSR bit 10 signification (SE/DWE/UBLE) */ |
434 |
POWERPC_FLAG_SE = 0x00000040,
|
|
435 |
POWERPC_FLAG_DWE = 0x00000080,
|
|
436 |
POWERPC_FLAG_UBLE = 0x00000100,
|
|
426 |
POWERPC_FLAG_SE = 0x00000010,
|
|
427 |
POWERPC_FLAG_DWE = 0x00000020,
|
|
428 |
POWERPC_FLAG_UBLE = 0x00000040,
|
|
437 | 429 |
/* Flag for MSR bit 9 signification (BE/DE) */ |
438 |
POWERPC_FLAG_BE = 0x00000200, |
|
439 |
POWERPC_FLAG_DE = 0x00000400, |
|
440 |
/* Flag for MSR bit 3 signification (PE/EP) */ |
|
441 |
POWERPC_FLAG_PE = 0x00000800, |
|
442 |
POWERPC_FLAG_EP = 0x00001000, |
|
430 |
POWERPC_FLAG_BE = 0x00000080, |
|
431 |
POWERPC_FLAG_DE = 0x00000100, |
|
443 | 432 |
/* Flag for MSR but 2 signification (PX/PMM) */ |
444 |
POWERPC_FLAG_PX = 0x00002000,
|
|
445 |
POWERPC_FLAG_PMM = 0x00004000,
|
|
433 |
POWERPC_FLAG_PX = 0x00000200,
|
|
434 |
POWERPC_FLAG_PMM = 0x00000400,
|
|
446 | 435 |
}; |
447 | 436 |
|
448 | 437 |
/*****************************************************************************/ |
Also available in: Unified diff