See patch

-- 
coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br.
      Tel.: +49 761 7668825 • Fax: +49 761 7664613
Email: [email protected]http://www.coresystems.de/
Registergericht: Amtsgericht Freiburg • HRB 7656
Geschäftsführer: Stefan Reinauer • Ust-IdNr.: DE245674866

Some updates for core/core duo/core2/core2 duo cpus.

The microcode is from Intel's Linux microcode file, so it's unproblematic.

Signed-off-by: Stefan Reinauer <[email protected]>

Index: src/cpu/intel/model_6ex/model_6ex_init.c
===================================================================
--- src/cpu/intel/model_6ex/model_6ex_init.c    
(.../branches/upstream/coreboot-v2)     
+++ src/cpu/intel/model_6ex/model_6ex_init.c    (.../trunk/coreboot-v2) 
@@ -52,6 +52,76 @@
        strcpy(processor_name, processor_name_start);
 }
 
+#define IA32_FEATURE_CONTROL 0x003a
+
+#define CPUID_VMX (1 << 5)
+#define CPUID_SMX (1 << 6)
+static void enable_vmx(void)
+{
+       struct cpuid_result regs;
+       msr_t msr;
+
+       msr = rdmsr(IA32_FEATURE_CONTROL);
+
+       if (msr.lo & (1 << 0)) {
+               /* VMX locked. If we set it again we get an illegal
+                * instruction
+                */
+               return;
+       }
+
+       regs = cpuid(1);
+       if (regs.ecx & CPUID_VMX) {
+               msr.lo |= (1 << 2);
+               if (regs.ecx & CPUID_SMX)
+                       msr.lo |= (1 << 1);
+       }
+
+       wrmsr(IA32_FEATURE_CONTROL, msr);
+
+       msr.lo |= (1 << 0); /* Set lock bit */
+
+       wrmsr(IA32_FEATURE_CONTROL, msr);
+}
+
+#define PMG_CST_CONFIG_CONTROL 0xe2
+static void configure_c_states(void)
+{
+       msr_t msr;
+
+       msr = rdmsr(PMG_CST_CONFIG_CONTROL);
+       msr.lo &= ~(1 << 9); // Issue a  single stop grant cycle upon stpclk
+
+       // TODO Do we want Deep C4 and  Dynamic L2 shrinking?
+       wrmsr(PMG_CST_CONFIG_CONTROL, msr);
+}
+
+#define IA32_MISC_ENABLE       0x1a0
+static void configure_misc(void)
+{
+       msr_t msr;
+
+       msr = rdmsr(IA32_MISC_ENABLE);
+       msr.lo |= (1 << 3);     /* TM1 enable */
+       msr.lo |= (1 << 13);    /* TM2 enable */
+       msr.lo |= (1 << 17);    /* Bidirectional PROCHOT# */
+
+       msr.lo |= (1 << 10);    /* FERR# multiplexing */
+
+       // TODO: Only if  IA32_PLATFORM_ID[17] = 0 and IA32_PLATFORM_ID[50] = 1
+       msr.lo |= (1 << 16);    /* Enhanced SpeedStep Enable */
+
+       // TODO Do we want Deep C4 and  Dynamic L2 shrinking?
+       wrmsr(IA32_MISC_ENABLE, msr);
+
+       msr.lo |= (1 << 20);    /* Lock Enhanced SpeedStep Enable */
+       wrmsr(IA32_MISC_ENABLE, msr);
+}
+
+#if CONFIG_USBDEBUG_DIRECT
+static unsigned ehci_debug_addr;
+#endif
+
 static void model_6ex_init(device_t cpu)
 {
        char processor_name[49];
@@ -66,13 +136,35 @@
        fill_processor_name(processor_name);
        printk_info("CPU: %s.\n", processor_name);
 
+#if CONFIG_USBDEBUG_DIRECT
+       // Is this caution really needed?
+       if(!ehci_debug_addr) 
+               ehci_debug_addr = get_ehci_debug();
+       set_ehci_debug(0);
+#endif
+
        /* Setup MTRRs */
        x86_setup_mtrrs(36);
        x86_mtrr_check();
-       
+
+#if CONFIG_USBDEBUG_DIRECT
+       set_ehci_debug(ehci_debug_addr);
+#endif
+
        /* Enable the local cpu apics */
        setup_lapic();
 
+       /* Enable virtualization */
+       enable_vmx();
+
+       /* Configure C States */
+       configure_c_states();
+
+       /* Configure Enhanced SpeedStep and Thermal Sensors */
+       configure_misc();
+
+       /* TODO: PIC thermal sensor control */
+
        /* Start up my cpu siblings */
        intel_sibling_init(cpu);
 }
Index: src/cpu/intel/model_6fx/microcode_m206f257.h
===================================================================
--- src/cpu/intel/model_6fx/microcode_m206f257.h        
(.../branches/upstream/coreboot-v2)     
+++ src/cpu/intel/model_6fx/microcode_m206f257.h        (.../trunk/coreboot-v2) 
@@ -0,0 +1,291 @@
+//+++
+//       Copyright (c) <1995-2008>, Intel Corporation.
+//     All rights reserved.
+//
+//     Redistribution. Redistribution and use in binary form, without 
modification, are
+//     permitted provided that the following conditions are met:
+//             .Redistributions must reproduce the above copyright notice and 
the following
+//     disclaimer in the documentation and/or other materials provided with the
+//     distribution.
+//             .Neither the name of Intel Corporation nor the names of its 
suppliers may be used
+//     to endorse or promote products derived from this software without 
specific prior
+//     written permission.
+//             .No reverse engineering, decompilation, or disassembly of this 
software is
+//     permitted.
+//             ."Binary form" includes any format commonly used for electronic 
conveyance
+//     which is a reversible, bit-exact translation of binary representation 
to ASCII or
+//     ISO text, for example, "uuencode."
+//
+//     DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
+//     HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+//     WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+//     WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+//     PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
+//     OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+//     SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+//     NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+//     LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+//     CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+//     STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+//     ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+//     ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//
+//---
+/*  Wed Sep 10 11:53:28 CST 2008  */
+/*  2129-m206f257.inc  */
+0x00000001,    0x00000057,     0x03152007,     0x000006f2,
+0x07e77759,    0x00000001,     0x00000020,     0x00000fd0,
+0x00001000,    0x00000000,     0x00000000,     0x00000000,
+0xf0aefac0,    0x7c38e188,     0xba5a013f,     0xdfb167bf,
+0x3c3fed5c,    0x9a7527d0,     0x7f3ae5a3,     0x8ab688d1,
+0x348436ab,    0xdc4756d5,     0xfc2a0a22,     0x9f11b7bf,
+0xa47e1335,    0xc1e04f7c,     0xdaaf86cf,     0xa870c161,
+0x072e2279,    0x87ee60b8,     0x3e4b0622,     0x326b4d89,
+0x0652f8e1,    0x2ea0c801,     0xbeaa5953,     0xdc1b6573,
+0x701f392e,    0xed0630f9,     0xbc9b3dfa,     0x1640fe65,
+0x571a23c1,    0x9d913021,     0x895d7d30,     0xd2d2d7d4,
+0xd605ed58,    0x254a7575,     0x0cac66a8,     0xcfe8bbe5,
+0xcdd30390,    0xbb2236d2,     0x4c5c5bee,     0x5aee0bec,
+0xc7ccb2ce,    0x02e4a983,     0xc5920bf7,     0x4ce10d1f,
+0x3fc17820,    0xda1b4e54,     0x3de20b4d,     0x5ff322d2,
+0xd6de8959,    0xe35d9fbb,     0x7b450c74,     0xcdc09449,
+0x25bb7745,    0x056e0ec0,     0x05c27088,     0xeece366b,
+0xd99a08bd,    0xbf7aa5ff,     0xb99fb54a,     0x1e620294,
+0x5498c8b6,    0x7e9feeb8,     0x0bd593db,     0x9ae9d723,
+0xaf9ef586,    0xcf6b95a7,     0x8eb34bd2,     0x378c817a,
+0xc0a0b5a8,    0xd92c8ec3,     0x756277de,     0x6c023ab6,
+0x982be06c,    0xb8a70610,     0x7f5a8718,     0xa677cfa8,
+0x2e7ade57,    0x3978eec5,     0xc34a97d1,     0x37733521,
+0x5692ce95,    0x7b9fc090,     0x0d111e36,     0x6d9fb551,
+0xc48f3b9e,    0x6a1b2dfc,     0x8ba4b179,     0xb00f6962,
+0xfa149366,    0xbb1dc1b3,     0x23a921c0,     0xb96d73b7,
+0xcd4dc6da,    0xfc5e8abb,     0xdb5fe0f2,     0xcb33f9dc,
+0xaf75f866,    0x3dfd2478,     0xe7a5b475,     0x54a611b2,
+0x73994c7d,    0x161b27bc,     0x7f810ba5,     0x8dd5733c,
+0x72fe4c72,    0x2e76dbe3,     0x9f9f0c64,     0x0e21bdbd,
+0x4331bf86,    0x879b1ddc,     0x40c84fce,     0x7c5d11c0,
+0x3faf10ab,    0x3550eae6,     0x26996e67,     0x00ef27d2,
+0xccda83ed,    0x11030e92,     0x757074d7,     0xc5a517dd,
+0xfc3e7fd4,    0xc16d81ed,     0x9044cd87,     0x2d099580,
+0xb25b9d47,    0x5b610359,     0x0e59eeb5,     0x7d19f029,
+0x4cf9706f,    0x0f5c8597,     0xecf7aedb,     0x86d1ee8b,
+0x2c85f041,    0x3015ac75,     0xa0db24d8,     0xa9f07271,
+0xb78ec67e,    0xeca00670,     0xf7d05fe5,     0xdff30312,
+0x6ae19969,    0x63375a04,     0x466a01f5,     0xc171c0da,
+0x93ce8528,    0x703c1aed,     0xcd42cced,     0x32819c8d,
+0xeb642286,    0x72723b25,     0x86c46d68,     0xb64d3c67,
+0x3d3bb64c,    0x60eaf2be,     0x924b7f3d,     0x0bb38768,
+0xaf2deef9,    0x2fa43b64,     0xdb0823ee,     0x7ddb339c,
+0xea1cbf8a,    0xb19895d0,     0x1d6fd197,     0xb9a9343e,
+0x31ce5f2e,    0x9399fc36,     0x14d6f1dd,     0xdd6ed0ac,
+0xd9e8f45a,    0x56dba12c,     0xf5ef138a,     0x981a6eaf,
+0x74fe5839,    0x370aab6a,     0x717df9f6,     0xa4dbc8d1,
+0x3c665e8a,    0x07711522,     0x58911dfd,     0x9276384e,
+0x70dd2327,    0x2613f4ad,     0x67043d57,     0x085bc73e,
+0x13399b60,    0x28b0d7e3,     0xc7101b20,     0xa29550aa,
+0x8177a1dc,    0x5bcc83b2,     0x1cf50fbc,     0x448c109a,
+0x09288db1,    0x1700bdcf,     0xa119bf8e,     0xdaeb3c27,
+0xf21a1004,    0x3490c7e4,     0x6562906d,     0x732225be,
+0x4ca41b48,    0x9807ec37,     0x82c2c81a,     0x182ae052,
+0x337f2a6c,    0x177a866f,     0xb0397a1e,     0x8aa9e3d2,
+0xb596cae5,    0x52630925,     0x069e969f,     0xb8a6cf5d,
+0xe206c823,    0x95768639,     0xeb9ef6c1,     0xdc879822,
+0x805b7540,    0xdbdca41e,     0x92daf8aa,     0x2855131d,
+0x98537e07,    0xf9f437ff,     0x4fd88be0,     0x07cadd26,
+0x61c5f34a,    0xbb6a19cd,     0xc113d97e,     0xc2097fa8,
+0x93df4c5c,    0x71f49496,     0xeeb280b9,     0xd8b31a12,
+0x8c68fe2a,    0x6c85e6c5,     0x665d8833,     0xbf7ca2d8,
+0x8ec9d5fb,    0x2d8ada4b,     0x1112da86,     0x1eadb344,
+0x72bb72b4,    0x1146c42e,     0x9c4a1796,     0x103a8aa2,
+0x4e22694d,    0xdabb9fb9,     0xa643d98b,     0xa1e82adb,
+0x5e1f20ec,    0xc1179fc2,     0xdf5791d1,     0x1071ced5,
+0x940a595b,    0x9d575c0c,     0x572a6eb6,     0x68866e0b,
+0x2cc54642,    0xa0b47fe9,     0xd53f7591,     0x40c57980,
+0x7e927dfc,    0xad644a5e,     0x2f6b3a0a,     0xb4c788d4,
+0x59131505,    0xdf982aa7,     0x7eed9890,     0xc7a79316,
+0xa390c1e8,    0xb6a81315,     0x8b6ecc2f,     0xa18d162e,
+0xa96a54a1,    0xf9801a9e,     0x763aa20d,     0xfcba9e42,
+0x1d8f9e51,    0xb63608fe,     0xd0bca8d5,     0xc05b6fc3,
+0x1dabad44,    0x864011c5,     0x92a94ac3,     0x7e2bdb44,
+0xf1e0e0a4,    0x4e988af4,     0x51934b03,     0xc2eb8a5d,
+0xf58b0dfe,    0x88c9c264,     0xe81e0809,     0xb3087c8c,
+0x1f0cdd31,    0xcab43925,     0x02120053,     0xd4d308cb,
+0x5727a77a,    0xc0a58a07,     0x45b8004e,     0x4b887559,
+0xd5a6cfbd,    0x096d6b43,     0x8f7c3cf9,     0x10a9f009,
+0x8b55e8c8,    0x286cd461,     0x5d340d0f,     0x2e071f42,
+0x3c156062,    0x4a2ba5ed,     0x466f979d,     0x36ad6534,
+0x432a28d6,    0x23dd3681,     0xb782ecfd,     0x4ac65284,
+0x190c3fe3,    0x32371293,     0x1b4a968c,     0x4d140c3b,
+0xe9602892,    0xaa61bb7f,     0x87d82028,     0x833b076d,
+0xf5dfc16a,    0xe7e7e8cc,     0x9b9b123d,     0xe55f7f06,
+0x019ca425,    0x8c2ad978,     0x6e53312e,     0x4c68cc59,
+0x1505573b,    0xe50246c3,     0xe13f8925,     0xb40d8c6a,
+0x6df7688e,    0x64ddc299,     0xfa2de5ee,     0x8e22c09b,
+0xfc43e080,    0x27bdf731,     0xbd811f19,     0x50eb4114,
+0x33aefa80,    0x0dd5a922,     0xcb087d89,     0xf594aaaf,
+0x469590d5,    0xc2610f7e,     0x357f27f1,     0xe30b5697,
+0x744a47d4,    0x18703bcc,     0xbd00cbb4,     0x859b13b1,
+0x83259929,    0x71700966,     0xa6586c05,     0x70a61cb9,
+0x67af2d49,    0xbc1a3e58,     0xf6f3b5c7,     0x916983f3,
+0x3b99438f,    0x993ea084,     0xd2e842ab,     0xaae24c93,
+0x38902c9c,    0xcdcaa742,     0x1407900f,     0x4fa9a83f,
+0x0d87845e,    0x3dab31dc,     0xd1f773ee,     0x0b5181b9,
+0x0dd327f1,    0x9de29e99,     0x11d78ea2,     0xc66b0639,
+0xc97fae80,    0xd352bbe1,     0xfc19afbc,     0x713381a9,
+0x51b9502a,    0x355de567,     0x040ee678,     0xf4085bdf,
+0xc8b52da4,    0x7b851dfd,     0x94f53879,     0x936c3596,
+0x005b0eda,    0xb17d6d52,     0xf576900a,     0x99234c3d,
+0xdd2388f3,    0x3920a2eb,     0xce320776,     0xbaa6bb20,
+0x82ccef09,    0x15f3fa80,     0x30e218d5,     0x9f7c35f6,
+0xfc422ad6,    0x697ba237,     0xe9bd989a,     0x20573da5,
+0x526140be,    0x54023897,     0xd9ff4fbe,     0xee0c4495,
+0xe62410a3,    0x5150c878,     0x9a2c671c,     0xf76de5ad,
+0xd3eb74b4,    0x0688ec67,     0x7d4f12b3,     0x4fcbeb96,
+0x81b9489b,    0x257b67a2,     0x0538b984,     0x4aeb1a19,
+0xb3632b9f,    0x42148957,     0x71801f3e,     0x3ed494f4,
+0xe1591118,    0xa4542eeb,     0xca3d0445,     0x03b948a9,
+0x767a31b4,    0x090f62e1,     0x701890e7,     0x1cdf23f4,
+0xaba00984,    0x1b42b0e0,     0xb5369d19,     0x0e582a3d,
+0x079fc09d,    0x0a6b1256,     0x166e21c0,     0x4dfbf861,
+0x68d90df7,    0x1392544f,     0x52e420f2,     0xaa437eb1,
+0x355fe827,    0x5e5a497f,     0xb06b9003,     0x118c85ed,
+0x7c8b1f9b,    0x710f30bf,     0xf42ad4e0,     0x70a17971,
+0x3321840d,    0xebf2f3ca,     0x6820d080,     0xe5987997,
+0xf1bcc9b5,    0x9357765e,     0x317884cf,     0x3449efff,
+0x641d249c,    0x8dae0eec,     0xa5db1774,     0x1c06f4c6,
+0x0dbd7c38,    0x18dd265a,     0x206eed23,     0x1b1f3780,
+0x4e6b063c,    0x07169a13,     0x1b16ed6e,     0x87de6f65,
+0xfe05eeca,    0xd3e6958f,     0xef53638e,     0xb8fa5b3a,
+0xed4aa69c,    0xf229c96b,     0x922efea9,     0xf2e9f8d6,
+0x7626207d,    0xac94bddd,     0xa055f4d1,     0x7cf49e93,
+0xb68191fd,    0x5d1e0522,     0xb778bc1a,     0x667773ab,
+0x0547d582,    0xb990ca6f,     0xae44199e,     0x090f8cbb,
+0x66909346,    0x990b0a60,     0x866f804e,     0xafb29f1d,
+0x85635204,    0x5531bc16,     0x766099af,     0x3128bdc5,
+0x564838ac,    0x0f6a5d39,     0xc560f67b,     0xc7820c23,
+0x05bb1328,    0x6f9484ee,     0x319809ab,     0xc0dead11,
+0x30928a58,    0xcea6f365,     0xae4c63e2,     0x375bb2f5,
+0x0d7b1cdb,    0x6777d042,     0x70d56f28,     0xa67ebccb,
+0x1f02a61b,    0x148f5044,     0xa2ff3cd5,     0xdacfcf0e,
+0xcec94c27,    0xee4af516,     0x0cddc248,     0x018cda30,
+0x9d70143d,    0x197a6a8e,     0x6f651d33,     0x6faa4e8e,
+0x8ebf8215,    0xead609df,     0xfd2f388b,     0xccb70ecc,
+0x4a670925,    0xdd621f46,     0xb9e0bae9,     0xc9937471,
+0x0a4232eb,    0xc7ba26cb,     0x8c3a7e17,     0xcef032c2,
+0x73b75440,    0xcca87896,     0xb544c0d8,     0xcadfa89e,
+0x3392961d,    0x5d99f95a,     0x00974612,     0xc5b871c6,
+0x9336a0b2,    0x9dc01d28,     0xcf6f39e6,     0x847c7351,
+0x0b990971,    0x70184dd8,     0xe5257c82,     0x721e7ef4,
+0x8922a618,    0xacc61d52,     0xa31cb090,     0xec6e46bf,
+0x0e22d152,    0x88c3a2f8,     0xd4cb10f6,     0x1e2bd43f,
+0x67d26f37,    0xf6a2b4d3,     0xd4229cef,     0x89626856,
+0x81400377,    0xa80b84d0,     0x1f5b6e64,     0xb5def54f,
+0x8db7711e,    0x69b7f916,     0x1d3dda64,     0xe5c6d920,
+0x6b3459ab,    0x5dc96ae2,     0x083308d7,     0xfa84b8a6,
+0xb8f0a688,    0xa806c32f,     0x04d3a1a8,     0x58f5f04c,
+0xf0233835,    0x7f5cb42f,     0x5eceef54,     0x577374c5,
+0x51aa783b,    0x8ffe6da8,     0xc118f745,     0xe881675f,
+0xb1e02bf3,    0x63db76ef,     0x8b0848ac,     0x0e0573ec,
+0x1d4fc251,    0xf430354c,     0x38b5b60e,     0x0c942f9c,
+0x67f1905c,    0x7428f8b0,     0x79297d7e,     0xa93f388c,
+0x051e8616,    0x48e03984,     0x04d97406,     0x7413b6d4,
+0x6a3f6f8d,    0xfaed5a44,     0xdc89c0a1,     0x1b2611d1,
+0x21ca7dd6,    0x9c9d1448,     0xab3687c2,     0xc275130d,
+0xbeec53d3,    0x93e05b62,     0xd164a9d6,     0x1418ada5,
+0xcbb235da,    0x01cde834,     0x16d895fb,     0x5d916eeb,
+0x2f8a4045,    0x671dd425,     0xab40ec3b,     0xed3eefda,
+0xc1a93fd2,    0x348066fe,     0x538e9697,     0x3a73512a,
+0x0eded14d,    0x7cc7085a,     0x1a769924,     0x8e11533c,
+0xb961df1e,    0x73db50a8,     0xfe625496,     0x79b0bef6,
+0x712f024b,    0x997a8bd8,     0x3009ce33,     0x38a922fa,
+0x2f1b74d9,    0x70342c80,     0x587b1639,     0x9f02fd01,
+0x5c8c4977,    0x6b0d1be1,     0xed9fb8fe,     0x0d1c9fa4,
+0x3e51d08a,    0x2ecdd796,     0x71768e1b,     0x803c8b2d,
+0xc009ac20,    0x242dc6ee,     0x6c9cfe25,     0x8cd3dbc4,
+0xb35832db,    0x4613ba88,     0xab1274dd,     0xda19e833,
+0x49c0fb40,    0xeb37ba33,     0xdf06e975,     0x90ad6d1b,
+0x8aef380d,    0xa4cfb894,     0x107819ab,     0x01f89df1,
+0x1ea242cc,    0x17626b76,     0x9568d1a8,     0x3e584238,
+0x9c0ba10f,    0x3de6d8b8,     0xbcff277e,     0x94ba4d60,
+0x24f88a80,    0x7d336afe,     0x04f4af38,     0xa435ae27,
+0x82c5de40,    0x28b78b43,     0x5f4f3836,     0x809d1a13,
+0xdb95ee3a,    0xacc8e9b4,     0xd0d6cf98,     0x9ba813cc,
+0x6e89a462,    0x2afbe3c3,     0x5d662eef,     0x5365d477,
+0x98bd0b86,    0x81c1601f,     0x15cd7693,     0x8b3d7ef9,
+0xaf25331e,    0x49c24e40,     0xe6e8a26c,     0x0f083b65,
+0xdcaa15a9,    0x26101687,     0x9dd1cad9,     0x80a9b15b,
+0xac16e5e1,    0xb85861bd,     0x78c59bbe,     0x284648f0,
+0x1f1af2cf,    0xbb834fbf,     0xd7d71460,     0xcf44c671,
+0x573bd611,    0x76e94cde,     0x17c03286,     0x02621543,
+0x705d0c85,    0x2b6d6b0f,     0xa8f17a22,     0xbde3ed1e,
+0x09afd9cc,    0xf84955f8,     0xa7d1dabb,     0x82343b59,
+0xa3fbc5f1,    0xfcdce701,     0xd600158c,     0x71262e33,
+0xcb257268,    0xf3f17de9,     0x257ec37e,     0x366552f6,
+0xd39c706d,    0x1372a7ef,     0x84fb48ea,     0xf1c4776a,
+0x182f548f,    0xa5499971,     0x488e7904,     0x4167ba8d,
+0x796aa238,    0x41eedf0e,     0xe65e7ffc,     0x7352ab66,
+0x7ea8d981,    0x93c717f5,     0xc8124404,     0xa7447a65,
+0x231dd863,    0x17581b25,     0xd10a9250,     0x5807994a,
+0x12b18ae5,    0x80d03bbb,     0x7595c1b1,     0x6e878a42,
+0xbc2db045,    0xde5c7e5d,     0x8f096855,     0x82dc150c,
+0x7afd3dca,    0xf274e65a,     0x2abbe67f,     0x0145568c,
+0x014dba37,    0x9a182028,     0xd71618ac,     0xc87934bd,
+0xe96101d1,    0x55d1976c,     0x471c8505,     0x7a36d839,
+0x5d62a9ee,    0xf3c54a8a,     0xa2be15d9,     0x244087c9,
+0x042c8037,    0x23224689,     0x281c5d73,     0x2139ecfc,
+0xffb8bc8a,    0x834fdd11,     0x9cd5a5bd,     0xa3368319,
+0x7e5bef0c,    0x4ae2dbda,     0x86d90089,     0x6675dfce,
+0x48876262,    0xcec72538,     0x11dc5c80,     0x86a730f9,
+0x313565c9,    0xe3e5be11,     0x106d7cce,     0x752b8be2,
+0x3d00a5bc,    0xe6f70e95,     0x44447ac8,     0x600df30c,
+0x8335ac3b,    0x8816ddee,     0x700982fe,     0xee495741,
+0x48c7e81c,    0xa3d55da2,     0xb0172982,     0x70ab2158,
+0xd4460621,    0x3a9e528b,     0x59b18a7b,     0xf4dabc4c,
+0xa8454763,    0x70877bb6,     0x66005c97,     0xaf292c06,
+0x7b843db1,    0xf343b59b,     0x25cdc7b5,     0xa41da617,
+0x9e9d895e,    0xc936f475,     0x7270925a,     0x30024230,
+0x8e72f53d,    0x2b6c1b6f,     0x1a69732c,     0x7ed5aff5,
+0xfc18a2a3,    0xaf377cc1,     0xbff09a78,     0x4b4e0814,
+0x95a0b2c1,    0x270398de,     0x201fca94,     0x2a032a4f,
+0x131542b4,    0x0d7306da,     0x2d1c3496,     0xcc3c6d8d,
+0xa814ddc9,    0xa3b3a991,     0x17ee60c2,     0x852c0b8d,
+0x11e5853a,    0x762002a7,     0x92c5311d,     0x0d4bf7e1,
+0xfffec870,    0xe3d35e5b,     0xff6ecfb9,     0xdedae6ff,
+0x0111a772,    0x9808e780,     0x29c336e8,     0xe9bc05df,
+0x5bedde11,    0x945565af,     0xaff808fe,     0x87e3423d,
+0x4de6f98f,    0x93b4adef,     0xbf704fa4,     0x09120e91,
+0xd54f3692,    0xdf8eab1e,     0xfabbf59c,     0xe74318be,
+0xaab87ffc,    0x29fa791c,     0xe3915552,     0xa652cb9b,
+0xa1252e74,    0xb35b723b,     0x542aa28b,     0x12fcc5b0,
+0x3941f962,    0x82bcc6cc,     0x47b11974,     0xb821611f,
+0x78b34250,    0xf1be5659,     0x561b9e61,     0x6f3bd501,
+0x584e6f5c,    0xd54ed547,     0xacebcd21,     0x7b5ff816,
+0xb64ad233,    0x9f2f330d,     0x69fb1ece,     0xac8710dd,
+0x58dc6c60,    0x9bee6139,     0xbb10ad0e,     0xbd8cd5dd,
+0xebc0ce9d,    0xa733274f,     0x884d9b55,     0x42b08b63,
+0xafa54a74,    0x1c7ccf64,     0x93a20191,     0xaaa3132e,
+0xc69831d1,    0x54634889,     0xfbfe3efc,     0xd3cf68d4,
+0x302e3117,    0xf5693131,     0xc3ce8c6c,     0x1f03cd89,
+0x6243334c,    0xf16bc80f,     0xdca5f130,     0xcb2cd956,
+0x4c1bb421,    0xe8de533c,     0x7f86703a,     0x29aa897e,
+0xdd54acad,    0x76b2f2ae,     0x7ef82b71,     0x2e30970b,
+0xba402597,    0x9a653ab4,     0xd68fcf53,     0x2d9f0d15,
+0x7f9efd1c,    0x2363d147,     0x5327289a,     0xe89229f3,
+0xd63a535c,    0x7efe9273,     0x64f2e3a3,     0x9bdf65a7,
+0x26b6edfb,    0x1b9c7bfe,     0x5d14b3de,     0x54d575fb,
+0x6d65db4c,    0x95648b7f,     0xa8a3b8f0,     0x7cc7ad46,
+0xe20e6dbb,    0x8488a45f,     0x8ebc2932,     0xd4767316,
+0x3e8c4b8a,    0xbab7402c,     0xfc1e217e,     0xe5c5bf82,
+0x6928fe2e,    0xc88528e9,     0x4b2e4e8f,     0xdd938b86,
+0x0c964f98,    0xfc88d480,     0x35fcaf9e,     0xdd7bbe9d,
+0x197d005a,    0x4d40b3b3,     0xcf203155,     0x0d2fa621,
+0x752d2c58,    0xb12bac12,     0x1e7e8c23,     0x94215d54,
+0x9854a71c,    0x4de63c64,     0x7a012529,     0x9c171f8d,
+0x9e71def7,    0x3bd17d50,     0x11f175d9,     0xec78abf3,
+0x7b529eee,    0xd3a69fc3,     0x5b718676,     0x58214d29,
+0xa8bd2c34,    0x41ea00ab,     0xa03f64d6,     0x4ee342b0,
+0x32b1e444,    0x1c1801a4,     0xc8424702,     0x334a7e35,
+0x50cf1543,    0x3b22b495,     0x88683776,     0x8e2e0154,
+0x6155c033,    0x4e2fa6ac,     0x42ace700,     0x8d64f97c,
+0xaf9ced17,    0xb2a5cb92,     0xa558582d,     0x88705de7,
+0x9e528d59,    0x84bd45e4,     0x5cb680c0,     0xcd48fa5c,
Index: src/cpu/intel/model_6fx/microcode_m206f6c7.h
===================================================================
--- src/cpu/intel/model_6fx/microcode_m206f6c7.h        
(.../branches/upstream/coreboot-v2)     
+++ src/cpu/intel/model_6fx/microcode_m206f6c7.h        (.../trunk/coreboot-v2) 
@@ -0,0 +1,291 @@
+//+++
+//       Copyright (c) <1995-2008>, Intel Corporation.
+//     All rights reserved.
+//
+//     Redistribution. Redistribution and use in binary form, without 
modification, are
+//     permitted provided that the following conditions are met:
+//             .Redistributions must reproduce the above copyright notice and 
the following
+//     disclaimer in the documentation and/or other materials provided with the
+//     distribution.
+//             .Neither the name of Intel Corporation nor the names of its 
suppliers may be used
+//     to endorse or promote products derived from this software without 
specific prior
+//     written permission.
+//             .No reverse engineering, decompilation, or disassembly of this 
software is
+//     permitted.
+//             ."Binary form" includes any format commonly used for electronic 
conveyance
+//     which is a reversible, bit-exact translation of binary representation 
to ASCII or
+//     ISO text, for example, "uuencode."
+//
+//     DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
+//     HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+//     WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+//     WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+//     PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
+//     OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+//     SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+//     NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+//     LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+//     CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+//     STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+//     ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+//     ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//
+//---
+/*  Wed Sep 10 11:53:28 CST 2008  */
+/*  2127-m206f6c7.inc  */
+0x00000001,    0x000000c7,     0x03152007,     0x000006f6,
+0xd863aca5,    0x00000001,     0x00000020,     0x00000fd0,
+0x00001000,    0x00000000,     0x00000000,     0x00000000,
+0xf135893c,    0x4c42e3f3,     0xb73a55b6,     0x351ee5de,
+0xb62b15d8,    0xa4b7a683,     0x15e59363,     0xb5a88344,
+0x83cb3484,    0x27b18c8d,     0x94d04ac1,     0x8f1f77db,
+0x13b4b7fe,    0xa649fe2c,     0xb24e07e8,     0x1599f3a0,
+0xb3769963,    0xa12ac372,     0x250722b3,     0x9d15fb7d,
+0x9813a1b2,    0x117335fd,     0x8c1230f9,     0x81968e27,
+0x05a86156,    0x9b82a393,     0x9169c94d,     0x31b89d77,
+0x973c1fb2,    0x8f75d325,     0x6386e9f8,     0xa8df1a90,
+0xea70b02b,    0x5eb51ed7,     0x8c97f33c,     0xf9c1b8a6,
+0x5eb80126,    0xbec523d7,     0xb974f767,     0x73b44b82,
+0xf832f648,    0x8d196107,     0x7c0879bf,     0xcd6d630c,
+0x22466897,    0x4816ea2d,     0x6efda835,     0x25832e9b,
+0x7898d668,    0x59131743,     0x0f5c9772,     0x6f5a9ec7,
+0xbe40da64,    0x2d376de9,     0x85fdddd4,     0x9721c351,
+0x12a9d1de,    0xbfb37d7c,     0xb21a779f,     0x2593f254,
+0xa1737d77,    0x9aa94919,     0x314de914,     0xb56a3111,
+0x82a98637,    0x15fcc11e,     0x882e1550,     0x9dc71080,
+0x2effb94c,    0xaca5f479,     0xaa2db04b,     0x2ec75a37,
+0x80c324c1,    0xb387798a,     0x092e24c6,     0x82f54f78,
+0x2799d295,    0x010b6198,     0x38d497ab,     0x255044a9,
+0x28f09f9f,    0x12e3669b,     0x2937f975,     0x21332882,
+0x2a0c3de4,    0x127b6e06,     0x196c4c4a,     0x339de5f3,
+0x2d1952eb,    0x11b661e9,     0x38c5a4d9,     0x08d02b39,
+0x07714640,    0x14394d59,     0x3e2f5bbd,     0x0898e888,
+0x3ebde0c8,    0x11078f3c,     0x32e047cd,     0x3b8a1671,
+0x3d5400a2,    0x1ee97d92,     0x057760c9,     0x31ddc483,
+0x6b672bb1,    0x0239c65b,     0x5168de3c,     0x57da3987,
+0x0a411c03,    0x6ac8c9c3,     0x38c1814d,     0x138ae982,
+0x17fe9610,    0x22c1b2c2,     0x0f64d62b,     0x292f29a6,
+0x172bd3a3,    0x2660983f,     0x3f34706f,     0x17ddc325,
+0x3be7c056,    0x24297b2c,     0x0d7b4a97,     0x1ccace5e,
+0x362c300c,    0x2d8a24c7,     0x40a8b209,     0x27e2b212,
+0x51f58204,    0x47291d65,     0x049de5d0,     0x620f697e,
+0x4a407809,    0x2c8afcc9,     0x3adb22f4,     0x4dec3b92,
+0x46981a3b,    0x379b774c,     0x7f3ab853,     0x7d8d941d,
+0x35d5717b,    0x4865f240,     0x657ae90a,     0x38db767f,
+0x5ba5af85,    0x624bde90,     0x27ca5b94,     0x7d6de192,
+0x74752869,    0x1aa685e2,     0x626ac31b,     0x78db6d6c,
+0x10924be8,    0x7f5fa69a,     0x70b7ba13,     0x35ea4627,
+0x6e8d8ce0,    0x5a36f924,     0x368ab401,     0x7271a3bb,
+0x5a552eaa,    0x32d42181,     0x6db87723,     0x6459b69e,
+0x3b7f2229,    0x516935fe,     0x7af35a05,     0x34d6f025,
+0x4fb65637,    0x7f9446c9,     0x29279aae,     0x630458d9,
+0x7d91017f,    0x12138189,     0x670175f5,     0x79410f28,
+0x10096979,    0x6c00509a,     0x65007291,     0x231b6f99,
+0x6c086043,    0x4bb85e3c,     0x2a14b537,     0x75ac8df6,
+0x50f5171f,    0x3872a743,     0x624efe16,     0x654ede16,
+0x388a9b3a,    0x52e4d776,     0x7875c3b4,     0x2487fd53,
+0x468cd150,    0x6d323e69,     0x2ce7e3c2,     0x695c3c62,
+0x77e824a3,    0x11756de6,     0x7bf7c901,     0x74e5c26d,
+0x1afa9675,    0x69b9df37,     0x73b86637,     0x24e87f5d,
+0x7c0e8526,    0x4901376c,     0x31fb6e1b,     0x660dbe1a,
+0x53170be5,    0x21c35688,     0x73503139,     0x6064b5df,
+0x29ba71f5,    0x53bdb0d1,     0x6536739e,     0x3a25f143,
+0x443e2b84,    0x73bb1a43,     0x3711fbe7,     0x7c6e4a38,
+0x7780f574,    0x16901e72,     0x69e9671d,     0x60ec9c20,
+0x06890195,    0x7bb14d4b,     0x6292324e,     0x32c9abed,
+0x799488db,    0x50b9af33,     0x299b8a16,     0x7209f8e0,
+0x5add0439,    0x28f8fc56,     0x7f63fe6b,     0x71275304,
+0x20b6a475,    0x4c9bdbbe,     0x662f84b0,     0x3d6cc2d1,
+0x47d6afa4,    0x7ad1c011,     0x2ead22c5,     0x7d908a65,
+0x6e6ccec4,    0x1d7689f7,     0x6ee48904,     0x733ccb6f,
+0x1da0fb77,    0x7bb09d43,     0x7321dd51,     0x2701892c,
+0x7d84793d,    0x4d6492cc,     0x2fa9a321,     0x76b7e6e2,
+0x465dbd1c,    0x33b7fe03,     0x6282c0fc,     0x6301d671,
+0x08afdd4b,    0x521c30f9,     0x165202e8,     0x0401a7ed,
+0x32d4bdcd,    0x37002f6e,     0x29e0b079,     0x3b8f70e6,
+0x1f32ea74,    0x17ca355f,     0x19c8eceb,     0x109551cd,
+0x046136e7,    0x0d1b04c2,     0x3599e1f5,     0x3abb8250,
+0x1bfa131d,    0x12193715,     0x77cdde86,     0x065f6895,
+0x51718435,    0x4731e28b,     0x285fdb8c,     0x4fa6e3cc,
+0x6aa41e77,    0x18cc12b7,     0x3d9bd449,     0x68254258,
+0x41e7cb3e,    0x25b2eb61,     0x42133e78,     0x64f82d73,
+0x112e4c48,    0x798379b6,     0x5f33622d,     0x14d4b234,
+0x6325e99e,    0x524dd17f,     0x04ecf1c3,     0x49e60429,
+0x7065602d,    0x2b0d9ae7,     0x5e7c9b5a,     0x780d283b,
+0x0c835bcc,    0x6721511f,     0x75b36f07,     0x134145d7,
+0x0e814738,    0x4e0aa44d,     0x51a96127,     0x188d63ea,
+0x463147c0,    0x7477864c,     0x220d2e93,     0x4eca7e2f,
+0xc1de753e,    0x078e240c,     0x80b8951a,     0xcd8c655b,
+0x6157aed4,    0xbf7a4cbb,     0xeedfff8d,     0x6b6efec2,
+0x3918ac62,    0xd2154ed5,     0x9d7ef787,     0x3cd4ca4d,
+0x83cfb39b,    0xb2e41461,     0x177ed847,     0x979b8263,
+0x063e5288,    0x25686303,     0x6ac4c002,     0x1daaee7b,
+0x44a872f5,    0x6920fad9,     0x1615e22f,     0x7ee6b668,
+0x46a20eca,    0x3f70299f,     0x6804ec4f,     0x438f3d2b,
+0x21981b39,    0x56c56c26,     0x790e53f9,     0x3d075619,
+0x73ec2706,    0x461887a3,     0x3289a477,     0x6dc41ff3,
+0x7f5575d9,    0x15c41603,     0x5b529716,     0x75fe042a,
+0x1ad545a3,    0x6c3bda68,     0x63a22b88,     0x0c762a66,
+0x6414a225,    0x4211a57d,     0x3ee18677,     0x70672a56,
+0x2263d25f,    0x147a0102,     0x2abb0809,     0x36d405a0,
+0x370f7ebd,    0x3a633ec6,     0x21f35ed3,     0x0eaa0a9c,
+0x18776376,    0x0d7cb3ae,     0x0c317ba7,     0x0e7f0abc,
+0x04259abe,    0x02f52088,     0x030df095,     0x20c29d81,
+0x882c52ea,    0x2d580ecc,     0xa92564dc,     0x802796ac,
+0x3219a158,    0x9f257e87,     0x9cc10ff5,     0x34274f65,
+0x83ee1c46,    0xa0220012,     0x1dde176a,     0x8bfbd3cf,
+0xc1205b06,    0x3bd2cafc,     0xfb023b16,     0xca0dfb9b,
+0x0a339312,    0xce3891c9,     0xd5f95269,     0x01011bc3,
+0xda50d4a6,    0xe4bb68a0,     0x38a2d750,     0xcfea1bc8,
+0x8f5e797c,    0x013aadfa,     0xf591d8c8,     0x8ee4aa28,
+0x7355b612,    0xee0428b4,     0x9ae443a0,     0x6feac10a,
+0xfd4339ca,    0x846da8fc,     0x0502cee5,     0xf4257dfc,
+0xc9da3d3e,    0x3b300835,     0xde8627da,     0xcd8bea50,
+0x1c8e4efc,    0xeb473eae,     0xe55d5e4b,     0x1627425e,
+0xc596048d,    0xc625faa2,     0x1320a228,     0xc49aec7f,
+0xeec906ce,    0x353f3489,     0xdfc5495e,     0xefa721f4,
+0x35be9794,    0xe644add2,     0xd48800ba,     0x26d27892,
+0xfac89ec0,    0xf876f427,     0x06861fa0,     0xe89c1407,
+0xad86305a,    0x0031d329,     0xaec58f29,     0x9ded7311,
+0x0f535848,    0x89751f81,     0x9453a5bd,     0x0593b715,
+0x9cfb5340,    0x8f8cc387,     0x0ba81c6b,     0xab249d09,
+0x47b98128,    0x3a59a622,     0x6bcc7e6d,     0x490d3f9e,
+0x194d7172,    0x43bc0d54,     0x476d5302,     0x0e79ab9d,
+0x043a2e4e,    0x6e23d982,     0x4f9275a2,     0x13482aaf,
+0x4cd88767,    0x417af7bf,     0x2670b7b6,     0x6e3159e1,
+0x7ee5fb88,    0x1690d436,     0x7c204b0c,     0x7f7bd21e,
+0x1c44e6bd,    0x72aa216e,     0x762740e1,     0x3195f0af,
+0x68f7a632,    0x405a48de,     0x4f47cf2b,     0x74802579,
+0x306f294c,    0x5c40b9a2,     0x44882623,     0x1bc24415,
+0x57479859,    0x77f1f9b6,     0x75e1d617,     0x5c0f58e0,
+0x09ea315f,    0x439d0666,     0x7c896e85,     0x02a7bb07,
+0x6faf5510,    0x4d84a791,     0x27fe2b91,     0x68aa7491,
+0x52973597,    0x0222a1a1,     0x621446c4,     0x4e8a2246,
+0x018f0189,    0x52fe91c5,     0x5c1dc78b,     0x0f3df43e,
+0x46b83eca,    0x5ec0e882,     0x0794307d,     0x6fc5de80,
+0x49d5654e,    0x354ee67c,     0x710ff7c0,     0x4ea654ae,
+0x1c6b7d3b,    0x6e8a2a53,     0x77a83c55,     0x3876439d,
+0x6c9b745e,    0x6caf0739,     0x5cdbcbb5,     0x2476ae0e,
+0x0bb3d90e,    0xa6bfe765,     0x5ea2df7b,     0xf0787223,
+0xce1d2f30,    0xe3f585a9,     0x862936aa,     0x760f8e61,
+0xbe83028a,    0xe8b5836a,     0x3f511b31,     0xc14765f3,
+0xcb58aca3,    0xcba6b2cd,     0xe4663a5d,     0x306d3a63,
+0x9f92084b,    0x9ede4973,     0x782c5d7e,     0xff753f56,
+0xe863b9fe,    0xb48dae56,     0x926718e6,     0x3f2df5a7,
+0xb96e9045,    0xa7ffe8e3,     0x3d712112,     0x96a37460,
+0xcf6d2da6,    0xb453af2f,     0xe2738a18,     0x46eab1c6,
+0xb33f26c8,    0xacfaa37e,     0x5545aef9,     0xf6ee57bc,
+0x9ab32696,    0x60f08210,     0xc6a68785,     0xbe0f8a26,
+0x6ec47920,    0x6fd6f0d2,     0xbe21a54b,     0xc1ed9f13,
+0x779b8ab2,    0x601e0135,     0xd707f98a,     0xbe8ba28c,
+0x490cf7d2,    0xdabad447,     0x8e0447e3,     0x5aa97c13,
+0xe0fa4ffc,    0x87c56421,     0x744c8d5d,     0xff38fc68,
+0xeeb31201,    0x5183cc8b,     0x8cf20994,     0xd8043432,
+0x5d9fe6c1,    0x5e1874f0,     0xc2955a2f,     0x84390ab0,
+0x3ef119f8,    0x84f1a150,     0xedfd1684,     0x6b244bce,
+0xef6b8b37,    0xd2b4b735,     0x0aabcb89,     0xc50ab6b6,
+0xe99f0600,    0x016503fb,     0xeac92d6b,     0xe17828bb,
+0x6f54ab62,    0xe442ad55,     0x8ac94c9c,     0x7fbd6462,
+0x95fbbc51,    0x4312f35f,     0x15f95b03,     0x4b376589,
+0x30054b1f,    0x4f93b30f,     0x3f893784,     0x7b1fe40d,
+0x302a042a,    0xa7b52297,     0x1baf4c24,     0xb2d8045d,
+0xc59c87e5,    0x6182bfae,     0xc0177c03,     0xa07f2b7d,
+0x6d3c9042,    0xe119b6c0,     0xb95000e4,     0x5ef06018,
+0xe329fddd,    0xb6c351e9,     0x561a9f22,     0x0e3d0ee5,
+0xb1d82fa7,    0x24e5a591,     0x0f877f43,     0xc7fbf6dd,
+0x2bd640c4,    0xac411744,     0xc0572fb3,     0x814e269f,
+0xbff658b7,    0xa6fb6709,     0x8eb94c8a,     0xdd59b669,
+0xaec2ec83,    0x0f975d58,     0xc007e63e,     0x34f1ef97,
+0x1093e9ae,    0xf10306c2,     0x371d2ba6,     0x06d529e5,
+0xcc5ba006,    0x62720191,     0x2760d5d9,     0xbcf9f2ef,
+0x6cf26009,    0x3cc648ba,     0xad069852,     0x79d86abd,
+0x2bd13a45,    0x6c59ab96,     0x7fe93fa9,     0xf4f9c8c4,
+0x6659306e,    0x4ceb3f8e,     0xf8f3b54f,     0x22d47284,
+0x25f00ac3,    0xdf42abde,     0x48232afe,     0x6b12c85a,
+0xd3689402,    0x439533cc,     0x699ed29c,     0xc8579683,
+0x4083f273,    0xc0133829,     0xcb4319da,     0xef666889,
+0xdd90130f,    0xd6b42043,     0xfea82ce5,     0xc974a1c8,
+0xc16fa70d,    0xf704cc46,     0xdde80293,     0xd19e56a5,
+0xe92cc8b6,    0x50e56bf3,     0xc7c8b490,     0x7824c8ac,
+0x49e11bfd,    0x5b430d40,     0x73b0ca71,     0x24d265ae,
+0xab0c7b5b,    0x26f970b0,     0xc6ef1791,     0xe04eb2a0,
+0x85f9948b,    0xde0bf679,     0x4a7dfccb,     0x93201bf0,
+0x8a5898ba,    0xa2c8afb0,     0xdc169dda,     0x62eaa056,
+0xbee610e4,    0xcfe62b41,     0x683c035e,     0xb154a8ff,
+0x5bc3c6e1,    0x7f72f3f8,     0x2634ae89,     0x4dfab058,
+0x0ecbcc90,    0x73948eaf,     0x2002cc46,     0x402c28ea,
+0x316ee39e,    0x3491bc24,     0x05f329d3,     0x3e1b39ed,
+0x8f939791,    0x3e8081e0,     0x9e3471fc,     0xb768956e,
+0xf5001d85,    0xdd6a5d5f,     0x72f9ac8b,     0xa39e90b7,
+0xda690817,    0x699362ea,     0xb1611e17,     0xd44046c6,
+0x33771d3e,    0xe884be2f,     0x8c7a72d7,     0x7e51529d,
+0xe1807e89,    0xa07cdfde,     0x64e8c668,     0xd3774939,
+0xe8261a25,    0x430c6240,     0x991408e5,     0xd01517e0,
+0xacfe1fbb,    0xd7aeeb57,     0x22ccc0c2,     0xfd449c99,
+0x2d3f390f,    0x30f54c8c,     0x0dde0c1d,     0x3cb3c009,
+0x5729d223,    0x6a25e468,     0x44eb6c4e,     0x3e5863e9,
+0xa9639ce4,    0x096bf738,     0xea20cefb,     0xe187f5c8,
+0x418ccab3,    0x4bc370ca,     0xa1200b64,     0xebcfc110,
+0xeb942278,    0x4ba5d196,     0x48a7b4d0,     0x07aeaf38,
+0xb7b71ee5,    0x59184abf,     0xfa2b23bc,     0xbcc9da17,
+0xd846d1fc,    0x214f1278,     0x2bf7e99f,     0x1a04261a,
+0xd7f6e905,    0x86ea57d7,     0xd71618ac,     0xc87934bd,
+0xe96101d1,    0x55d1976c,     0x471c8505,     0x7a36d839,
+0x5d62a9ee,    0xf3c54a8a,     0xa2be15d9,     0x244087c9,
+0x042c8037,    0x23224689,     0x281c5d73,     0x2139ecfc,
+0xffb8bc8a,    0x834fdd11,     0x9cd5a5bd,     0xa3368319,
+0x7e5bef0c,    0x4ae2dbda,     0x86d90089,     0x6675dfce,
+0x48876262,    0xcec72538,     0x11dc5c80,     0x86a730f9,
+0x313565c9,    0xe3e5be11,     0x106d7cce,     0x752b8be2,
+0x3d00a5bc,    0xe6f70e95,     0x44447ac8,     0x600df30c,
+0x8335ac3b,    0x8816ddee,     0x700982fe,     0xee495741,
+0x48c7e81c,    0xa3d55da2,     0xb0172982,     0x70ab2158,
+0xd4460621,    0x3a9e528b,     0x59b18a7b,     0xf4dabc4c,
+0xa8454763,    0x70877bb6,     0x66005c97,     0xaf292c06,
+0x7b843db1,    0xf343b59b,     0x25cdc7b5,     0xa41da617,
+0x9e9d895e,    0xc936f475,     0x7270925a,     0x30024230,
+0x8e72f53d,    0x2b6c1b6f,     0x1a69732c,     0x7ed5aff5,
+0xfc18a2a3,    0xaf377cc1,     0xbff09a78,     0x4b4e0814,
+0x95a0b2c1,    0x270398de,     0x201fca94,     0x2a032a4f,
+0x131542b4,    0x0d7306da,     0x2d1c3496,     0xcc3c6d8d,
+0xa814ddc9,    0xa3b3a991,     0x17ee60c2,     0x852c0b8d,
+0x11e5853a,    0x762002a7,     0x92c5311d,     0x0d4bf7e1,
+0xfffec870,    0xe3d35e5b,     0xff6ecfb9,     0xdedae6ff,
+0x0111a772,    0x9808e780,     0x29c336e8,     0xe9bc05df,
+0x5bedde11,    0x945565af,     0xaff808fe,     0x87e3423d,
+0x4de6f98f,    0x93b4adef,     0xbf704fa4,     0x09120e91,
+0xd54f3692,    0xdf8eab1e,     0xfabbf59c,     0xe74318be,
+0xaab87ffc,    0x29fa791c,     0xe3915552,     0xa652cb9b,
+0xa1252e74,    0xb35b723b,     0x542aa28b,     0x12fcc5b0,
+0x3941f962,    0x82bcc6cc,     0x47b11974,     0xb821611f,
+0x78b34250,    0xf1be5659,     0x561b9e61,     0x6f3bd501,
+0x584e6f5c,    0xd54ed547,     0xacebcd21,     0x7b5ff816,
+0xb64ad233,    0x9f2f330d,     0x69fb1ece,     0xac8710dd,
+0x58dc6c60,    0x9bee6139,     0xbb10ad0e,     0xbd8cd5dd,
+0xebc0ce9d,    0xa733274f,     0x884d9b55,     0x42b08b63,
+0xafa54a74,    0x1c7ccf64,     0x93a20191,     0xaaa3132e,
+0xc69831d1,    0x54634889,     0xfbfe3efc,     0xd3cf68d4,
+0x302e3117,    0xf5693131,     0xc3ce8c6c,     0x1f03cd89,
+0x6243334c,    0xf16bc80f,     0xdca5f130,     0xcb2cd956,
+0x4c1bb421,    0xe8de533c,     0x7f86703a,     0x29aa897e,
+0xdd54acad,    0x76b2f2ae,     0x7ef82b71,     0x2e30970b,
+0xba402597,    0x9a653ab4,     0xd68fcf53,     0x2d9f0d15,
+0x7f9efd1c,    0x2363d147,     0x5327289a,     0xe89229f3,
+0xd63a535c,    0x7efe9273,     0x64f2e3a3,     0x9bdf65a7,
+0x26b6edfb,    0x1b9c7bfe,     0x5d14b3de,     0x54d575fb,
+0x6d65db4c,    0x95648b7f,     0xa8a3b8f0,     0x7cc7ad46,
+0xe20e6dbb,    0x8488a45f,     0x8ebc2932,     0xd4767316,
+0x3e8c4b8a,    0xbab7402c,     0xfc1e217e,     0xe5c5bf82,
+0x6928fe2e,    0xc88528e9,     0x4b2e4e8f,     0xdd938b86,
+0x0c964f98,    0xfc88d480,     0x35fcaf9e,     0xdd7bbe9d,
+0x197d005a,    0x4d40b3b3,     0xcf203155,     0x0d2fa621,
+0x752d2c58,    0xb12bac12,     0x1e7e8c23,     0x94215d54,
+0x9854a71c,    0x4de63c64,     0x7a012529,     0x9c171f8d,
+0x9e71def7,    0x3bd17d50,     0x11f175d9,     0xec78abf3,
+0x7b529eee,    0xd3a69fc3,     0x5b718676,     0x58214d29,
+0xa8bd2c34,    0x41ea00ab,     0xa03f64d6,     0x4ee342b0,
+0x32b1e444,    0x1c1801a4,     0xc8424702,     0x334a7e35,
+0x50cf1543,    0x3b22b495,     0x88683776,     0x8e2e0154,
+0x6155c033,    0x4e2fa6ac,     0x42ace700,     0x8d64f97c,
+0xaf9ced17,    0xb2a5cb92,     0xa558582d,     0x88705de7,
+0x9e528d59,    0x84bd45e4,     0x5cb680c0,     0xcd48fa5c,
Index: src/cpu/intel/model_6fx/model_6fx_init.c
===================================================================
--- src/cpu/intel/model_6fx/model_6fx_init.c    
(.../branches/upstream/coreboot-v2)     
+++ src/cpu/intel/model_6fx/model_6fx_init.c    (.../trunk/coreboot-v2) 
@@ -12,7 +12,8 @@
 #include <cpu/x86/mtrr.h>
 
 static const uint32_t microcode_updates[] = {
-       // #include "microcode_m206e839.h"
+       #include "microcode_m206f257.h"
+       #include "microcode_m206f6c7.h"
        /*  Dummy terminator  */
         0x0, 0x0, 0x0, 0x0,
         0x0, 0x0, 0x0, 0x0,
@@ -52,8 +53,122 @@
        strcpy(processor_name, processor_name_start);
 }
 
-static void model_6ex_init(device_t cpu)
+#define IA32_FEATURE_CONTROL 0x003a
+
+#define CPUID_VMX (1 << 5)
+#define CPUID_SMX (1 << 6)
+static void enable_vmx(void)
 {
+       struct cpuid_result regs;
+       msr_t msr;
+
+       msr = rdmsr(IA32_FEATURE_CONTROL);
+
+       if (msr.lo & (1 << 0)) {
+               /* VMX locked. If we set it again we get an illegal
+                * instruction
+                */
+               return;
+       }
+
+       regs = cpuid(1);
+       if (regs.ecx & CPUID_VMX) {
+               msr.lo |= (1 << 2);
+               if (regs.ecx & CPUID_SMX)
+                       msr.lo |= (1 << 1);
+       }
+
+       wrmsr(IA32_FEATURE_CONTROL, msr);
+
+       msr.lo |= (1 << 0); /* Set lock bit */
+
+       wrmsr(IA32_FEATURE_CONTROL, msr);
+}
+
+#define PMG_CST_CONFIG_CONTROL 0xe2
+#define PMG_IO_BASE_ADDR       0xe3
+#define PMG_IO_CAPTURE_ADDR    0xe4
+
+#define PMB0_BASE              0x580
+#define PMB1_BASE              0x800
+#define CST_RANGE              2
+static void configure_c_states(void)
+{
+       msr_t msr;
+
+       msr = rdmsr(PMG_CST_CONFIG_CONTROL);
+
+       msr.lo |= (1 << 15); // config lock until next reset
+       msr.lo |= (1 << 14); // Deeper Sleep
+       msr.lo |= (1 << 10); // Enable IO MWAIT redirection
+       msr.lo &= ~(1 << 9); // Issue a  single stop grant cycle upon stpclk
+       msr.lo |= (1 << 3); // Dynamic L2
+
+       wrmsr(PMG_CST_CONFIG_CONTROL, msr);
+
+       /* Set Processor MWAIT IO BASE */
+       msr.hi = 0;
+       msr.lo = ((PMB0_BASE + 4) & 0xffff) | (((PMB1_BASE + 9) & 0xffff) << 
16);
+       wrmsr(PMG_IO_BASE_ADDR, msr);
+
+       /* Set IO Capture Address */
+       msr.hi = 0;
+       msr.lo = ((PMB0_BASE + 4) & 0xffff) | (( CST_RANGE & 0xffff) << 16);
+       wrmsr(PMG_IO_CAPTURE_ADDR, msr);
+}
+
+#define IA32_MISC_ENABLE       0x1a0
+static void configure_misc(void)
+{
+       msr_t msr;
+
+       msr = rdmsr(IA32_MISC_ENABLE);
+       msr.lo |= (1 << 3);     /* TM1 enable */
+       msr.lo |= (1 << 13);    /* TM2 enable */
+       msr.lo |= (1 << 17);    /* Bidirectional PROCHOT# */
+
+       msr.lo |= (1 << 10);    /* FERR# multiplexing */
+
+       // TODO: Only if  IA32_PLATFORM_ID[17] = 0 and IA32_PLATFORM_ID[50] = 1
+       msr.lo |= (1 << 16);    /* Enhanced SpeedStep Enable */
+
+       /* Enable C2E */
+       msr.lo |= (1 << 26);
+
+       /* Enable C4E */
+       /* TODO This should only be done on mobile CPUs, see cpuid 5 */
+       msr.hi |= (1 << (32 - 32)); // C4E
+       msr.hi |= (1 << (33 - 32)); // Hard C4E
+
+       /* Enable EMTTM. */
+       /* NOTE: We leave the EMTTM_CR_TABLE0-5 at their default values */
+       msr.hi |= (1 << (36 - 32));
+
+       wrmsr(IA32_MISC_ENABLE, msr);
+
+       msr.lo |= (1 << 20);    /* Lock Enhanced SpeedStep Enable */
+       wrmsr(IA32_MISC_ENABLE, msr);
+}
+
+#define PIC_SENS_CFG   0x1aa
+static void configure_pic_thermal_sensors(void)
+{
+       msr_t msr;
+
+       msr = rdmsr(PIC_SENS_CFG);
+
+       msr.lo |= (1 << 21); // inter-core lock TM1
+       msr.lo |= (1 << 4); // Enable bypass filter
+
+       wrmsr(PIC_SENS_CFG, msr);
+}
+
+#if CONFIG_USBDEBUG_DIRECT
+static unsigned ehci_debug_addr;
+#endif
+               
+static void model_6fx_init(device_t cpu)
+{
        char processor_name[49];
 
        /* Turn on caching if we haven't already */
@@ -66,19 +181,42 @@
        fill_processor_name(processor_name);
        printk_info("CPU: %s.\n", processor_name);
 
+#if CONFIG_USBDEBUG_DIRECT
+       // Is this caution really needed?
+       if(!ehci_debug_addr) 
+               ehci_debug_addr = get_ehci_debug();
+       set_ehci_debug(0);
+#endif
+
        /* Setup MTRRs */
        x86_setup_mtrrs(36);
        x86_mtrr_check();
-       
+
+#if CONFIG_USBDEBUG_DIRECT
+       set_ehci_debug(ehci_debug_addr);
+#endif
+
        /* Enable the local cpu apics */
        setup_lapic();
 
+       /* Enable virtualization */
+       enable_vmx();
+
+       /* Configure C States */
+       configure_c_states();
+
+       /* Configure Enhanced SpeedStep and Thermal Sensors */
+       configure_misc();
+
+       /* PIC thermal sensor control */
+       configure_pic_thermal_sensors();
+
        /* Start up my cpu siblings */
        intel_sibling_init(cpu);
 }
 
 static struct device_operations cpu_dev_ops = {
-       .init     = model_6ex_init,
+       .init     = model_6fx_init,
 };
 
 static struct cpu_device_id cpu_table[] = {
Property changes on: .
___________________________________________________________________
Name: svn:ignore
   + coreboot.rom
coreboot-builds


--
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to