diff options
Diffstat (limited to 'arch/arm/oprofile/common.c')
-rw-r--r-- | arch/arm/oprofile/common.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/arch/arm/oprofile/common.c b/arch/arm/oprofile/common.c index 6f833358cd06..a9de727c9327 100644 --- a/arch/arm/oprofile/common.c +++ b/arch/arm/oprofile/common.c | |||
@@ -131,10 +131,20 @@ int __init oprofile_arch_init(struct oprofile_operations *ops) | |||
131 | struct op_arm_model_spec *spec = NULL; | 131 | struct op_arm_model_spec *spec = NULL; |
132 | int ret = -ENODEV; | 132 | int ret = -ENODEV; |
133 | 133 | ||
134 | ops->backtrace = arm_backtrace; | ||
135 | |||
134 | #ifdef CONFIG_CPU_XSCALE | 136 | #ifdef CONFIG_CPU_XSCALE |
135 | spec = &op_xscale_spec; | 137 | spec = &op_xscale_spec; |
136 | #endif | 138 | #endif |
137 | 139 | ||
140 | #ifdef CONFIG_OPROFILE_ARMV6 | ||
141 | spec = &op_armv6_spec; | ||
142 | #endif | ||
143 | |||
144 | #ifdef CONFIG_OPROFILE_MPCORE | ||
145 | spec = &op_mpcore_spec; | ||
146 | #endif | ||
147 | |||
138 | if (spec) { | 148 | if (spec) { |
139 | ret = spec->init(); | 149 | ret = spec->init(); |
140 | if (ret < 0) | 150 | if (ret < 0) |
@@ -153,7 +163,6 @@ int __init oprofile_arch_init(struct oprofile_operations *ops) | |||
153 | ops->start = op_arm_start; | 163 | ops->start = op_arm_start; |
154 | ops->stop = op_arm_stop; | 164 | ops->stop = op_arm_stop; |
155 | ops->cpu_type = op_arm_model->name; | 165 | ops->cpu_type = op_arm_model->name; |
156 | ops->backtrace = arm_backtrace; | ||
157 | printk(KERN_INFO "oprofile: using %s\n", spec->name); | 166 | printk(KERN_INFO "oprofile: using %s\n", spec->name); |
158 | } | 167 | } |
159 | 168 | ||