inteltool: basic poulsbo sch support.
authorStefan Reinauer <stepan@coresystems.de>
Tue, 1 Jun 2010 10:04:28 +0000 (10:04 +0000)
committerStefan Reinauer <stepan@openbios.org>
Tue, 1 Jun 2010 10:04:28 +0000 (10:04 +0000)
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5601 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1

util/inteltool/cpu.c
util/inteltool/inteltool.c
util/inteltool/inteltool.h

index ee49d96b0e927d304b2758fa2154eae15d43ecb6..aa3505f6ee2b28d39b396dc8cae47f4f6f834bfd 100644 (file)
@@ -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];
index 5e319019dd3cd560c5fa515600dd8a2c55ae50e9..615234edaa6e856ac6e9e2dc0f502cd244edf372 100644 (file)
@@ -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++)
index 20b8525b5b8c898b73e666c5e8c7db8472e0253e..613469ca45bc50c84dab17a6c14d41f869b38f49 100644 (file)
@@ -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). */