Merge branch 'core/softlockup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[pandora-kernel.git] / arch / mips / oprofile / common.c
index f2b4862..dd2fbd6 100644 (file)
@@ -14,8 +14,8 @@
 
 #include "op_impl.h"
 
-extern struct op_mips_model op_model_mipsxx __attribute__((weak));
-extern struct op_mips_model op_model_rm9000 __attribute__((weak));
+extern struct op_mips_model op_model_mipsxx_ops __attribute__((weak));
+extern struct op_mips_model op_model_rm9000_ops __attribute__((weak));
 
 static struct op_mips_model *model;
 
@@ -27,7 +27,7 @@ static int op_mips_setup(void)
        model->reg_setup(ctr);
 
        /* Configure the registers on all cpus.  */
-       on_each_cpu(model->cpu_setup, NULL, 0, 1);
+       on_each_cpu(model->cpu_setup, NULL, 1);
 
         return 0;
 }
@@ -38,7 +38,7 @@ static int op_mips_create_files(struct super_block * sb, struct dentry * root)
 
        for (i = 0; i < model->num_counters; ++i) {
                struct dentry *dir;
-               char buf[3];
+               char buf[4];
 
                snprintf(buf, sizeof buf, "%d", i);
                dir = oprofilefs_mkdir(sb, root, buf);
@@ -58,7 +58,7 @@ static int op_mips_create_files(struct super_block * sb, struct dentry * root)
 
 static int op_mips_start(void)
 {
-       on_each_cpu(model->cpu_start, NULL, 0, 1);
+       on_each_cpu(model->cpu_start, NULL, 1);
 
        return 0;
 }
@@ -66,7 +66,7 @@ static int op_mips_start(void)
 static void op_mips_stop(void)
 {
        /* Disable performance monitoring for all counters.  */
-       on_each_cpu(model->cpu_stop, NULL, 0, 1);
+       on_each_cpu(model->cpu_stop, NULL, 1);
 }
 
 int __init oprofile_arch_init(struct oprofile_operations *ops)
@@ -74,19 +74,24 @@ int __init oprofile_arch_init(struct oprofile_operations *ops)
        struct op_mips_model *lmodel = NULL;
        int res;
 
-       switch (current_cpu_data.cputype) {
+       switch (current_cpu_type()) {
        case CPU_5KC:
        case CPU_20KC:
        case CPU_24K:
        case CPU_25KF:
        case CPU_34K:
+       case CPU_1004K:
+       case CPU_74K:
        case CPU_SB1:
        case CPU_SB1A:
-               lmodel = &op_model_mipsxx;
+       case CPU_R10000:
+       case CPU_R12000:
+       case CPU_R14000:
+               lmodel = &op_model_mipsxx_ops;
                break;
 
        case CPU_RM9000:
-               lmodel = &op_model_rm9000;
+               lmodel = &op_model_rm9000_ops;
                break;
        };