From f994607a2e118aedf1116a58ecd16126dbb83d28 Mon Sep 17 00:00:00 2001
From: Graf Yang <graf.yang@analog.com>
Date: Wed, 7 Jan 2009 23:14:39 +0800
Subject: Blackfin arch: get oprofile work for user space

Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
---
 arch/blackfin/oprofile/common.c | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

(limited to 'arch/blackfin/oprofile/common.c')

diff --git a/arch/blackfin/oprofile/common.c b/arch/blackfin/oprofile/common.c
index f34795a..cf8f488 100644
--- a/arch/blackfin/oprofile/common.c
+++ b/arch/blackfin/oprofile/common.c
@@ -126,20 +126,12 @@ static int op_bfin_create_files(struct super_block *sb, struct dentry *root)
 int __init oprofile_arch_init(struct oprofile_operations *ops)
 {
 #ifdef CONFIG_HARDWARE_PM
-	unsigned int dspid;
-
 	mutex_init(&pfmon_lock);
 
-	dspid = bfin_dspid();
-
-	printk(KERN_INFO "Oprofile got the cpu id is 0x%x. \n", dspid);
 
-	switch (dspid) {
-	case BFIN_533_ID:
-		model = &op_model_bfin533;
-		model->num_counters = 2;
-		break;
-	case BFIN_537_ID:
+	switch (bfin_read_CHIPID() & CHIPID_MANUFACTURE) {
+	case 0xca:
+		printk(KERN_INFO "Oprofile: cpu vendor is Analog Devices.\n");
 		model = &op_model_bfin533;
 		model->num_counters = 2;
 		break;
-- 
cgit v1.1