diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2005-05-31 07:49:19 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-10-29 14:31:17 -0400 |
commit | e50c0a8fa60da9ac0e0a70caa8a3a803815c1f2f (patch) | |
tree | 1928e8b0a4b7fb615e5a9f65dc934ba2e74cb9cd /arch/mips/kernel/asm-offsets.c | |
parent | 10f650db1bcc193ea07d4f8c2f07315da38ea0c4 (diff) |
Support the MIPS32 / MIPS64 DSP ASE.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/asm-offsets.c')
-rw-r--r-- | arch/mips/kernel/asm-offsets.c | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/arch/mips/kernel/asm-offsets.c b/arch/mips/kernel/asm-offsets.c index af69cdbdd50e..ca6b03c773be 100644 --- a/arch/mips/kernel/asm-offsets.c +++ b/arch/mips/kernel/asm-offsets.c | |||
@@ -95,7 +95,7 @@ void output_thread_info_defines(void) | |||
95 | offset("#define TI_PRE_COUNT ", struct thread_info, preempt_count); | 95 | offset("#define TI_PRE_COUNT ", struct thread_info, preempt_count); |
96 | offset("#define TI_ADDR_LIMIT ", struct thread_info, addr_limit); | 96 | offset("#define TI_ADDR_LIMIT ", struct thread_info, addr_limit); |
97 | offset("#define TI_RESTART_BLOCK ", struct thread_info, restart_block); | 97 | offset("#define TI_RESTART_BLOCK ", struct thread_info, restart_block); |
98 | offset("#define TI_TP_VALUE ", struct thread_info, tp_value); | 98 | offset("#define TI_TP_VALUE ", struct thread_info, tp_value); |
99 | constant("#define _THREAD_SIZE_ORDER ", THREAD_SIZE_ORDER); | 99 | constant("#define _THREAD_SIZE_ORDER ", THREAD_SIZE_ORDER); |
100 | constant("#define _THREAD_SIZE ", THREAD_SIZE); | 100 | constant("#define _THREAD_SIZE ", THREAD_SIZE); |
101 | constant("#define _THREAD_MASK ", THREAD_MASK); | 101 | constant("#define _THREAD_MASK ", THREAD_MASK); |
@@ -241,6 +241,7 @@ void output_mm_defines(void) | |||
241 | linefeed; | 241 | linefeed; |
242 | } | 242 | } |
243 | 243 | ||
244 | #ifdef CONFIG_32BIT | ||
244 | void output_sc_defines(void) | 245 | void output_sc_defines(void) |
245 | { | 246 | { |
246 | text("/* Linux sigcontext offsets. */"); | 247 | text("/* Linux sigcontext offsets. */"); |
@@ -252,10 +253,29 @@ void output_sc_defines(void) | |||
252 | offset("#define SC_STATUS ", struct sigcontext, sc_status); | 253 | offset("#define SC_STATUS ", struct sigcontext, sc_status); |
253 | offset("#define SC_FPC_CSR ", struct sigcontext, sc_fpc_csr); | 254 | offset("#define SC_FPC_CSR ", struct sigcontext, sc_fpc_csr); |
254 | offset("#define SC_FPC_EIR ", struct sigcontext, sc_fpc_eir); | 255 | offset("#define SC_FPC_EIR ", struct sigcontext, sc_fpc_eir); |
255 | offset("#define SC_CAUSE ", struct sigcontext, sc_cause); | 256 | offset("#define SC_HI1 ", struct sigcontext, sc_hi1); |
256 | offset("#define SC_BADVADDR ", struct sigcontext, sc_badvaddr); | 257 | offset("#define SC_LO1 ", struct sigcontext, sc_lo1); |
258 | offset("#define SC_HI2 ", struct sigcontext, sc_hi2); | ||
259 | offset("#define SC_LO2 ", struct sigcontext, sc_lo2); | ||
260 | offset("#define SC_HI3 ", struct sigcontext, sc_hi3); | ||
261 | offset("#define SC_LO3 ", struct sigcontext, sc_lo3); | ||
257 | linefeed; | 262 | linefeed; |
258 | } | 263 | } |
264 | #endif | ||
265 | |||
266 | #ifdef CONFIG_64BIT | ||
267 | void output_sc_defines(void) | ||
268 | { | ||
269 | text("/* Linux sigcontext offsets. */"); | ||
270 | offset("#define SC_REGS ", struct sigcontext, sc_regs); | ||
271 | offset("#define SC_FPREGS ", struct sigcontext, sc_fpregs); | ||
272 | offset("#define SC_MDHI ", struct sigcontext, sc_hi); | ||
273 | offset("#define SC_MDLO ", struct sigcontext, sc_lo); | ||
274 | offset("#define SC_PC ", struct sigcontext, sc_pc); | ||
275 | offset("#define SC_FPC_CSR ", struct sigcontext, sc_fpc_csr); | ||
276 | linefeed; | ||
277 | } | ||
278 | #endif | ||
259 | 279 | ||
260 | #ifdef CONFIG_MIPS32_COMPAT | 280 | #ifdef CONFIG_MIPS32_COMPAT |
261 | void output_sc32_defines(void) | 281 | void output_sc32_defines(void) |