aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-sh
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2007-11-26 20:38:36 +0900
committerPaul Mundt <lethal@linux-sh.org>2008-01-28 13:18:57 +0900
commit74d99a5e262229ee865f6f68528d10b82471ead6 (patch)
tree1e2382c8779e1ee06226f9cc9acbf9a63eb5fc44 /include/asm-sh
parenta8f67f4b4d4b74cd14d3540ade8657ebee543340 (diff)
downloadkernel_samsung_aries-74d99a5e262229ee865f6f68528d10b82471ead6.zip
kernel_samsung_aries-74d99a5e262229ee865f6f68528d10b82471ead6.tar.gz
kernel_samsung_aries-74d99a5e262229ee865f6f68528d10b82471ead6.tar.bz2
sh: SH-2A FPU support.
Signed-off-by: Kieran Bingham <kbingham@mpc-data.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'include/asm-sh')
-rw-r--r--include/asm-sh/fpu.h2
-rw-r--r--include/asm-sh/sigcontext.h3
-rw-r--r--include/asm-sh/system.h2
3 files changed, 6 insertions, 1 deletions
diff --git a/include/asm-sh/fpu.h b/include/asm-sh/fpu.h
index 33db698..f842988 100644
--- a/include/asm-sh/fpu.h
+++ b/include/asm-sh/fpu.h
@@ -26,6 +26,8 @@ extern void save_fpu(struct task_struct *__tsk, struct pt_regs *regs);
#define save_fpu(tsk, regs) do { } while (0)
#endif
+extern int do_fpu_inst(unsigned short, struct pt_regs *);
+
#define unlazy_fpu(tsk, regs) do { \
if (test_tsk_thread_flag(tsk, TIF_USEDFPU)) { \
save_fpu(tsk, regs); \
diff --git a/include/asm-sh/sigcontext.h b/include/asm-sh/sigcontext.h
index 8583143..8ce1435 100644
--- a/include/asm-sh/sigcontext.h
+++ b/include/asm-sh/sigcontext.h
@@ -25,7 +25,8 @@ struct sigcontext {
unsigned long sc_mach;
unsigned long sc_macl;
-#if defined(__SH4__) || defined(CONFIG_CPU_SH4)
+#if defined(__SH4__) || defined(CONFIG_CPU_SH4) || \
+ defined(__SH2A__) || defined(CONFIG_CPU_SH2A)
/* FPU registers */
unsigned long sc_fpregs[16];
unsigned long sc_xfpregs[16];
diff --git a/include/asm-sh/system.h b/include/asm-sh/system.h
index 8b01fc4..ad3d2a6 100644
--- a/include/asm-sh/system.h
+++ b/include/asm-sh/system.h
@@ -205,6 +205,8 @@ asmlinkage void name##_trap_handler(unsigned int vec, struct pt_regs *regs)
BUILD_TRAP_HANDLER(address_error);
BUILD_TRAP_HANDLER(debug);
BUILD_TRAP_HANDLER(bug);
+BUILD_TRAP_HANDLER(fpu_error);
+BUILD_TRAP_HANDLER(fpu_state_restore);
#define arch_align_stack(x) (x)