diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2009-11-24 01:24:58 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2009-12-17 01:57:30 +0000 |
commit | 69f3a7de1f1ec935924b1b13f83812f8b30e92ce (patch) | |
tree | a5f8a71b9cb3026a44ae7a1564488de8c3d8d2a9 /arch/mips/include | |
parent | 4dd92e15b316d1a782772f16074571a70ceb9184 (diff) | |
download | linux-3.10-69f3a7de1f1ec935924b1b13f83812f8b30e92ce.tar.gz linux-3.10-69f3a7de1f1ec935924b1b13f83812f8b30e92ce.tar.bz2 linux-3.10-69f3a7de1f1ec935924b1b13f83812f8b30e92ce.zip |
MIPS: Modularize COP2 handling
Away with the daemons of ifdef; get ready for future COP2 users.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Patchwork: http://patchwork.linux-mips.org/patch/708/
Diffstat (limited to 'arch/mips/include')
-rw-r--r-- | arch/mips/include/asm/cop2.h | 23 | ||||
-rw-r--r-- | arch/mips/include/asm/octeon/octeon.h | 1 |
2 files changed, 24 insertions, 0 deletions
diff --git a/arch/mips/include/asm/cop2.h b/arch/mips/include/asm/cop2.h new file mode 100644 index 00000000000..6b04c98b7fa --- /dev/null +++ b/arch/mips/include/asm/cop2.h @@ -0,0 +1,23 @@ +/* + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive + * for more details. + * + * Copyright (C) 2009 Wind River Systems, + * written by Ralf Baechle <ralf@linux-mips.org> + */ +#ifndef __ASM_COP2_H +#define __ASM_COP2_H + +enum cu2_ops { + CU2_EXCEPTION, + CU2_LWC2_OP, + CU2_LDC2_OP, + CU2_SWC2_OP, + CU2_SDC2_OP, +}; + +extern int register_cu2_notifier(struct notifier_block *nb); +extern int cu2_notifier_call_chain(unsigned long val, void *v); + +#endif /* __ASM_COP2_H */ diff --git a/arch/mips/include/asm/octeon/octeon.h b/arch/mips/include/asm/octeon/octeon.h index cac9b1a206f..4d0a8c61fc3 100644 --- a/arch/mips/include/asm/octeon/octeon.h +++ b/arch/mips/include/asm/octeon/octeon.h @@ -47,6 +47,7 @@ struct octeon_cop2_state; extern unsigned long octeon_crypto_enable(struct octeon_cop2_state *state); extern void octeon_crypto_disable(struct octeon_cop2_state *state, unsigned long flags); +extern asmlinkage void octeon_cop2_restore(struct octeon_cop2_state *task); extern void octeon_init_cvmcount(void); |