diff options
Diffstat (limited to 'util/inteltool')
-rw-r--r-- | util/inteltool/cpu.c | 2 | ||||
-rw-r--r-- | util/inteltool/inteltool.c | 16 | ||||
-rw-r--r-- | util/inteltool/inteltool.h | 2 |
3 files changed, 16 insertions, 4 deletions
diff --git a/util/inteltool/cpu.c b/util/inteltool/cpu.c index ee49d96b0e..aa3505f6ee 100644 --- a/util/inteltool/cpu.c +++ b/util/inteltool/cpu.c @@ -464,7 +464,7 @@ int print_intel_core_msrs(void) /* Get CPU family and model, not the stepping * (TODO: extended family/model) */ - id = cpuid(1) & 0xff0; + id = cpuid(1) & 0xfffff0; for (i = 0; i < ARRAY_SIZE(cpulist); i++) { if(cpulist[i].model == id) { cpu = &cpulist[i]; diff --git a/util/inteltool/inteltool.c b/util/inteltool/inteltool.c index 5e319019dd..615234edaa 100644 --- a/util/inteltool/inteltool.c +++ b/util/inteltool/inteltool.c @@ -45,7 +45,9 @@ static const struct { { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82G33, "P35/G33/G31/P31" }, { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82Q33, "Q33" }, { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_X58, "X58" }, - { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_GS45, "GS45ME-GMCH" }, + { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_GS45, "GS45ME" }, + { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_SCH_POULSBO, "SCH Poulsbo" }, + { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_SCH_POULSBO_LPC, "SCH Poulsbo" }, { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH10R, "ICH10R" }, { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9DH, "ICH9DH" }, { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9DO, "ICH9DO" }, @@ -261,8 +263,16 @@ int main(int argc, char *argv[]) } id = cpuid(1); - printf("Intel CPU: Family %x, Model %x\n", - (id >> 8) & 0xf, (id >> 4) & 0xf); + + /* Intel has suggested applications to display the family of a CPU as + * the sum of the "Family" and the "Extended Family" fields shown + * above, and the model as the sum of the "Model" and the 4-bit + * left-shifted "Extended Model" fields. + * http://download.intel.com/design/processor/applnots/24161832.pdf + */ + printf("Intel CPU: Processor Type: %x, Family %x, Model %x, Stepping %x\n", + (id >> 12) & 0x3, ((id >> 8) & 0xf) + ((id >> 20) & 0xff), + ((id >> 12) & 0xf0) + ((id >> 4) & 0xf), (id & 0xf)); /* Determine names */ for (i = 0; i < ARRAY_SIZE(supported_chips_list); i++) diff --git a/util/inteltool/inteltool.h b/util/inteltool/inteltool.h index 20b8525b5b..613469ca45 100644 --- a/util/inteltool/inteltool.h +++ b/util/inteltool/inteltool.h @@ -51,6 +51,7 @@ #define PCI_DEVICE_ID_INTEL_ICH9M 0x2919 #define PCI_DEVICE_ID_INTEL_ICH9ME 0x2917 #define PCI_DEVICE_ID_INTEL_ICH10R 0x3a16 +#define PCI_DEVICE_ID_INTEL_SCH_POULSBO_LPC 0x8119 #define PCI_DEVICE_ID_INTEL_82810 0x7120 #define PCI_DEVICE_ID_INTEL_82810DC 0x7122 @@ -66,6 +67,7 @@ #define PCI_DEVICE_ID_INTEL_82Q33 0x29d0 #define PCI_DEVICE_ID_INTEL_GS45 0x2a40 #define PCI_DEVICE_ID_INTEL_X58 0x3405 +#define PCI_DEVICE_ID_INTEL_SCH_POULSBO 0x8100 #define PCI_DEVICE_ID_INTEL_82443LX 0x7180 /* 82443BX has a different device ID if AGP is disabled (hardware-wise). */ |