[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>
This commit is contained in:
Anton Blanchard
2006-01-09 15:41:31 +11:00
committed by Paul Mackerras
parent 9a699aefa8
commit 32a33994d5
3 changed files with 59 additions and 82 deletions

View File

@@ -27,10 +27,17 @@
* via the mkdefs mechanism.
*/
struct cpu_spec;
struct op_powerpc_model;
typedef void (*cpu_setup_t)(unsigned long offset, struct cpu_spec* spec);
enum powerpc_oprofile_type {
INVALID = 0,
RS64 = 1,
POWER4 = 2,
G4 = 3,
BOOKE = 4,
};
struct cpu_spec {
/* CPU is matched via (PVR & pvr_mask) == pvr_value */
unsigned int pvr_mask;
@@ -56,7 +63,7 @@ struct cpu_spec {
char *oprofile_cpu_type;
/* Processor specific oprofile operations */
struct op_powerpc_model *oprofile_model;
enum powerpc_oprofile_type oprofile_type;
};
extern struct cpu_spec *cur_cpu_spec;