]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Oprofile: Change CPUIDS from decimal to hex, and add some comments
authorJohn Villalovos <sodarock@gmail.com>
Fri, 7 May 2010 16:41:40 +0000 (12:41 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 26 Aug 2010 23:43:53 +0000 (16:43 -0700)
commit 45c34e05c4e3d36e7c44e790241ea11a1d90d54e upstream.

Back when the patch was submitted for "Add Xeon 7500 series support to
oprofile", Robert Richter had asked for a followon patch that
converted all the CPU ID values to hex.

I have done that here for the "i386/core_i7" and "i386/atom" class
processors in the ppro_init() function and also added some comments on
where to find documentation on the Intel processors.

Signed-off-by: John L. Villalovos <john.l.villalovos@intel.com>
Signed-off-by: Robert Richter <robert.richter@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/x86/oprofile/nmi_int.c

index f1fb411d9e4fa68948c2e5997759e3e47f69a06c..2342d5ebffb623daf8ae09d9d6e1fc25a2a6276c 100644 (file)
@@ -584,6 +584,18 @@ static int __init ppro_init(char **cpu_type)
        if (force_arch_perfmon && cpu_has_arch_perfmon)
                return 0;
 
+       /*
+        * Documentation on identifying Intel processors by CPU family
+        * and model can be found in the Intel Software Developer's
+        * Manuals (SDM):
+        *
+        *  http://www.intel.com/products/processor/manuals/
+        *
+        * As of May 2010 the documentation for this was in the:
+        * "Intel 64 and IA-32 Architectures Software Developer's
+        * Manual Volume 3B: System Programming Guide", "Table B-1
+        * CPUID Signature Values of DisplayFamily_DisplayModel".
+        */
        switch (cpu_model) {
        case 0 ... 2:
                *cpu_type = "i386/ppro";
@@ -605,12 +617,12 @@ static int __init ppro_init(char **cpu_type)
        case 15: case 23:
                *cpu_type = "i386/core_2";
                break;
+       case 0x1a:
        case 0x2e:
-       case 26:
                spec = &op_arch_perfmon_spec;
                *cpu_type = "i386/core_i7";
                break;
-       case 28:
+       case 0x1c:
                *cpu_type = "i386/atom";
                break;
        default: