diff options
author | Andy Fleming <afleming@freescale.com> | 2005-12-15 21:02:04 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-01-08 23:06:03 -0500 |
commit | 555d97ac87aef08bb55dff6f05e68fe2987d6f6d (patch) | |
tree | 7016485d112af04b972dcc749e437a7131424252 /arch/powerpc/kernel/head_32.S | |
parent | e5cd040409dc0f8d34a21827d6b74918b3a4fccf (diff) |
[PATCH] powerpc: G4+ oprofile support
This patch adds oprofile support for the 7450 and all its multitudinous
derivatives.
* Added 7450 (and derivatives) support for oprofile
* Changed e500 cputable to have oprofile model and cpu_type fields
* Added support for classic 32-bit performance monitor interrupt
* Cleaned up common powerpc oprofile code to be as common as possible
* Cleaned up oprofile_impl.h to reflect 32 bit classic code
* Added 32-bit MMCRx bitfield definitions and SPR numbers
Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel/head_32.S')
-rw-r--r-- | arch/powerpc/kernel/head_32.S | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S index 6359e364fe66..bf37ef2b3aac 100644 --- a/arch/powerpc/kernel/head_32.S +++ b/arch/powerpc/kernel/head_32.S | |||
@@ -466,16 +466,11 @@ SystemCall: | |||
466 | * by executing an altivec instruction. | 466 | * by executing an altivec instruction. |
467 | */ | 467 | */ |
468 | . = 0xf00 | 468 | . = 0xf00 |
469 | b Trap_0f | 469 | b PerformanceMonitor |
470 | 470 | ||
471 | . = 0xf20 | 471 | . = 0xf20 |
472 | b AltiVecUnavailable | 472 | b AltiVecUnavailable |
473 | 473 | ||
474 | Trap_0f: | ||
475 | EXCEPTION_PROLOG | ||
476 | addi r3,r1,STACK_FRAME_OVERHEAD | ||
477 | EXC_XFER_EE(0xf00, unknown_exception) | ||
478 | |||
479 | /* | 474 | /* |
480 | * Handle TLB miss for instruction on 603/603e. | 475 | * Handle TLB miss for instruction on 603/603e. |
481 | * Note: we get an alternate set of r0 - r3 to use automatically. | 476 | * Note: we get an alternate set of r0 - r3 to use automatically. |
@@ -719,6 +714,11 @@ AltiVecUnavailable: | |||
719 | #endif /* CONFIG_ALTIVEC */ | 714 | #endif /* CONFIG_ALTIVEC */ |
720 | EXC_XFER_EE_LITE(0xf20, altivec_unavailable_exception) | 715 | EXC_XFER_EE_LITE(0xf20, altivec_unavailable_exception) |
721 | 716 | ||
717 | PerformanceMonitor: | ||
718 | EXCEPTION_PROLOG | ||
719 | addi r3,r1,STACK_FRAME_OVERHEAD | ||
720 | EXC_XFER_STD(0xf00, performance_monitor_exception) | ||
721 | |||
722 | #ifdef CONFIG_ALTIVEC | 722 | #ifdef CONFIG_ALTIVEC |
723 | /* Note that the AltiVec support is closely modeled after the FP | 723 | /* Note that the AltiVec support is closely modeled after the FP |
724 | * support. Changes to one are likely to be applicable to the | 724 | * support. Changes to one are likely to be applicable to the |