diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2006-02-06 00:29:28 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-03-20 04:11:48 -0500 |
commit | 936f482af1743141d637483ec10eb881537c26dc (patch) | |
tree | 913da89a4d9f4038c510c9ecf2f5957b0f6d167f /include/asm-sparc64 | |
parent | 6e02493a7f33ac89e698b980a657d77ab2749eaf (diff) |
[SPARC64]: Add initial code to twiddle %gl on trap entry/exit.
Instead of setting/clearing PSTATE_AG we have to change
the %gl register value on sun4v.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/asm-sparc64')
-rw-r--r-- | include/asm-sparc64/cpudata.h | 5 | ||||
-rw-r--r-- | include/asm-sparc64/head.h | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/include/asm-sparc64/cpudata.h b/include/asm-sparc64/cpudata.h index 4f28a85c1043..8666440c89af 100644 --- a/include/asm-sparc64/cpudata.h +++ b/include/asm-sparc64/cpudata.h | |||
@@ -73,6 +73,11 @@ struct cpuid_patch_entry { | |||
73 | extern struct cpuid_patch_entry __cpuid_patch, __cpuid_patch_end; | 73 | extern struct cpuid_patch_entry __cpuid_patch, __cpuid_patch_end; |
74 | #endif | 74 | #endif |
75 | 75 | ||
76 | struct gl_1insn_patch_entry { | ||
77 | unsigned int addr; | ||
78 | unsigned int insn; | ||
79 | }; | ||
80 | extern struct gl_1insn_patch_entry __gl_1insn_patch, __gl_1insn_patch_end; | ||
76 | #endif /* !(__ASSEMBLY__) */ | 81 | #endif /* !(__ASSEMBLY__) */ |
77 | 82 | ||
78 | #define TRAP_PER_CPU_THREAD 0x00 | 83 | #define TRAP_PER_CPU_THREAD 0x00 |
diff --git a/include/asm-sparc64/head.h b/include/asm-sparc64/head.h index 731c842f3d11..ff76c0981b63 100644 --- a/include/asm-sparc64/head.h +++ b/include/asm-sparc64/head.h | |||
@@ -4,6 +4,10 @@ | |||
4 | 4 | ||
5 | #include <asm/pstate.h> | 5 | #include <asm/pstate.h> |
6 | 6 | ||
7 | /* wrpr %g0, val, %gl */ | ||
8 | #define SET_GL(val) \ | ||
9 | .word 0xa1902000 | val | ||
10 | |||
7 | #define KERNBASE 0x400000 | 11 | #define KERNBASE 0x400000 |
8 | 12 | ||
9 | #define PTREGS_OFF (STACK_BIAS + STACKFRAME_SZ) | 13 | #define PTREGS_OFF (STACK_BIAS + STACKFRAME_SZ) |