Added 32-bit MSR to powerpc definitions
[bitfield] / conf / powerpc.conf
index c3268a100c1f33b3de44df80a04c7a4abb100ede..8e124cc869c7ebe0f414140ad2c0093930e86241 100644 (file)
@@ -2,17 +2,29 @@
 ;
 ; Contributors:
 ;  Michael Neuling <mikey@neuling.org>
+;  Jeremy Kerr <jk@ozlabs.org>
+;
+; Taken from:
+;    PowerPC® Microprocessor Family:
+;    The Programming Environments Manual for 32 and 64-bit Microprocessors
+;    Version 2.3
+;    http://www.power.org/resources/downloads/PowerISA_203.Public.pdf
+;
 
-[MSR]
+; Section 2.3.1 Machine State Register (MSR)
+[MSR_64]
 name: PowerPC Machine State Register
 field:  0 64-bit mode (SF)
 value:         0 32-bit mode
 value:         1 64-bit mode
+field:  2 Exception 64-bit mode
 field:  3 Hypervisor State (HV)
+field: 45 Power Management Enable (POW)
+field: 47 Little-Endian Exception Mode (ILE)
 field: 48 External Interrupt Enable (EE)
 field: 49 Problem State (PR)
-value:  0 privileged state
-value:  1 problem state
+value:         0 privileged state
+value:         1 problem state
 field: 50 Floating-Point Available (FP)
 field: 51 Machine Check Interrupt Enable (ME)
 field: 52,55 Floating-Point Exception Mode (FE)
@@ -30,12 +42,14 @@ field: 63 Little-Endian Mode (LE)
 value:         0 big-endian
 value:         1 little-endian
 
+; Section 8, Instruction slbmte
 [SLB_E]
 name: PowerPC SLB ESID Entry
 field: 0:35  Effective segment ID (ESID)
 field: 36    Valid (V)
 field: 52:63 Index
 
+; Section 8, Instruction slbmte
 [SLB_V]
 name: PowerPC SLB VSID Entry
 field: 0:1  Segment size selector (B)
@@ -54,3 +68,32 @@ field: 56   Class (C)
 value:         0 big-endian
 value:         1 little-endian
 
+
+; The PowerPC Architecture:
+; A Specification For A New Family Of RISC Processors
+; Book III PowerPC Operating Environment Architecture
+
+; Section 2.2.3 Machine State Register (MSR)
+[MSR_32]
+name: PowerPC Machine State Register
+field: 13 Power Management Enable (POW)
+field: 15 Little-Endian Exception Mode (ILE)
+field: 16 External Interrupt Enable (EE)
+field: 17 Problem State (PR)
+value:         0 privileged state
+value:         1 problem state
+field: 18 Floating-Point Available (FP)
+field: 19 Machine Check Interrupt Enable (ME)
+field: 20,23 Floating-Point Exception Mode (FE)
+value:          0 ignore exceptions
+value:          1 imprecise nonrecoverable
+value:          2 imprecise recoverable
+value:          3 precise
+field: 21 Single-Step Trace Enable (SE)
+field: 22 Branch Trace Enable (BE)
+field: 26 Instruction Relocate (IR)
+field: 27 Data Relocate (DR)
+field: 30 Recoverable Interrupt (RI)
+field: 31 Little-Endian Mode (LE)
+value:         0 big-endian
+value:         1 little-endian