diff options
Diffstat (limited to 'arch/mips/kernel/unaligned.c')
| -rw-r--r-- | arch/mips/kernel/unaligned.c | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/arch/mips/kernel/unaligned.c b/arch/mips/kernel/unaligned.c index 67bd626942ab..69b039ca8d83 100644 --- a/arch/mips/kernel/unaligned.c +++ b/arch/mips/kernel/unaligned.c | |||
| @@ -81,6 +81,7 @@ | |||
| 81 | #include <asm/asm.h> | 81 | #include <asm/asm.h> |
| 82 | #include <asm/branch.h> | 82 | #include <asm/branch.h> |
| 83 | #include <asm/byteorder.h> | 83 | #include <asm/byteorder.h> |
| 84 | #include <asm/cop2.h> | ||
| 84 | #include <asm/inst.h> | 85 | #include <asm/inst.h> |
| 85 | #include <asm/uaccess.h> | 86 | #include <asm/uaccess.h> |
| 86 | #include <asm/system.h> | 87 | #include <asm/system.h> |
| @@ -451,17 +452,27 @@ static void emulate_load_store_insn(struct pt_regs *regs, | |||
| 451 | */ | 452 | */ |
| 452 | goto sigbus; | 453 | goto sigbus; |
| 453 | 454 | ||
| 455 | /* | ||
| 456 | * COP2 is available to implementor for application specific use. | ||
| 457 | * It's up to applications to register a notifier chain and do | ||
| 458 | * whatever they have to do, including possible sending of signals. | ||
| 459 | */ | ||
| 454 | case lwc2_op: | 460 | case lwc2_op: |
| 461 | cu2_notifier_call_chain(CU2_LWC2_OP, regs); | ||
| 462 | break; | ||
| 463 | |||
| 455 | case ldc2_op: | 464 | case ldc2_op: |
| 465 | cu2_notifier_call_chain(CU2_LDC2_OP, regs); | ||
| 466 | break; | ||
| 467 | |||
| 456 | case swc2_op: | 468 | case swc2_op: |
| 469 | cu2_notifier_call_chain(CU2_SWC2_OP, regs); | ||
| 470 | break; | ||
| 471 | |||
| 457 | case sdc2_op: | 472 | case sdc2_op: |
| 458 | /* | 473 | cu2_notifier_call_chain(CU2_SDC2_OP, regs); |
| 459 | * These are the coprocessor 2 load/stores. The current | 474 | break; |
| 460 | * implementations don't use cp2 and cp2 should always be | 475 | |
| 461 | * disabled in c0_status. So send SIGILL. | ||
| 462 | * (No longer true: The Sony Praystation uses cp2 for | ||
| 463 | * 3D matrix operations. Dunno if that thingy has a MMU ...) | ||
| 464 | */ | ||
| 465 | default: | 476 | default: |
| 466 | /* | 477 | /* |
| 467 | * Pheeee... We encountered an yet unknown instruction or | 478 | * Pheeee... We encountered an yet unknown instruction or |
