aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-powerpc/cputable.h
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2006-01-08 23:41:31 -0500
committerPaul Mackerras <paulus@samba.org>2006-01-09 00:02:52 -0500
commit32a33994d513606d29e87e152deb67ba5f3c8e82 (patch)
tree2966bbe85eb2880aacc1dba045af7a02cee0aa26 /include/asm-powerpc/cputable.h
parent9a699aefa87cb0379a67741926820c9271d748a9 (diff)
[PATCH] ppc64: Fix oprofile when compiled as a module
My recent changes to oprofile broke it when built as a module. Fix it by using an enum instead of a function pointer. This way we still retain the oprofile configuration in the cputable. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'include/asm-powerpc/cputable.h')
-rw-r--r--include/asm-powerpc/cputable.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/asm-powerpc/cputable.h b/include/asm-powerpc/cputable.h
index d8798f31b360..ef6ead34a773 100644
--- a/include/asm-powerpc/cputable.h
+++ b/include/asm-powerpc/cputable.h
@@ -27,10 +27,17 @@
27 * via the mkdefs mechanism. 27 * via the mkdefs mechanism.
28 */ 28 */
29struct cpu_spec; 29struct cpu_spec;
30struct op_powerpc_model;
31 30
32typedef void (*cpu_setup_t)(unsigned long offset, struct cpu_spec* spec); 31typedef void (*cpu_setup_t)(unsigned long offset, struct cpu_spec* spec);
33 32
33enum powerpc_oprofile_type {
34 INVALID = 0,
35 RS64 = 1,
36 POWER4 = 2,
37 G4 = 3,
38 BOOKE = 4,
39};
40
34struct cpu_spec { 41struct cpu_spec {
35 /* CPU is matched via (PVR & pvr_mask) == pvr_value */ 42 /* CPU is matched via (PVR & pvr_mask) == pvr_value */
36 unsigned int pvr_mask; 43 unsigned int pvr_mask;
@@ -56,7 +63,7 @@ struct cpu_spec {
56 char *oprofile_cpu_type; 63 char *oprofile_cpu_type;
57 64
58 /* Processor specific oprofile operations */ 65 /* Processor specific oprofile operations */
59 struct op_powerpc_model *oprofile_model; 66 enum powerpc_oprofile_type oprofile_type;
60}; 67};
61 68
62extern struct cpu_spec *cur_cpu_spec; 69extern struct cpu_spec *cur_cpu_spec;