X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-sparc64%2Fpstate.h;h=49a7924a89abecb0058345c0e83746dc520cd720;hb=97bf2856c6014879bd04983a3e9dfcdac1e7fe85;hp=fa69b5f6cf09c6dc079b6c35a409457a74f6d90a;hpb=5273a3df6485dc2ad6aa7ddd441b9a21970f003b;p=linux-2.6.git diff --git a/include/asm-sparc64/pstate.h b/include/asm-sparc64/pstate.h index fa69b5f6c..49a7924a8 100644 --- a/include/asm-sparc64/pstate.h +++ b/include/asm-sparc64/pstate.h @@ -2,6 +2,8 @@ #ifndef _SPARC64_PSTATE_H #define _SPARC64_PSTATE_H +#include + /* The V9 PSTATE Register (with SpitFire extensions). * * ----------------------------------------------------------------------- @@ -9,57 +11,58 @@ * ----------------------------------------------------------------------- * 63 12 11 10 9 8 7 6 5 4 3 2 1 0 */ -#define PSTATE_IG 0x0000000000000800 /* Interrupt Globals. */ -#define PSTATE_MG 0x0000000000000400 /* MMU Globals. */ -#define PSTATE_CLE 0x0000000000000200 /* Current Little Endian. */ -#define PSTATE_TLE 0x0000000000000100 /* Trap Little Endian. */ -#define PSTATE_MM 0x00000000000000c0 /* Memory Model. */ -#define PSTATE_TSO 0x0000000000000000 /* MM: Total Store Order */ -#define PSTATE_PSO 0x0000000000000040 /* MM: Partial Store Order */ -#define PSTATE_RMO 0x0000000000000080 /* MM: Relaxed Memory Order */ -#define PSTATE_RED 0x0000000000000020 /* Reset Error Debug State. */ -#define PSTATE_PEF 0x0000000000000010 /* Floating Point Enable. */ -#define PSTATE_AM 0x0000000000000008 /* Address Mask. */ -#define PSTATE_PRIV 0x0000000000000004 /* Privilege. */ -#define PSTATE_IE 0x0000000000000002 /* Interrupt Enable. */ -#define PSTATE_AG 0x0000000000000001 /* Alternate Globals. */ +#define PSTATE_IG _AC(0x0000000000000800,UL) /* Interrupt Globals. */ +#define PSTATE_MG _AC(0x0000000000000400,UL) /* MMU Globals. */ +#define PSTATE_CLE _AC(0x0000000000000200,UL) /* Current Little Endian.*/ +#define PSTATE_TLE _AC(0x0000000000000100,UL) /* Trap Little Endian. */ +#define PSTATE_MM _AC(0x00000000000000c0,UL) /* Memory Model. */ +#define PSTATE_TSO _AC(0x0000000000000000,UL) /* MM: TotalStoreOrder */ +#define PSTATE_PSO _AC(0x0000000000000040,UL) /* MM: PartialStoreOrder */ +#define PSTATE_RMO _AC(0x0000000000000080,UL) /* MM: RelaxedMemoryOrder*/ +#define PSTATE_RED _AC(0x0000000000000020,UL) /* Reset Error Debug. */ +#define PSTATE_PEF _AC(0x0000000000000010,UL) /* Floating Point Enable.*/ +#define PSTATE_AM _AC(0x0000000000000008,UL) /* Address Mask. */ +#define PSTATE_PRIV _AC(0x0000000000000004,UL) /* Privilege. */ +#define PSTATE_IE _AC(0x0000000000000002,UL) /* Interrupt Enable. */ +#define PSTATE_AG _AC(0x0000000000000001,UL) /* Alternate Globals. */ /* The V9 TSTATE Register (with SpitFire and Linux extensions). * - * --------------------------------------------------------------- - * | Resv | CCR | ASI | %pil | PSTATE | Resv | CWP | - * --------------------------------------------------------------- - * 63 40 39 32 31 24 23 20 19 8 7 5 4 0 + * --------------------------------------------------------------------- + * | Resv | GL | CCR | ASI | %pil | PSTATE | Resv | CWP | + * --------------------------------------------------------------------- + * 63 43 42 40 39 32 31 24 23 20 19 8 7 5 4 0 */ -#define TSTATE_CCR 0x000000ff00000000 /* Condition Codes. */ -#define TSTATE_XCC 0x000000f000000000 /* Condition Codes. */ -#define TSTATE_XNEG 0x0000008000000000 /* %xcc Negative. */ -#define TSTATE_XZERO 0x0000004000000000 /* %xcc Zero. */ -#define TSTATE_XOVFL 0x0000002000000000 /* %xcc Overflow. */ -#define TSTATE_XCARRY 0x0000001000000000 /* %xcc Carry. */ -#define TSTATE_ICC 0x0000000f00000000 /* Condition Codes. */ -#define TSTATE_INEG 0x0000000800000000 /* %icc Negative. */ -#define TSTATE_IZERO 0x0000000400000000 /* %icc Zero. */ -#define TSTATE_IOVFL 0x0000000200000000 /* %icc Overflow. */ -#define TSTATE_ICARRY 0x0000000100000000 /* %icc Carry. */ -#define TSTATE_ASI 0x00000000ff000000 /* Address Space Identifier. */ -#define TSTATE_PIL 0x0000000000f00000 /* %pil (Linux traps set this) */ -#define TSTATE_PSTATE 0x00000000000fff00 /* PSTATE. */ -#define TSTATE_IG 0x0000000000080000 /* Interrupt Globals. */ -#define TSTATE_MG 0x0000000000040000 /* MMU Globals. */ -#define TSTATE_CLE 0x0000000000020000 /* Current Little Endian. */ -#define TSTATE_TLE 0x0000000000010000 /* Trap Little Endian. */ -#define TSTATE_MM 0x000000000000c000 /* Memory Model. */ -#define TSTATE_TSO 0x0000000000000000 /* MM: Total Store Order */ -#define TSTATE_PSO 0x0000000000004000 /* MM: Partial Store Order */ -#define TSTATE_RMO 0x0000000000008000 /* MM: Relaxed Memory Order */ -#define TSTATE_RED 0x0000000000002000 /* Reset Error Debug State. */ -#define TSTATE_PEF 0x0000000000001000 /* Floating Point Enable. */ -#define TSTATE_AM 0x0000000000000800 /* Address Mask. */ -#define TSTATE_PRIV 0x0000000000000400 /* Privilege. */ -#define TSTATE_IE 0x0000000000000200 /* Interrupt Enable. */ -#define TSTATE_AG 0x0000000000000100 /* Alternate Globals. */ -#define TSTATE_CWP 0x000000000000001f /* Current Window Pointer. */ +#define TSTATE_GL _AC(0x0000070000000000,UL) /* Global reg level */ +#define TSTATE_CCR _AC(0x000000ff00000000,UL) /* Condition Codes. */ +#define TSTATE_XCC _AC(0x000000f000000000,UL) /* Condition Codes. */ +#define TSTATE_XNEG _AC(0x0000008000000000,UL) /* %xcc Negative. */ +#define TSTATE_XZERO _AC(0x0000004000000000,UL) /* %xcc Zero. */ +#define TSTATE_XOVFL _AC(0x0000002000000000,UL) /* %xcc Overflow. */ +#define TSTATE_XCARRY _AC(0x0000001000000000,UL) /* %xcc Carry. */ +#define TSTATE_ICC _AC(0x0000000f00000000,UL) /* Condition Codes. */ +#define TSTATE_INEG _AC(0x0000000800000000,UL) /* %icc Negative. */ +#define TSTATE_IZERO _AC(0x0000000400000000,UL) /* %icc Zero. */ +#define TSTATE_IOVFL _AC(0x0000000200000000,UL) /* %icc Overflow. */ +#define TSTATE_ICARRY _AC(0x0000000100000000,UL) /* %icc Carry. */ +#define TSTATE_ASI _AC(0x00000000ff000000,UL) /* AddrSpace ID. */ +#define TSTATE_PIL _AC(0x0000000000f00000,UL) /* %pil (Linux traps)*/ +#define TSTATE_PSTATE _AC(0x00000000000fff00,UL) /* PSTATE. */ +#define TSTATE_IG _AC(0x0000000000080000,UL) /* Interrupt Globals.*/ +#define TSTATE_MG _AC(0x0000000000040000,UL) /* MMU Globals. */ +#define TSTATE_CLE _AC(0x0000000000020000,UL) /* CurrLittleEndian. */ +#define TSTATE_TLE _AC(0x0000000000010000,UL) /* TrapLittleEndian. */ +#define TSTATE_MM _AC(0x000000000000c000,UL) /* Memory Model. */ +#define TSTATE_TSO _AC(0x0000000000000000,UL) /* MM: TSO */ +#define TSTATE_PSO _AC(0x0000000000004000,UL) /* MM: PSO */ +#define TSTATE_RMO _AC(0x0000000000008000,UL) /* MM: RMO */ +#define TSTATE_RED _AC(0x0000000000002000,UL) /* Reset Error Debug.*/ +#define TSTATE_PEF _AC(0x0000000000001000,UL) /* FPU Enable. */ +#define TSTATE_AM _AC(0x0000000000000800,UL) /* Address Mask. */ +#define TSTATE_PRIV _AC(0x0000000000000400,UL) /* Privilege. */ +#define TSTATE_IE _AC(0x0000000000000200,UL) /* Interrupt Enable. */ +#define TSTATE_AG _AC(0x0000000000000100,UL) /* Alternate Globals.*/ +#define TSTATE_CWP _AC(0x000000000000001f,UL) /* Curr Win-Pointer. */ /* Floating-Point Registers State Register. * @@ -68,9 +71,9 @@ * -------------------------------- * 63 3 2 1 0 */ -#define FPRS_FEF 0x0000000000000004 /* Enable Floating Point. */ -#define FPRS_DU 0x0000000000000002 /* Dirty Upper. */ -#define FPRS_DL 0x0000000000000001 /* Dirty Lower. */ +#define FPRS_FEF _AC(0x0000000000000004,UL) /* FPU Enable. */ +#define FPRS_DU _AC(0x0000000000000002,UL) /* Dirty Upper. */ +#define FPRS_DL _AC(0x0000000000000001,UL) /* Dirty Lower. */ /* Version Register. * @@ -79,10 +82,10 @@ * ------------------------------------------------------ * 63 48 47 32 31 24 23 16 15 8 7 5 4 0 */ -#define VERS_MANUF 0xffff000000000000 /* Manufacturer. */ -#define VERS_IMPL 0x0000ffff00000000 /* Implementation. */ -#define VERS_MASK 0x00000000ff000000 /* Mask Set Revision. */ -#define VERS_MAXTL 0x000000000000ff00 /* Maximum Trap Level. */ -#define VERS_MAXWIN 0x000000000000001f /* Maximum Reg Window Index. */ +#define VERS_MANUF _AC(0xffff000000000000,UL) /* Manufacturer. */ +#define VERS_IMPL _AC(0x0000ffff00000000,UL) /* Implementation. */ +#define VERS_MASK _AC(0x00000000ff000000,UL) /* Mask Set Revision.*/ +#define VERS_MAXTL _AC(0x000000000000ff00,UL) /* Max Trap Level. */ +#define VERS_MAXWIN _AC(0x000000000000001f,UL) /* Max RegWindow Idx.*/ #endif /* !(_SPARC64_PSTATE_H) */