summaryrefslogtreecommitdiffstats
path: root/arch/arm/vfp/vfp.h
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2007-01-24 18:47:08 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2007-01-25 16:35:29 +0000
commitc6428464894889e110418928e6b37dc2eb4cee56 (patch)
tree292410b297ef2332715aabd7a87ef9fe0c03de4a /arch/arm/vfp/vfp.h
parent412489af76b5c0e4029d4406d93554c22a88fc73 (diff)
downloadlinux-c6428464894889e110418928e6b37dc2eb4cee56.tar.bz2
[ARM] 4111/1: Allow VFP to work with thread migration on SMP
The current lazy saving of the VFP registers is no longer possible with thread migration on SMP. This patch implements a per-CPU vfp-state pointer and the saving of the VFP registers at every context switch. The registers restoring is still performed in a lazy way. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/vfp/vfp.h')
-rw-r--r--arch/arm/vfp/vfp.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/vfp/vfp.h b/arch/arm/vfp/vfp.h
index f2797896e6d5..54a2ad6d9ca2 100644
--- a/arch/arm/vfp/vfp.h
+++ b/arch/arm/vfp/vfp.h
@@ -370,3 +370,7 @@ struct op {
u32 (* const fn)(int dd, int dn, int dm, u32 fpscr);
u32 flags;
};
+
+#ifdef CONFIG_SMP
+extern void vfp_save_state(void *location, u32 fpexc);
+#endif