diff --git a/src/arch/i386/include/arch/pirq_routing.h b/src/arch/i386/include/arch/pirq_routing.h index 0660b7f8ef..dad8531eb5 100644 --- a/src/arch/i386/include/arch/pirq_routing.h +++ b/src/arch/i386/include/arch/pirq_routing.h @@ -16,6 +16,14 @@ struct irq_info { u8 rfu; } __attribute__((packed)); +#if defined(IRQ_SLOT_COUNT) +#define IRQ_SLOTS_COUNT IRQ_SLOT_COUNT +#elif (__GNUC__ < 3) +#define IRQ_SLOTS_COUNT 1 +#else +#define IRQ_SLOTS_COUNT +#endif + struct irq_routing_table { u32 signature; /* PIRQ_SIGNATURE should be here */ u16 version; /* PIRQ_VERSION */ @@ -26,15 +34,7 @@ struct irq_routing_table { u32 miniport_data; /* Crap */ u8 rfu[11]; u8 checksum; /* Modulo 256 checksum must give zero */ -#ifndef IRQ_SLOT_COUNT -#if (__GNUC__ < 3) - struct irq_info slots[1]; -#else - struct irq_info slots[]; -#endif // __GNUC__ < 3 -#else - struct irq_info slots[IRQ_SLOT_COUNT]; -#endif // ! IRQ_SLOT_COUNT + struct irq_info slots[IRQ_SLOTS_COUNT]; } __attribute__((packed)); extern const struct irq_routing_table intel_irq_routing_table; diff --git a/src/arch/i386/lib/Config b/src/arch/i386/lib/Config index 3503bd1fb6..ae927bec89 100644 --- a/src/arch/i386/lib/Config +++ b/src/arch/i386/lib/Config @@ -1,7 +1,6 @@ object i386_subr.o object params.o object hardwaremain.o -object c_start.S object pirq_routing.o HAVE_PIRQ_TABLE object vgabios.o CONFIG_VGABIOS object idt.o CONFIG_REALMODE_IDT diff --git a/src/arch/i386/lib/hardwaremain.c b/src/arch/i386/lib/hardwaremain.c index 850617eff0..8ad76727b4 100644 --- a/src/arch/i386/lib/hardwaremain.c +++ b/src/arch/i386/lib/hardwaremain.c @@ -164,6 +164,8 @@ static void wait_for_other_cpus(void) if (!(processor_map[i] & CPU_ENABLED)) { printk_err("CPU %d/%u did not initialize!\n", i, initial_apicid[i]); + processor_map[i] = 0; + mainboard_cpu_fixup(i); } } printk_debug("All AP CPUs stopped\n"); @@ -173,7 +175,7 @@ static void wait_for_other_cpus(void) #define wait_for_other_cpus() do {} while(0) #endif /* SMP */ -#if SMP && MAX_PHYSICAL_CPUS +#if SMP && MAX_PHYSICAL_CPUS && (MAX_PHYSICAL_CPUS < MAX_CPUS) static void remove_logical_cpus(void) { /* To turn off hyperthreading just remove the logical @@ -355,7 +357,6 @@ void hardwaremain(int boot_complete) /* to do: intel_serial_on(); */ - final_mainboard_fixup(); post_code(0xec); diff --git a/src/arch/i386/lib/pirq_routing.c b/src/arch/i386/lib/pirq_routing.c index adefb468ff..dd0e360c0d 100644 --- a/src/arch/i386/lib/pirq_routing.c +++ b/src/arch/i386/lib/pirq_routing.c @@ -13,6 +13,12 @@ void check_pirq_routing_table(void) printk_info("Checking IRQ routing tables...\n"); +#ifdef(IRQ_SLOT_COUNT) + if (sizeof(intel_irq_routing_table) != intel_irq_routing_table.size) { + printk_warning("Inconsistent IRQ routing table size\n"); + } +#endif + rt = &intel_irq_routing_table; addr = (u8 *)rt; @@ -51,7 +57,6 @@ void check_pirq_routing_table(void) printk_info("done.\n"); } -#endif int verify_copy_pirq_routing_table(unsigned long addr) { @@ -70,6 +75,9 @@ int verify_copy_pirq_routing_table(unsigned long addr) printk_info("succeed\n"); return 0; } +#else +#define verify_copy_pirq_routing_table(addr) +#endif unsigned long copy_pirq_routing_table(unsigned long addr) { @@ -84,4 +92,3 @@ unsigned long copy_pirq_routing_table(unsigned long addr) verify_copy_pirq_routing_table(addr); return addr + intel_irq_routing_table.size; } - diff --git a/src/arch/i386/smp/mpspec.c b/src/arch/i386/smp/mpspec.c index 1a6dcbf30a..1cff5498f1 100644 --- a/src/arch/i386/smp/mpspec.c +++ b/src/arch/i386/smp/mpspec.c @@ -113,6 +113,8 @@ void smp_write_processors(struct mp_config_table *mc, cpu_feature_flags = edx; for(i = 0; i < MAX_CPUS; i++) { unsigned long cpu_apicid = initial_apicid[i]; + if(initial_apicid[i]==-1) + continue; smp_write_processor(mc, cpu_apicid, apic_version, processor_map[i], cpu_features, cpu_feature_flags diff --git a/src/arch/i386/smp/start_stop.c b/src/arch/i386/smp/start_stop.c index e03ea56e81..018ec30705 100644 --- a/src/arch/i386/smp/start_stop.c +++ b/src/arch/i386/smp/start_stop.c @@ -231,6 +231,11 @@ void startup_other_cpus(unsigned long *processor_map) /* Assume the cpus are densly packed by apicid */ for(i = 0; i < MAX_CPUS; i++) { unsigned long cpu_apicid = initial_apicid[i]; + if (cpu_apicid == -1) { + printk_err("CPU %d not found\n",i); + processor_map[i] = 0; + continue; + } if (cpu_apicid == apicid ) { continue; } @@ -238,6 +243,7 @@ void startup_other_cpus(unsigned long *processor_map) /* Put an error in processor_map[i]? */ printk_err("CPU %d/%u would not start!\n", i, cpu_apicid); + processor_map[i] = 0; } } } diff --git a/src/config/Config b/src/config/Config index fcdb4973d4..6f8354943c 100644 --- a/src/config/Config +++ b/src/config/Config @@ -37,6 +37,9 @@ makerule linuxbios_c.o: $(DRIVERS-1) linuxbios.a $(LIBGCC_FILE_NAME) ; $(CC) -n makerule linuxbios_c: linuxbios_c.o $(TOP)/src/config/linuxbios_c.ld ldoptions ; $(CC) -nostdlib -nostartfiles -static -o $@ -T $(TOP)/src/config/linuxbios_c.ld linuxbios_c.o +## +## By default compress the C part of linuxbios +## option CONFIG_COMPRESS=1 expr CONFIG_UNCOMPRESSED=!CONFIG_COMPRESS makedefine LINUXBIOS_PAYLOAD-$(CONFIG_COMPRESS):=linuxbios_payload.nrv2b diff --git a/src/cpu/i786/i786_microcode_tables.c b/src/cpu/i786/i786_microcode_tables.c index d2750214ba..1ba35973dc 100644 --- a/src/cpu/i786/i786_microcode_tables.c +++ b/src/cpu/i786/i786_microcode_tables.c @@ -2,7 +2,6 @@ * */ - unsigned int microcode_updates [] = { /* Copyright Intel Corporation, 1995, 96, 97, 98, 99, 2000. @@ -14,277 +13,9 @@ unsigned int microcode_updates [] = { on such systems. You are not authorized to use this material for any other purpose. */ - - /* Intel xeon sig f24 pf 2 from m02f2410.txt */ - 0x000000001, /* Header Version */ - 0x000000010, /* Patch ID */ - 0x007192002, /* DATE */ - 0x000000f24, /* CPUID */ - 0x0789bb8d7, /* Checksum */ - 0x000000001, /* Loader Version */ - 0x000000002, /* Platform ID */ - 0x000000000, /* reserved */ - 0x000000000, /* reserved */ - 0x000000000, /* reserved */ - 0x000000000, /* reserved */ - 0x000000000, /* reserved */ - 0x0ffffffe9, 0x05715f121, 0x0440ce2fa, 0x0d5d090eb, - 0x070b3e977, 0x092320e8c, 0x04f989906, 0x036907442, - 0x0cc4b12e2, 0x0b456a6ae, 0x00ad5bcf7, 0x0e9f0a425, - 0x070b932d2, 0x0e66202c9, 0x0350f8d4b, 0x0d560a828, - 0x0763e8420, 0x04595b38a, 0x0a66d6637, 0x0e2adc7be, - 0x0c5d9515e, 0x07d6d08cd, 0x0c930e826, 0x0528d413f, - 0x0ce5ac17a, 0x086b9646b, 0x0e7845b29, 0x00c56e922, - 0x0ad8a85f2, 0x08e9d478d, 0x0d6faa7f5, 0x0da7ac699, - 0x010859ceb, 0x00c7c1cd8, 0x0fd7bc59d, 0x0b847dddd, - 0x0e545057b, 0x05af340d6, 0x01e2f8c45, 0x026c9c8c6, - 0x08b6ea51c, 0x075280c65, 0x0eb953366, 0x06400e75d, - 0x0fe0be614, 0x04b47f2ca, 0x0ac119100, 0x02f973c6e, - 0x0e3600377, 0x0e234bd6c, 0x06010f6fb, 0x0497c113b, - 0x010824bec, 0x0e897a508, 0x00de50694, 0x08202b8a6, - 0x07d2c657d, 0x0a82cd03c, 0x060947d1b, 0x0de88dfb8, - 0x0be799b59, 0x0cfdfd29e, 0x03d9ac639, 0x0fb674628, - 0x041988eba, 0x0700ebe34, 0x0019565b3, 0x0d3be034d, - 0x04366d795, 0x087f1131c, 0x01f2d001d, 0x063db664a, - 0x09a846727, 0x00b4b7370, 0x044941cd5, 0x0f5974d99, - 0x0fcd2d1a4, 0x0f4a458ea, 0x04edc79ff, 0x02eb36b1d, - 0x02b1bf369, 0x0fbe64d3d, 0x0c15f0935, 0x0c6ba263b, - 0x064320f87, 0x0ab342765, 0x054316d17, 0x09ee930d7, - 0x024a1a577, 0x0340dad94, 0x03c48afa2, 0x090373ff8, - 0x097f5be99, 0x0ba7bca44, 0x0ca4dae6c, 0x06e46a894, - 0x060f0f843, 0x07cdc8649, 0x03314dbd3, 0x0948e0f5c, - 0x0e29fe95c, 0x0afe80cef, 0x0864ea1b7, 0x075578a0f, - 0x00a908830, 0x0d354ef34, 0x0e57a2d1f, 0x09568c18b, - 0x0da0d7051, 0x0c32910d9, 0x03592ce94, 0x0e5b78410, - 0x0a08bf5b4, 0x068862085, 0x0f0147e1e, 0x0e676dfdd, - 0x0083b0d3f, 0x0a8594085, 0x00427d952, 0x008433d45, - 0x064bc994d, 0x04aef1348, 0x056121cb5, 0x0dea1295b, - 0x082edfc21, 0x0dee5f488, 0x0d7aa494b, 0x01b1a908c, - 0x00aa4ec23, 0x0b00cb03d, 0x07935f381, 0x0d7d03c6d, - 0x0f1acd28d, 0x0c3552afc, 0x06019f316, 0x0a2e40e1d, - 0x02c0e8a2d, 0x07d5097ae, 0x0e4e79555, 0x0fb3b4469, - 0x0d03ad54a, 0x0c1f2dab9, 0x036d22f7d, 0x015720655, - 0x00eb840e2, 0x063fc319a, 0x0fc99b4fc, 0x096aba0a6, - 0x0c264ca2d, 0x0937b3bf1, 0x03f15de0f, 0x0389dc588, - 0x01f58b599, 0x094de6fa9, 0x09cfb142f, 0x0cba182e0, - 0x0adde1620, 0x0e12e4fbe, 0x07a0fa14f, 0x0f464c742, - 0x0d65b2240, 0x0537e32c2, 0x0fae621a1, 0x0c814bdfd, - 0x027cd2a15, 0x0ca48efbf, 0x0f2befd43, 0x0125f5190, - 0x04fd50b0f, 0x051fe985e, 0x03acab851, 0x0f3f43b0f, - 0x06752ff24, 0x0cb6e48c3, 0x00c7b4e8f, 0x04cde4d0d, - 0x063f612e2, 0x0ae429cb5, 0x048175667, 0x0ad4c222b, - 0x065cfbc13, 0x0dc5c7f7a, 0x01c4ca18c, 0x09dd9940f, - 0x05df52ad4, 0x026dc7a9d, 0x040c2ef10, 0x0eee8cccd, - 0x0733f9d40, 0x0b0b2d287, 0x02c63d214, 0x0280a8a8c, - 0x07d79140b, 0x02bbad4bc, 0x013d77277, 0x0b3b27d18, - 0x051c9fc03, 0x0cceb6183, 0x0b3d40b0a, 0x06db2dea2, - 0x0e20c32de, 0x09f1a1bef, 0x049904f2a, 0x0c785676a, - 0x05193462d, 0x0db728f55, 0x06e011412, 0x0a29fde6f, - 0x02db8336e, 0x030cd1f0b, 0x0facf0b4e, 0x0f7594816, - 0x0ae3aaa8f, 0x0bd281afd, 0x03bee7d6a, 0x00f4aa235, - 0x00239def7, 0x00a27a699, 0x0f4593d2a, 0x0ccba9e40, - 0x044139d91, 0x0c92b308d, 0x033a788e1, 0x065cdf1cb, - 0x03193eac8, 0x0f4d29608, 0x048df9a08, 0x084f4666b, - 0x032dd3402, 0x08577079a, 0x07d86e147, 0x0a3ebdcf8, - 0x01671b672, 0x0617cf22c, 0x0cabc0826, 0x0d97544af, - 0x0de1246a0, 0x0a0f7a0e2, 0x0ba17cc9a, 0x0225d62c9, - 0x034777700, 0x07d2b36f8, 0x0144da38f, 0x0cab82ce4, - 0x00ec7f553, 0x0b9500f28, 0x0601b48d4, 0x06c23042d, - 0x096d63b58, 0x0e0465458, 0x04210e46c, 0x0fa8a12c5, - 0x0260b6716, 0x09eaacd55, 0x01ae1fb31, 0x0d8b61299, - 0x03608653c, 0x07af8888b, 0x064962804, 0x0e88d60cc, - 0x083784b2a, 0x0df50de8d, 0x072d79fec, 0x04cf109f8, - 0x0d19f7b44, 0x0323ce9f5, 0x0bc30d1f0, 0x0fdf68aa7, - 0x0105c51c7, 0x0c82d9c10, 0x070caaa5d, 0x04f9e40b5, - 0x00df8d32c, 0x0e8ac017d, 0x0c0ce9e3a, 0x0e3e614fa, - 0x03d09d4ac, 0x0d728b0de, 0x0bfbb6ac2, 0x098944bc0, - 0x09966a062, 0x07825e582, 0x0a48ae982, 0x0c63e9f3f, - 0x01e964e46, 0x08fa03130, 0x065bab214, 0x059ed2c27, - 0x0e171d297, 0x06bbcf48f, 0x0ec6d44a8, 0x0ef452345, - 0x03beeeccf, 0x0e6b61e6c, 0x039ff1edd, 0x031ab1a3c, - 0x03c4823bd, 0x0f046d111, 0x0dc77d7ab, 0x089e45e10, - 0x0acb472d8, 0x0bf7f62f2, 0x0e0f89ec4, 0x0b8722c2c, - 0x05277f745, 0x0090cc66f, 0x0c7615dbb, 0x0f019f628, - 0x06d9d1d6f, 0x0a3a11844, 0x06f4ed58c, 0x070ea5292, - 0x0b629584b, 0x081914eb0, 0x0619d1ef6, 0x08124cf57, - 0x0ea8fc589, 0x02cb0f8aa, 0x07be467a0, 0x0b61a2958, - 0x0d5586daa, 0x0abe9f60d, 0x0693ebd44, 0x02129bc82, - 0x04dc303e6, 0x079b717ef, 0x0ce04087f, 0x0f2bedb88, - 0x053c57df0, 0x0c62d43cb, 0x0a2721d91, 0x04d1315ad, - 0x06e398fb8, 0x09cd1c3c6, 0x04e887872, 0x08f3caf22, - 0x0a514e19a, 0x0ddd376ad, 0x09cf2fe8c, 0x0adde0e06, - 0x049fd5014, 0x00eac54c5, 0x054dbe117, 0x0cc227f52, - 0x0f1764002, 0x0f6bedffd, 0x06da0a736, 0x010cbac3b, - 0x0cf5ad71f, 0x03e647786, 0x09b675662, 0x0bfc85a6e, - 0x08c125ae4, 0x08ad8df36, 0x0f1f6eef0, 0x06e8e868c, - 0x09657d971, 0x0cd72893d, 0x0940b4748, 0x0d7020293, - 0x04e0a55b1, 0x0c65a6b72, 0x06231f2c5, 0x0f7fac755, - 0x02d36efd8, 0x019cf2803, 0x02066d5f8, 0x0914eda50, - 0x06121bdbd, 0x09bbd2fb6, 0x097b7a60e, 0x01241a2cc, - 0x09aaa0715, 0x06a44b718, 0x05ebb4d17, 0x0f1dc871f, - 0x04986b486, 0x0892bf0dc, 0x0e6b6062a, 0x0228745a9, - 0x05035cfe0, 0x0d4fa406b, 0x033a99806, 0x080a510f2, - 0x053310cbe, 0x0d4fb73af, 0x0200e09ce, 0x0c7b5f89a, - 0x06c5c857a, 0x0f736be54, 0x0d642ff8f, 0x0ec3f5f37, - 0x0748990cf, 0x0e5057b8a, 0x0911e4cd8, 0x00e8af6f3, - 0x0bec81837, 0x01d06db6d, 0x073c9dd43, 0x0a2405d52, - 0x01ee426b1, 0x013e87a88, 0x045e00e1a, 0x08e2a1ba3, - 0x0efeee771, 0x07db9f1ba, 0x0333b019c, 0x0e00c9308, - 0x00622f689, 0x081bba9be, 0x0fd316ec0, 0x0da2def1f, - 0x06a4945ea, 0x0f6359ec5, 0x0630bfba5, 0x0adff9610, - 0x0dd7c3d15, 0x03e728968, 0x0d74b8b49, 0x06dc94b9a, - 0x0b20f2765, 0x08041988e, 0x0272b5abc, 0x0f15cfd0d, - 0x00d729960, 0x01a2fae9a, 0x0cf3296e9, 0x03a290b05, - 0x0c3a504a6, 0x04aa31032, 0x0aadd73fd, 0x0a6790636, - 0x0f319a07f, 0x095d2d576, 0x06a61931a, 0x0ed892f8d, - 0x04ba30258, 0x0e5919b8a, 0x084f10bc5, 0x074cc3282, - 0x087890780, 0x068732cb2, 0x0f78ad447, 0x0e69573dc, - 0x0728beb36, 0x051c802a4, 0x0758de776, 0x05c6df037, - 0x06a06fb25, 0x0c4c4cf40, 0x045e58b0a, 0x0922d0480, - 0x07b51d9bb, 0x07d139ed7, 0x0f1216146, 0x0314b1efe, - 0x0084d7b08, 0x0844af3b6, 0x009e49a61, 0x0434a53b3, - 0x0b89bc367, 0x0ba0a92af, 0x0e56fe08d, 0x0310df486, - 0x04a9a69c4, 0x013a49875, 0x0bcecb5eb, 0x090098676, - 0x063a186b1, 0x07895a3a8, 0x0e2e74740, 0x0206610f0, - 0x01af249de, 0x0c86caf13, 0x0a0a09f28, 0x0daaefe51, - 0x06b74fab4, 0x0799a8893, 0x071dcc3db, 0x08e91b678, - 0x04fd05c58, 0x0d39f1956, 0x041d21e8f, 0x09214fe12, - 0x0d26d7c81, 0x0d1b4991c, 0x009917277, 0x0de60e0b1, - 0x0d535ce21, 0x09090fe6b, 0x0d2236db5, 0x0784808bd, - 0x013e6fbcb, 0x0ecb1bb25, 0x02c066d8c, 0x0dbd93a4a, - 0x09be0ff4b, 0x050460f00, 0x0e27da386, 0x0424b85d6, - -#if 0 - /* Intel xeon sig f24 pf 2 from m02f240c.txt */ - 0x000000001, 0x00000000c, 0x001142002, 0x000000f24, - 0x0d48cfbd0, 0x000000001, 0x000000002, 0x000000000, - 0x000000000, 0x000000000, 0x000000000, 0x000000000, - 0x03ba3b620, 0x0a519864c, 0x085c32bba, 0x0c9ec64b3, - 0x0d2094e66, 0x04c416dbe, 0x09479d025, 0x0968bf493, - 0x0852d79fb, 0x0c383bc7d, 0x031d3a540, 0x0615ad4f1, - 0x098eadde3, 0x0636d89b7, 0x08fd23fa0, 0x0f6f29448, - 0x012e2067d, 0x0b65167c4, 0x002f1098a, 0x04266c5fd, - 0x0427763bf, 0x00c9d0586, 0x004e5bec5, 0x0bd27c2cc, - 0x00cf1919b, 0x0422eac13, 0x09eb3ae5c, 0x030f6abd7, - 0x0060abd7c, 0x07d065d38, 0x0c9108ca6, 0x06b37a600, - 0x0f1258b0c, 0x010333644, 0x01b77caaf, 0x0531be24b, - 0x0c2ba71f6, 0x0db31e667, 0x0dd76719b, 0x024577144, - 0x034392aef, 0x0985f1d1f, 0x021b6cbd3, 0x0d1e7a88c, - 0x0829637e3, 0x077ebf885, 0x03c29cc9e, 0x0a64948b9, - 0x0fb55accc, 0x022a3817c, 0x00578e5e3, 0x0547dcbdf, - 0x07878bd77, 0x029e6f976, 0x028a0bbaf, 0x03d9fb722, - 0x0ca77143a, 0x09732a628, 0x096f9486f, 0x0385df464, - 0x094b006ff, 0x01b6eb6be, 0x03284051e, 0x0a090ca48, - 0x018e13300, 0x0838d6abf, 0x0d00b1865, 0x02ae449eb, - 0x0c809933a, 0x0b22cc2d6, 0x046ccfbb8, 0x085434f65, - 0x031105355, 0x0ab7c7374, 0x0419cdd53, 0x0b6e61d58, - 0x0f835040f, 0x02a10cbd6, 0x019971290, 0x09ef5b449, - 0x02a441065, 0x0943b9047, 0x08ad7874f, 0x01abf8ccd, - 0x0e21618f0, 0x0513712b4, 0x070162174, 0x09a9a51ac, - 0x022911a0c, 0x0a6e1b55c, 0x0a01bce90, 0x06eb6faa2, - 0x04c4a6a0d, 0x0e448846a, 0x0b017de2e, 0x0a42989e8, - 0x05ff21982, 0x0cebeec6d, 0x0fc8f6931, 0x0d7ba2360, - 0x0a13e37bb, 0x022a65ae4, 0x0f971a74f, 0x0e931550c, - 0x08229be21, 0x0c5d27957, 0x0796d9e0e, 0x037f97051, - 0x0889054d3, 0x05754f3e0, 0x0e54f1a10, 0x0e1169f58, - 0x05011e9b7, 0x0a21c74c7, 0x032a32783, 0x048bcec12, - 0x0893b6985, 0x0c4f556b6, 0x00b62ea56, 0x08bbdd3db, - 0x0b4fd7a19, 0x0d5a08db0, 0x06c0ac643, 0x0c62214d5, - 0x07c99abdb, 0x037dee80b, 0x0ce94186f, 0x0e3a8d0d0, - 0x0e8524995, 0x0f739b0e5, 0x07154adfa, 0x010ba00f3, - 0x0c730abc7, 0x016f8dab9, 0x0a908fef2, 0x0f84bc8fc, - 0x0ab952b25, 0x0e2f0eefa, 0x044ee25bc, 0x002a1a5d7, - 0x076b5d347, 0x0d4a6fc40, 0x087536b96, 0x0dad24f46, - 0x06052946e, 0x0dc58d7d8, 0x0a31d05c7, 0x0d5bb5605, - 0x0154312e4, 0x013cfb551, 0x0182f0f9f, 0x0d4662c48, - 0x0426de1de, 0x0d469e166, 0x05a07b89f, 0x037c4ef39, - 0x0ce84e135, 0x034c3f97f, 0x08cc22231, 0x0c8871e1b, - 0x0fd8f1410, 0x0dcc6616a, 0x04e0a14a6, 0x002154782, - 0x0620e1f5b, 0x0fe052d90, 0x0df429597, 0x0c04b1d16, - 0x0c26b5e5b, 0x0ad591811, 0x0a31ec26c, 0x0dfc42103, - 0x076a292f7, 0x072e0c290, 0x03741c569, 0x08b05777a, - 0x041331c49, 0x0fee2681e, 0x028ba204a, 0x0438968ba, - 0x0b54cfcfa, 0x0aa2baf81, 0x0d072651f, 0x0c9dff255, - 0x0a2e98718, 0x0501f4a62, 0x087666bd2, 0x09efbed2c, - 0x009829c14, 0x0d3b6d6d3, 0x0d968940b, 0x059db5c6d, - 0x063fbb096, 0x02fdba403, 0x06287601e, 0x0f8b7ba16, - 0x02cfbca86, 0x0c1a1648f, 0x01d77d1c6, 0x02f715f25, - 0x08aaca8f7, 0x0d352e3f2, 0x0f3a2b7aa, 0x0fab7e156, - 0x0cfbb8af7, 0x08bfb3424, 0x06b38dc66, 0x0c126a16c, - 0x07d5cce59, 0x04aec8bd6, 0x085971f8f, 0x0a79d231c, - 0x0a1faec0a, 0x0d6ce7959, 0x0d7a11ab9, 0x0761f13a3, - 0x01f692648, 0x00d046303, 0x07b86f4a5, 0x0deb111d4, - 0x083a5d908, 0x0eeedc4a3, 0x07d6a21db, 0x006ffb09e, - 0x0bcb08d01, 0x0f82562a2, 0x05dca37d8, 0x0dbe680c7, - 0x046b31156, 0x095ce7a24, 0x09c6406b1, 0x0e373b67a, - 0x05e5b3453, 0x06f010760, 0x07bc22e39, 0x08dfaace2, - 0x0e31d9f1e, 0x0d46fa3c7, 0x058cbbc33, 0x062fb533d, - 0x03bf8ad90, 0x001ab11ef, 0x067ec04bc, 0x0e6562e61, - 0x05df47ca8, 0x0eadeffa3, 0x00c94fab0, 0x0006b1470, - 0x026cf1b67, 0x0c1b3fc32, 0x0e3a9d53b, 0x0f7005fa3, - 0x099a625a9, 0x0d2683bfb, 0x093a0c66d, 0x0dbb99e7e, - 0x0a3df51c9, 0x0316727ff, 0x02a76ca17, 0x0c28a9862, - 0x0378825e9, 0x0e0797252, 0x0dc570291, 0x01906a916, - 0x0ba787885, 0x05d2a8263, 0x0e903ccdc, 0x0d85978ed, - 0x07f04833f, 0x0b98345be, 0x0afb1c7d3, 0x0784e5c04, - 0x039562c62, 0x0e3b98228, 0x089450baf, 0x082c9aa2a, - 0x01b5a28b6, 0x0d73355a1, 0x0f3ca1545, 0x0e7515de4, - 0x04f939870, 0x029412bac, 0x058f26ec9, 0x0f786c3af, - 0x04854fd56, 0x0e35d2910, 0x04705844c, 0x0018b4b92, - 0x058a0d721, 0x0761aa525, 0x0c7a8c9d5, 0x0d9d5ad05, - 0x0d09041e6, 0x09301fba7, 0x02807a710, 0x0519df013, - 0x01b93a8ba, 0x0e5598007, 0x02b85036d, 0x086043e27, - 0x07218c235, 0x0b5429b9e, 0x0147e7976, 0x0ed1c6ca7, - 0x035f619e8, 0x04869c1ee, 0x0ac9b83c0, 0x08b50fc49, - 0x070861339, 0x0d4f9baa1, 0x0ebf46af6, 0x070b5608a, - 0x0e2e91105, 0x010a2d12b, 0x02db2660e, 0x0f3f3685a, - 0x04b10988e, 0x0f9a0612a, 0x0d5531411, 0x03cb745bb, - 0x067d95743, 0x0d010061f, 0x0db3bf570, 0x0d48393ae, - 0x0300c5207, 0x0137359f0, 0x0dfa7b826, 0x0ff928c4f, - 0x08927f243, 0x0c7178d11, 0x07ca260f9, 0x01cf20f8b, - 0x00ee3fd74, 0x0cf5ac351, 0x0ff789d3c, 0x0e218e559, - 0x065f18964, 0x0c884e8e9, 0x01d602b89, 0x0c2f9a10d, - 0x0cf8ba902, 0x029b70348, 0x0754597a1, 0x0c49cdaba, - 0x03e11251e, 0x0ce5c24ba, 0x0c3eef460, 0x02459519b, - 0x0fc1a694b, 0x057e3c908, 0x08a219715, 0x0edda2787, - 0x0edf6dad8, 0x0babdb1e5, 0x0e84e7cb0, 0x07253eb99, - 0x04d65377f, 0x0d5d6aa0b, 0x04912f7ff, 0x099ff20a3, - 0x0b4c51260, 0x0e0682a6b, 0x06cea4448, 0x0d55d208b, - 0x016a07a38, 0x02067fd19, 0x04f9df2b3, 0x0dbc3dc0d, - 0x0c33b41bb, 0x0eec6f1c9, 0x0ed23a71b, 0x01cd86c54, - 0x0fc3826bd, 0x02b5d8619, 0x030fd94e9, 0x0c11a9dae, - 0x059298326, 0x0cc2fdb67, 0x07ad6f079, 0x036b0adfc, - 0x05a537f01, 0x0cbfb6a98, 0x0c55bd823, 0x0e5264bbb, - 0x03428766b, 0x09bcdbfb1, 0x0637cec9d, 0x0f67d80d0, - 0x0f0f6c228, 0x072c1fc13, 0x050314720, 0x014b205ae, - 0x03f640b13, 0x07f50bd6b, 0x054d58d80, 0x00565c47c, - 0x057f022bc, 0x067b3103e, 0x0a65a8440, 0x0fa93d7a4, - 0x0e8b42e02, 0x071ec20ba, 0x02ae1f62c, 0x03a946aa5, - 0x07271f934, 0x0af817e08, 0x0906e70c4, 0x04f252e64, - 0x0d5681a26, 0x0e1c30623, 0x09ad4bc55, 0x04f2e352e, - 0x0673eecbc, 0x033337dc2, 0x01e35da09, 0x000988a19, - 0x0b4e5ce4f, 0x0c6e0c340, 0x0c10f045d, 0x04191e0a0, - 0x0b5601253, 0x0d2551fdb, 0x050ac2076, 0x081452d88, - 0x07d551253, 0x04cdca2d8, 0x0b7020c83, 0x02db06e23, - 0x02123c5a6, 0x08b8e62ed, 0x0746d58bb, 0x09c89f662, - 0x00ffb3e12, 0x00d0879e8, 0x0d1c4b2af, 0x0748844b3, - 0x05eb3082f, 0x09f0dc508, 0x07400a8a3, 0x0322ad095, - 0x017c11f97, 0x08e2aa038, 0x02d0e57df, 0x0de1c0855, - 0x012ef7f76, 0x0140f6740, 0x0b0f7ed8c, 0x0502fdb0c, - 0x0e157364e, 0x0c7da4010, 0x0545b881a, 0x05842b53c, - 0x01ccf02a0, 0x070e17ce7, 0x001676bf1, 0x00aa92ad3, - 0x0c19d7711, 0x07c7eb9da, 0x0898f7fd5, 0x0735d129c, - 0x0be3fbd5d, 0x0c125ad59, 0x036110c1f, 0x02e878928, - 0x0e7c55e7a, 0x04ec17b9e, 0x0430389e3, 0x05bfdfe9b, - 0x0df113009, 0x0269dd868, 0x0eca2fb67, 0x06e029e38, - 0x0f8db6a41, 0x04ba79233, 0x0971476b9, 0x0c2802f06, - 0x0e95b9692, 0x071799e72, 0x04e203a26, 0x01ae50d11, - 0x0fbb33198, 0x0ed851b77, 0x0aa9b914e, 0x0e1a9a851, - 0x0a57c12a7, 0x0285cd80e, 0x08790eed8, 0x01ada78c4, - 0x0d2842f04, 0x0d1c6b6f4, 0x05aeb3ad9, 0x0483a0d1b, - 0x09cc18069, 0x03e4e4bc4, 0x0f28852a6, 0x0f818163d, - 0x0decfe14e, 0x05649bde9, 0x0949ea0d6, 0x063717b3f, -#endif +#include "microcode_m02f2410.c" /* microcode for CPUID f24, PI 02, Patch 0x10 */ +#include "microcode_m02f2728.c" /* microcode for CPUID f27, PI 02, Patch 0x28 */ +#include "microcode_m02f2203.c" /* microcode for CPUID f22, PI 02, Patch 0x03 */ }; diff --git a/src/cpu/i786/microcode_m02f2203.c b/src/cpu/i786/microcode_m02f2203.c new file mode 100644 index 0000000000..45de5d1d52 --- /dev/null +++ b/src/cpu/i786/microcode_m02f2203.c @@ -0,0 +1,513 @@ + /* from file m02f2203.txt */ + 0x000000001, // Header Version + 0x000000003, // Patch ID + 0x004062002, // DATE + 0x000000f22, // CPUID + 0x0664ee8e8, // Checksum + 0x000000001, // Loader Version + 0x000000002, // Platform ID + 0x000000000, // reserved + 0x000000000, // reserved + 0x000000000, // reserved + 0x000000000, // reserved + 0x000000000, // reserved + 0x0377de33f, + 0x01d618b92, + 0x0e61cc8ec, + 0x025bdbc5c, + 0x0ebb0b548, + 0x06ee11a02, + 0x0d14e18de, + 0x0f5e03a4f, + 0x04981631f, + 0x0b0df6b8b, + 0x03c8008c2, + 0x0f5a0a36b, + 0x08cd685ec, + 0x0e145d134, + 0x037a27f9f, + 0x022dcc294, + 0x0601d7784, + 0x03d5e32a8, + 0x0a492144c, + 0x06657dae6, + 0x0a4ce4415, + 0x074e3598c, + 0x01789ba2b, + 0x0e3834a55, + 0x0c2231988, + 0x0aa27a4ae, + 0x0114d2424, + 0x07589cecd, + 0x0caadbccf, + 0x0e0303485, + 0x0120df375, + 0x01e6bc5a7, + 0x028b214f7, + 0x02afafb93, + 0x069f91ee7, + 0x0aa458dd2, + 0x01725310e, + 0x08e031806, + 0x06fc04854, + 0x004d60f22, + 0x0c3f9a443, + 0x06a08d56a, + 0x0ccf7ad29, + 0x082c4a0da, + 0x0a42aa3a5, + 0x0b6bf9b3c, + 0x0d3a51840, + 0x0f9199ece, + 0x04efeca48, + 0x0a6bfccea, + 0x0a8059c00, + 0x0cf20feb3, + 0x09fa06479, + 0x0ba0445a1, + 0x0d99299fe, + 0x018070156, + 0x0343b5abc, + 0x0dbfc936f, + 0x0b7d1da3c, + 0x0c1e0163e, + 0x0d6959470, + 0x0226de13d, + 0x02e139add, + 0x05f43064b, + 0x0ce983b01, + 0x0bc342c48, + 0x0d9ec8404, + 0x09f1f147a, + 0x0c522f601, + 0x0941685c6, + 0x07a4e3e91, + 0x06f634c7e, + 0x0024bf95c, + 0x0b0d57cc0, + 0x0431f0d06, + 0x015609941, + 0x0b1f48eb8, + 0x01fd617e1, + 0x055a096fb, + 0x0e0295335, + 0x058f91fce, + 0x0a36f4c53, + 0x065590ba8, + 0x0d6a57716, + 0x0cf117678, + 0x0438bd8a6, + 0x0ac42c261, + 0x098d06a30, + 0x00d38a2c0, + 0x057a732a7, + 0x0ca0d4460, + 0x0a4e557cc, + 0x03e6f9c5d, + 0x0fdef3103, + 0x0ed9104f4, + 0x02a2ced76, + 0x0869c87f6, + 0x01e710fdf, + 0x04ef40d17, + 0x054bf6b84, + 0x046606228, + 0x010615915, + 0x05735682e, + 0x03480da05, + 0x0c07bc8ac, + 0x01012738e, + 0x0e3465cf3, + 0x081341a97, + 0x0934e1282, + 0x075ec3f41, + 0x0c5ea60c5, + 0x05c0afb0c, + 0x07731f128, + 0x02bc1c468, + 0x07ef85ad1, + 0x07a4f9311, + 0x00fe965b0, + 0x040bc930f, + 0x023e38027, + 0x0f9624477, + 0x0b65c0735, + 0x030e0d716, + 0x0e2c53914, + 0x0ba8abecc, + 0x0619d1103, + 0x0bd77536b, + 0x09ae818fa, + 0x0bc595a04, + 0x064cc8c46, + 0x0a555a73b, + 0x052e27c72, + 0x0c241a051, + 0x0bda999c7, + 0x054fbcbad, + 0x06781bb03, + 0x08bbf9806, + 0x07bd81ab5, + 0x0978054d9, + 0x00d2d4198, + 0x08be28922, + 0x0d4b1067e, + 0x09dbb52bd, + 0x03ddf0f34, + 0x075cca964, + 0x037dc6270, + 0x09dc8a692, + 0x080fc4514, + 0x054c9a832, + 0x084ddbc69, + 0x00ac3d725, + 0x009d8381e, + 0x0891aac6f, + 0x0dcd35e28, + 0x09ed405a3, + 0x0c099862e, + 0x0701e616f, + 0x0d1e4f9f7, + 0x0252690fc, + 0x0109f0ec8, + 0x0c2894c0b, + 0x0f528565d, + 0x0ec8dd34a, + 0x0961e7f8a, + 0x0a9ce0635, + 0x09bcffe26, + 0x067e08a77, + 0x00d1e13b5, + 0x0f102b8f9, + 0x0c46f8884, + 0x0e876ee7f, + 0x094a8de36, + 0x0449d3555, + 0x0cf6dfbbc, + 0x08740a116, + 0x0e9e838fe, + 0x0c8870163, + 0x012dd5605, + 0x0ab15f930, + 0x00b38c94c, + 0x0f2a70faf, + 0x0acd8acb3, + 0x0e5f84145, + 0x0b3721d0a, + 0x007c8afce, + 0x000fd2e3a, + 0x0c54c4695, + 0x02194cdbf, + 0x0fd5feb3f, + 0x05dedb9eb, + 0x0ad01df81, + 0x06bba699b, + 0x01cd736aa, + 0x005b4b6e7, + 0x0f170db07, + 0x0823a9983, + 0x04886461f, + 0x07a7f266b, + 0x0232b1209, + 0x08e48c22b, + 0x0dd54eda3, + 0x074eb5922, + 0x0bffddb2a, + 0x0d6d3a551, + 0x0a00c66ea, + 0x0feaa9c65, + 0x069b3f0f1, + 0x0467dcf38, + 0x0be819529, + 0x04ec7cd2f, + 0x0b77e3247, + 0x0ceaa22b5, + 0x08e51809b, + 0x0265fd218, + 0x0c70e0091, + 0x09642d9ef, + 0x0ee020d62, + 0x0770832d0, + 0x05085caf9, + 0x062f5c49e, + 0x0081af519, + 0x065607fde, + 0x0097386eb, + 0x0718f2e33, + 0x05f2f72ac, + 0x0460b4d33, + 0x084f73cbd, + 0x0de490896, + 0x0960e980a, + 0x051939fbc, + 0x0edb15e28, + 0x017c027ec, + 0x09012a039, + 0x0db29ee45, + 0x04b29253f, + 0x04802bbaf, + 0x006b1acfc, + 0x0972749b5, + 0x05b4906f7, + 0x0247eb936, + 0x0bbcd86c5, + 0x0d076e120, + 0x042a724d6, + 0x09fcb4abc, + 0x00dbb0214, + 0x006fc5700, + 0x00066d96c, + 0x0e7f787bf, + 0x0f40260c8, + 0x0f6b9aec7, + 0x063bc2fc7, + 0x054731138, + 0x0855aff40, + 0x08e90936c, + 0x01c248914, + 0x085e9a734, + 0x0b95428ac, + 0x07ace1ea4, + 0x0d2a00b9b, + 0x0c8d010ae, + 0x0bc486961, + 0x0bc247ea5, + 0x0e5ecce2c, + 0x0b04d8d96, + 0x056492f0e, + 0x017d42ee8, + 0x088e4f602, + 0x018309b49, + 0x00fbeaae6, + 0x02104532c, + 0x0fcd354b7, + 0x0bf05a589, + 0x0848d50d0, + 0x060c00a26, + 0x0ed5b1a58, + 0x08e6f15e5, + 0x0a2fd3ba9, + 0x0bd11eb0f, + 0x0a13c8c73, + 0x03e314454, + 0x0a55a2e36, + 0x05624ec02, + 0x07cdadfcb, + 0x0c404b866, + 0x0cf27534f, + 0x0ade78324, + 0x0153bc559, + 0x0388f0fe2, + 0x0d84a69f5, + 0x03f3ea295, + 0x0a425162a, + 0x02b00dfb7, + 0x0ad9c000f, + 0x027dc1459, + 0x08a2a224b, + 0x0b3628846, + 0x0e68a8168, + 0x085800f6d, + 0x04bc08c07, + 0x05930d67c, + 0x064f9bb38, + 0x09e1a5f6a, + 0x05b59e3af, + 0x0b65baf5b, + 0x00c33aab0, + 0x0da3458c6, + 0x0ab574a23, + 0x0b5f15e34, + 0x0e9caf076, + 0x0c9f740c3, + 0x0c6adc9f5, + 0x0f046920f, + 0x0a49b2ca7, + 0x0083b3f30, + 0x0d17f0742, + 0x00abea9b1, + 0x0d7a83756, + 0x0276d235b, + 0x07b2461d5, + 0x0e78d4341, + 0x0474a3a2b, + 0x0620402f1, + 0x0ad29ce1b, + 0x0a73bc19f, + 0x0c20ecdc6, + 0x0bf8bdae0, + 0x0457c7d70, + 0x083dc0fc0, + 0x0707b6a23, + 0x0bb2fc9c5, + 0x02ea50b16, + 0x0b3dba5ee, + 0x0b8ca98e7, + 0x0555e3750, + 0x0caa69ccd, + 0x040f84ca1, + 0x0f8fa5205, + 0x04aaea9d1, + 0x0410bc48b, + 0x094f8e471, + 0x085fdf713, + 0x0025fe222, + 0x038a1044f, + 0x0dacdbbef, + 0x0b5015882, + 0x056ab6bb5, + 0x0b2152d43, + 0x0fdf7db82, + 0x02e36515e, + 0x0ad01b0e5, + 0x067d3f0b2, + 0x015a14ce8, + 0x029abb6f6, + 0x0a0c632b9, + 0x03c6ce83e, + 0x06446e87c, + 0x014505c45, + 0x046ce3802, + 0x088d6fb38, + 0x020f7fc23, + 0x06a83fe4a, + 0x01f7f37f7, + 0x090a9a5fb, + 0x040e0adf0, + 0x0814e5c1e, + 0x078cc452c, + 0x037648002, + 0x05988959e, + 0x0bbaa19fd, + 0x0c121b46f, + 0x0ce92151e, + 0x0edf5b014, + 0x0fe0d20b0, + 0x04893118b, + 0x00378e532, + 0x0548a7cda, + 0x00b7d8b2c, + 0x0efc71f0f, + 0x06132e9ab, + 0x0cef71af6, + 0x065bc1c9e, + 0x0c6aaf262, + 0x0af387a4f, + 0x00cf65fd4, + 0x0c04ec9cf, + 0x0d2c2efb1, + 0x0192f4d47, + 0x06ac59280, + 0x0d49ab94e, + 0x0052d901c, + 0x07c2f1090, + 0x0b21ead2e, + 0x042710177, + 0x05967e722, + 0x0dedd9459, + 0x0e270eff1, + 0x04bf447cd, + 0x0027dd494, + 0x045d7ddaa, + 0x074400df4, + 0x01912fd71, + 0x0947c18ec, + 0x0faf5298d, + 0x01de16144, + 0x0627c2e4a, + 0x0fae7b523, + 0x06edc73b2, + 0x0af4fdf41, + 0x06c3ab948, + 0x083e9d603, + 0x0a57f809c, + 0x0404f32a3, + 0x018206e38, + 0x0daf619d4, + 0x04fe5e6ab, + 0x0c1b989dc, + 0x0576e7bb1, + 0x094290c71, + 0x071e9a429, + 0x00e3b7a76, + 0x0f87f203a, + 0x0c8328af9, + 0x0225c8b85, + 0x0ae9152e4, + 0x0be5098a9, + 0x0022c34bc, + 0x0a2428231, + 0x01516ddab, + 0x048521134, + 0x04f0831ea, + 0x0f0cf7c5f, + 0x0be4c22bd, + 0x0a26fe115, + 0x0cf27284a, + 0x0cf0452e6, + 0x071ae625c, + 0x0208f6eb3, + 0x0aef04760, + 0x063ae718b, + 0x026609177, + 0x0c920ab17, + 0x006a839de, + 0x0a51b4ed2, + 0x075e98487, + 0x04344aa11, + 0x0405a801e, + 0x027b38539, + 0x0357cd7b9, + 0x042c92121, + 0x0df67217c, + 0x08be79011, + 0x0cb3c12d6, + 0x05f67e891, + 0x062716f33, + 0x06b816be3, + 0x076dd3151, + 0x077a9f91e, + 0x0568feafa, + 0x0e8f975bf, + 0x0da317523, + 0x071259d6d, + 0x08fa429cb, + 0x0a15c62f1, + 0x0699b4747, + 0x09aac9b7e, + 0x05fcc2aff, + 0x07345e53c, + 0x0a1017201, + 0x02312089e, + 0x0bf6321de, + 0x029253d28, + 0x0846a0aa5, + 0x0e4c32754, + 0x0b2757cc1, + 0x019684827, + 0x082b4de7d, + 0x0651855d0, + 0x04dc73308, + 0x0ba6e7198, + 0x07e5f0058, + 0x01979bd22, + 0x0f101b11c, + 0x078cf5a53, + 0x0421158de, + 0x0ec657dd4, + 0x09d27f154, + 0x0dcd23639, + 0x09f574023, + 0x0d0b67fc9, + 0x08e62bb83, + 0x0c7e731de, + 0x01af9743f, + 0x0b8a9b5de, + 0x0bc7cce1e, + 0x042959190, + 0x0a0c932e5, + 0x0baa1e41e, + 0x04902b20c, + 0x05aadd04b, + 0x0135baf90, + 0x0ac599606, diff --git a/src/cpu/i786/microcode_m02f2410.c b/src/cpu/i786/microcode_m02f2410.c new file mode 100644 index 0000000000..c25c0ec8e5 --- /dev/null +++ b/src/cpu/i786/microcode_m02f2410.c @@ -0,0 +1,140 @@ + + /* Intel xeon sig f24 pf 2 from m02f2410.txt */ + 0x000000001, /* Header Version */ + 0x000000010, /* Patch ID */ + 0x007192002, /* DATE */ + 0x000000f24, /* CPUID */ + 0x0789bb8d7, /* Checksum */ + 0x000000001, /* Loader Version */ + 0x000000002, /* Platform ID */ + 0x000000000, /* reserved */ + 0x000000000, /* reserved */ + 0x000000000, /* reserved */ + 0x000000000, /* reserved */ + 0x000000000, /* reserved */ + 0x0ffffffe9, 0x05715f121, 0x0440ce2fa, 0x0d5d090eb, + 0x070b3e977, 0x092320e8c, 0x04f989906, 0x036907442, + 0x0cc4b12e2, 0x0b456a6ae, 0x00ad5bcf7, 0x0e9f0a425, + 0x070b932d2, 0x0e66202c9, 0x0350f8d4b, 0x0d560a828, + 0x0763e8420, 0x04595b38a, 0x0a66d6637, 0x0e2adc7be, + 0x0c5d9515e, 0x07d6d08cd, 0x0c930e826, 0x0528d413f, + 0x0ce5ac17a, 0x086b9646b, 0x0e7845b29, 0x00c56e922, + 0x0ad8a85f2, 0x08e9d478d, 0x0d6faa7f5, 0x0da7ac699, + 0x010859ceb, 0x00c7c1cd8, 0x0fd7bc59d, 0x0b847dddd, + 0x0e545057b, 0x05af340d6, 0x01e2f8c45, 0x026c9c8c6, + 0x08b6ea51c, 0x075280c65, 0x0eb953366, 0x06400e75d, + 0x0fe0be614, 0x04b47f2ca, 0x0ac119100, 0x02f973c6e, + 0x0e3600377, 0x0e234bd6c, 0x06010f6fb, 0x0497c113b, + 0x010824bec, 0x0e897a508, 0x00de50694, 0x08202b8a6, + 0x07d2c657d, 0x0a82cd03c, 0x060947d1b, 0x0de88dfb8, + 0x0be799b59, 0x0cfdfd29e, 0x03d9ac639, 0x0fb674628, + 0x041988eba, 0x0700ebe34, 0x0019565b3, 0x0d3be034d, + 0x04366d795, 0x087f1131c, 0x01f2d001d, 0x063db664a, + 0x09a846727, 0x00b4b7370, 0x044941cd5, 0x0f5974d99, + 0x0fcd2d1a4, 0x0f4a458ea, 0x04edc79ff, 0x02eb36b1d, + 0x02b1bf369, 0x0fbe64d3d, 0x0c15f0935, 0x0c6ba263b, + 0x064320f87, 0x0ab342765, 0x054316d17, 0x09ee930d7, + 0x024a1a577, 0x0340dad94, 0x03c48afa2, 0x090373ff8, + 0x097f5be99, 0x0ba7bca44, 0x0ca4dae6c, 0x06e46a894, + 0x060f0f843, 0x07cdc8649, 0x03314dbd3, 0x0948e0f5c, + 0x0e29fe95c, 0x0afe80cef, 0x0864ea1b7, 0x075578a0f, + 0x00a908830, 0x0d354ef34, 0x0e57a2d1f, 0x09568c18b, + 0x0da0d7051, 0x0c32910d9, 0x03592ce94, 0x0e5b78410, + 0x0a08bf5b4, 0x068862085, 0x0f0147e1e, 0x0e676dfdd, + 0x0083b0d3f, 0x0a8594085, 0x00427d952, 0x008433d45, + 0x064bc994d, 0x04aef1348, 0x056121cb5, 0x0dea1295b, + 0x082edfc21, 0x0dee5f488, 0x0d7aa494b, 0x01b1a908c, + 0x00aa4ec23, 0x0b00cb03d, 0x07935f381, 0x0d7d03c6d, + 0x0f1acd28d, 0x0c3552afc, 0x06019f316, 0x0a2e40e1d, + 0x02c0e8a2d, 0x07d5097ae, 0x0e4e79555, 0x0fb3b4469, + 0x0d03ad54a, 0x0c1f2dab9, 0x036d22f7d, 0x015720655, + 0x00eb840e2, 0x063fc319a, 0x0fc99b4fc, 0x096aba0a6, + 0x0c264ca2d, 0x0937b3bf1, 0x03f15de0f, 0x0389dc588, + 0x01f58b599, 0x094de6fa9, 0x09cfb142f, 0x0cba182e0, + 0x0adde1620, 0x0e12e4fbe, 0x07a0fa14f, 0x0f464c742, + 0x0d65b2240, 0x0537e32c2, 0x0fae621a1, 0x0c814bdfd, + 0x027cd2a15, 0x0ca48efbf, 0x0f2befd43, 0x0125f5190, + 0x04fd50b0f, 0x051fe985e, 0x03acab851, 0x0f3f43b0f, + 0x06752ff24, 0x0cb6e48c3, 0x00c7b4e8f, 0x04cde4d0d, + 0x063f612e2, 0x0ae429cb5, 0x048175667, 0x0ad4c222b, + 0x065cfbc13, 0x0dc5c7f7a, 0x01c4ca18c, 0x09dd9940f, + 0x05df52ad4, 0x026dc7a9d, 0x040c2ef10, 0x0eee8cccd, + 0x0733f9d40, 0x0b0b2d287, 0x02c63d214, 0x0280a8a8c, + 0x07d79140b, 0x02bbad4bc, 0x013d77277, 0x0b3b27d18, + 0x051c9fc03, 0x0cceb6183, 0x0b3d40b0a, 0x06db2dea2, + 0x0e20c32de, 0x09f1a1bef, 0x049904f2a, 0x0c785676a, + 0x05193462d, 0x0db728f55, 0x06e011412, 0x0a29fde6f, + 0x02db8336e, 0x030cd1f0b, 0x0facf0b4e, 0x0f7594816, + 0x0ae3aaa8f, 0x0bd281afd, 0x03bee7d6a, 0x00f4aa235, + 0x00239def7, 0x00a27a699, 0x0f4593d2a, 0x0ccba9e40, + 0x044139d91, 0x0c92b308d, 0x033a788e1, 0x065cdf1cb, + 0x03193eac8, 0x0f4d29608, 0x048df9a08, 0x084f4666b, + 0x032dd3402, 0x08577079a, 0x07d86e147, 0x0a3ebdcf8, + 0x01671b672, 0x0617cf22c, 0x0cabc0826, 0x0d97544af, + 0x0de1246a0, 0x0a0f7a0e2, 0x0ba17cc9a, 0x0225d62c9, + 0x034777700, 0x07d2b36f8, 0x0144da38f, 0x0cab82ce4, + 0x00ec7f553, 0x0b9500f28, 0x0601b48d4, 0x06c23042d, + 0x096d63b58, 0x0e0465458, 0x04210e46c, 0x0fa8a12c5, + 0x0260b6716, 0x09eaacd55, 0x01ae1fb31, 0x0d8b61299, + 0x03608653c, 0x07af8888b, 0x064962804, 0x0e88d60cc, + 0x083784b2a, 0x0df50de8d, 0x072d79fec, 0x04cf109f8, + 0x0d19f7b44, 0x0323ce9f5, 0x0bc30d1f0, 0x0fdf68aa7, + 0x0105c51c7, 0x0c82d9c10, 0x070caaa5d, 0x04f9e40b5, + 0x00df8d32c, 0x0e8ac017d, 0x0c0ce9e3a, 0x0e3e614fa, + 0x03d09d4ac, 0x0d728b0de, 0x0bfbb6ac2, 0x098944bc0, + 0x09966a062, 0x07825e582, 0x0a48ae982, 0x0c63e9f3f, + 0x01e964e46, 0x08fa03130, 0x065bab214, 0x059ed2c27, + 0x0e171d297, 0x06bbcf48f, 0x0ec6d44a8, 0x0ef452345, + 0x03beeeccf, 0x0e6b61e6c, 0x039ff1edd, 0x031ab1a3c, + 0x03c4823bd, 0x0f046d111, 0x0dc77d7ab, 0x089e45e10, + 0x0acb472d8, 0x0bf7f62f2, 0x0e0f89ec4, 0x0b8722c2c, + 0x05277f745, 0x0090cc66f, 0x0c7615dbb, 0x0f019f628, + 0x06d9d1d6f, 0x0a3a11844, 0x06f4ed58c, 0x070ea5292, + 0x0b629584b, 0x081914eb0, 0x0619d1ef6, 0x08124cf57, + 0x0ea8fc589, 0x02cb0f8aa, 0x07be467a0, 0x0b61a2958, + 0x0d5586daa, 0x0abe9f60d, 0x0693ebd44, 0x02129bc82, + 0x04dc303e6, 0x079b717ef, 0x0ce04087f, 0x0f2bedb88, + 0x053c57df0, 0x0c62d43cb, 0x0a2721d91, 0x04d1315ad, + 0x06e398fb8, 0x09cd1c3c6, 0x04e887872, 0x08f3caf22, + 0x0a514e19a, 0x0ddd376ad, 0x09cf2fe8c, 0x0adde0e06, + 0x049fd5014, 0x00eac54c5, 0x054dbe117, 0x0cc227f52, + 0x0f1764002, 0x0f6bedffd, 0x06da0a736, 0x010cbac3b, + 0x0cf5ad71f, 0x03e647786, 0x09b675662, 0x0bfc85a6e, + 0x08c125ae4, 0x08ad8df36, 0x0f1f6eef0, 0x06e8e868c, + 0x09657d971, 0x0cd72893d, 0x0940b4748, 0x0d7020293, + 0x04e0a55b1, 0x0c65a6b72, 0x06231f2c5, 0x0f7fac755, + 0x02d36efd8, 0x019cf2803, 0x02066d5f8, 0x0914eda50, + 0x06121bdbd, 0x09bbd2fb6, 0x097b7a60e, 0x01241a2cc, + 0x09aaa0715, 0x06a44b718, 0x05ebb4d17, 0x0f1dc871f, + 0x04986b486, 0x0892bf0dc, 0x0e6b6062a, 0x0228745a9, + 0x05035cfe0, 0x0d4fa406b, 0x033a99806, 0x080a510f2, + 0x053310cbe, 0x0d4fb73af, 0x0200e09ce, 0x0c7b5f89a, + 0x06c5c857a, 0x0f736be54, 0x0d642ff8f, 0x0ec3f5f37, + 0x0748990cf, 0x0e5057b8a, 0x0911e4cd8, 0x00e8af6f3, + 0x0bec81837, 0x01d06db6d, 0x073c9dd43, 0x0a2405d52, + 0x01ee426b1, 0x013e87a88, 0x045e00e1a, 0x08e2a1ba3, + 0x0efeee771, 0x07db9f1ba, 0x0333b019c, 0x0e00c9308, + 0x00622f689, 0x081bba9be, 0x0fd316ec0, 0x0da2def1f, + 0x06a4945ea, 0x0f6359ec5, 0x0630bfba5, 0x0adff9610, + 0x0dd7c3d15, 0x03e728968, 0x0d74b8b49, 0x06dc94b9a, + 0x0b20f2765, 0x08041988e, 0x0272b5abc, 0x0f15cfd0d, + 0x00d729960, 0x01a2fae9a, 0x0cf3296e9, 0x03a290b05, + 0x0c3a504a6, 0x04aa31032, 0x0aadd73fd, 0x0a6790636, + 0x0f319a07f, 0x095d2d576, 0x06a61931a, 0x0ed892f8d, + 0x04ba30258, 0x0e5919b8a, 0x084f10bc5, 0x074cc3282, + 0x087890780, 0x068732cb2, 0x0f78ad447, 0x0e69573dc, + 0x0728beb36, 0x051c802a4, 0x0758de776, 0x05c6df037, + 0x06a06fb25, 0x0c4c4cf40, 0x045e58b0a, 0x0922d0480, + 0x07b51d9bb, 0x07d139ed7, 0x0f1216146, 0x0314b1efe, + 0x0084d7b08, 0x0844af3b6, 0x009e49a61, 0x0434a53b3, + 0x0b89bc367, 0x0ba0a92af, 0x0e56fe08d, 0x0310df486, + 0x04a9a69c4, 0x013a49875, 0x0bcecb5eb, 0x090098676, + 0x063a186b1, 0x07895a3a8, 0x0e2e74740, 0x0206610f0, + 0x01af249de, 0x0c86caf13, 0x0a0a09f28, 0x0daaefe51, + 0x06b74fab4, 0x0799a8893, 0x071dcc3db, 0x08e91b678, + 0x04fd05c58, 0x0d39f1956, 0x041d21e8f, 0x09214fe12, + 0x0d26d7c81, 0x0d1b4991c, 0x009917277, 0x0de60e0b1, + 0x0d535ce21, 0x09090fe6b, 0x0d2236db5, 0x0784808bd, + 0x013e6fbcb, 0x0ecb1bb25, 0x02c066d8c, 0x0dbd93a4a, + 0x09be0ff4b, 0x050460f00, 0x0e27da386, 0x0424b85d6, + diff --git a/src/cpu/i786/microcode_m02f2728.c b/src/cpu/i786/microcode_m02f2728.c new file mode 100644 index 0000000000..95b91b1d6c --- /dev/null +++ b/src/cpu/i786/microcode_m02f2728.c @@ -0,0 +1,513 @@ + /* Intel xeon sig f24 pf 2 from m02f2410.txt */ + 0x000000001, // Header Version + 0x000000028, // Patch ID + 0x007222002, // DATE + 0x000000f27, // CPUID + 0x0f0564209, // Checksum + 0x000000001, // Loader Version + 0x000000002, // Platform ID + 0x000000000, // reserved + 0x000000000, // reserved + 0x000000000, // reserved + 0x000000000, // reserved + 0x000000000, // reserved + 0x0ffffffe9, + 0x00000005e, + 0x096f907f6, + 0x0aa368f02, + 0x0886f064e, + 0x0f3432dcb, + 0x08547bcf9, + 0x047ce518c, + 0x05643cca7, + 0x06c326791, + 0x00bf0c84b, + 0x065106a54, + 0x037adae8e, + 0x0ad3b82de, + 0x0c6fef325, + 0x004d82707, + 0x0f81ec787, + 0x070c19727, + 0x02c850ed8, + 0x0775f0391, + 0x001a07b67, + 0x0f401b1de, + 0x0634e9243, + 0x019ebd8d8, + 0x0ec29bcab, + 0x08568583e, + 0x075a2b1df, + 0x0c36370a9, + 0x0413f1c33, + 0x09353f364, + 0x072af0d33, + 0x032404eba, + 0x0d5f0e2a6, + 0x08ee2cd85, + 0x008b703c4, + 0x0680b6df3, + 0x09825683b, + 0x08ddf0c2a, + 0x095ccad64, + 0x0a64dda9a, + 0x099c3fe4d, + 0x0d5758d64, + 0x077f917da, + 0x0c2724189, + 0x0ada57e8a, + 0x0cd2d1775, + 0x06ddbd0bd, + 0x0bbfa6ac0, + 0x059f16bd3, + 0x0c40b7e58, + 0x0bb6fa16b, + 0x02dd33465, + 0x00f604b3b, + 0x0904a64dc, + 0x049d0a13b, + 0x0ce8336d0, + 0x008a51a53, + 0x03343c245, + 0x0a3b41126, + 0x0ca84e4f6, + 0x0ff466927, + 0x0048f403d, + 0x0bd8f63b7, + 0x07faaef40, + 0x019e43bc4, + 0x078154a50, + 0x0f016c616, + 0x0cb8ca8c6, + 0x09ebc8695, + 0x0be6a5a56, + 0x0fdf3edbe, + 0x07d8cb85d, + 0x0ae97a6e3, + 0x030c58e42, + 0x0075cba54, + 0x01076d2b3, + 0x0a3f12c69, + 0x01cc3acc4, + 0x01648fa92, + 0x0775e436e, + 0x08a72b6e1, + 0x0b6d0de93, + 0x04954b5b1, + 0x0ec6bdf39, + 0x0e1da2ed4, + 0x034f40f66, + 0x0660b428b, + 0x0b8bd391d, + 0x037d77876, + 0x04140076c, + 0x0e5b747a4, + 0x0f3f2fb37, + 0x072b5a1f8, + 0x05fbbe341, + 0x011ff256a, + 0x0dd64b0d7, + 0x016680f3a, + 0x08b5f61e7, + 0x0a2ee9221, + 0x0152bd2af, + 0x04ba620ec, + 0x06c1d443e, + 0x0b0d80763, + 0x089c1e517, + 0x091d63a95, + 0x08e8b921f, + 0x0908ed827, + 0x0fcb35cba, + 0x054d947ff, + 0x08a0c2b74, + 0x0bd45bd3a, + 0x09364ac39, + 0x09dac3b16, + 0x04235e676, + 0x06ef32ba4, + 0x0cd856fd9, + 0x0077b5cdd, + 0x06adee885, + 0x02f47aeb7, + 0x09916e84c, + 0x0794e79e2, + 0x0576d097f, + 0x040bfedce, + 0x0486c40a7, + 0x04563c59f, + 0x0f056c288, + 0x0e4a101e9, + 0x0d51220b8, + 0x05e1603f1, + 0x07733c794, + 0x0ca42178b, + 0x07df5fe7c, + 0x0a29bc8ae, + 0x0eed467f2, + 0x056cdac4e, + 0x085cb92ec, + 0x07a82e6b0, + 0x0c99ae145, + 0x089800cff, + 0x0b5cef343, + 0x0dfea9f1c, + 0x04d452eb6, + 0x0cfb04b69, + 0x07fe696ca, + 0x0b8b23891, + 0x03ff137d5, + 0x025cfdefc, + 0x0e9bb892d, + 0x0573d5587, + 0x098af70b7, + 0x0df739670, + 0x0cad744f2, + 0x0051f787a, + 0x05509563e, + 0x0c4cb60a3, + 0x053c595fb, + 0x0d11bd8b6, + 0x0a0ecec2f, + 0x0d3f35fc5, + 0x0ba12228a, + 0x050b3f0fd, + 0x0f8df7f14, + 0x0f059aea7, + 0x0ac62b793, + 0x0aa51f0fc, + 0x02c88ed46, + 0x02a7d6824, + 0x0418fd185, + 0x061e40fa0, + 0x007ae6581, + 0x0593247f5, + 0x0f81245ce, + 0x037620f69, + 0x0fc9d05e6, + 0x0652dc4d7, + 0x072c382f4, + 0x03ee90cda, + 0x04504c157, + 0x08e72df55, + 0x0fc8b1af4, + 0x037ff6f45, + 0x00cc513cf, + 0x054787a8b, + 0x0bbf92833, + 0x00f099745, + 0x005e0b452, + 0x05fd3a676, + 0x00e292c39, + 0x0d5403793, + 0x00543c6a6, + 0x0c1d89a05, + 0x082bad4d2, + 0x0d4a2f975, + 0x06057fe9c, + 0x00af202f2, + 0x00d358945, + 0x04e2c7453, + 0x080a635da, + 0x03c3edd1a, + 0x093adc35c, + 0x0ab8df389, + 0x031326689, + 0x02f653bea, + 0x086dfac6e, + 0x0b9b20ae2, + 0x037a3dc51, + 0x06bf9b64a, + 0x00a13a704, + 0x0712c6691, + 0x0c21b67f7, + 0x04233c993, + 0x0da705da3, + 0x0a0a68cbd, + 0x0f16816e1, + 0x0950e94f5, + 0x0f187809d, + 0x047b19692, + 0x0aadceb2c, + 0x0b52f1bcb, + 0x0d1bbcc3e, + 0x0f8c485ce, + 0x0c98e5b58, + 0x095faaf79, + 0x00b409dbe, + 0x06c0f1a8f, + 0x0ed84cbaf, + 0x090e2bfe1, + 0x016c9e73a, + 0x01f63849f, + 0x02251a57b, + 0x0eaa24cd0, + 0x06e6a6b5c, + 0x0ff10e11f, + 0x050f60b43, + 0x0134005ef, + 0x06f5d4e4b, + 0x047bf86e1, + 0x047e3ead3, + 0x086485bfc, + 0x0b0f95efa, + 0x0fe6d4562, + 0x07f927c86, + 0x02968f7af, + 0x0cdff3fd7, + 0x0dc857293, + 0x0bb140fae, + 0x0ab2d163e, + 0x05c47b64e, + 0x06c2af8db, + 0x0df38b67d, + 0x0f450c2c6, + 0x00ddb889f, + 0x0c1de1cbd, + 0x0098124d7, + 0x008bb90bb, + 0x0991008fd, + 0x0173c07db, + 0x06233f455, + 0x00fbd1de5, + 0x0d34c0d63, + 0x065c89419, + 0x0c3755799, + 0x0cce3e5fe, + 0x055e6fb5d, + 0x0c924feaa, + 0x0beb5f6a9, + 0x0a0b88522, + 0x0aa953166, + 0x0e90da187, + 0x04e013df5, + 0x0e79a5f7a, + 0x0ebd33690, + 0x0d34d6e03, + 0x0622aecac, + 0x0c4b8334e, + 0x060264bf1, + 0x0a47bba13, + 0x0ced31b68, + 0x05b59af47, + 0x0dc7029b5, + 0x0174d857a, + 0x05c9369aa, + 0x0e9ead1ca, + 0x058eda3c2, + 0x08388c276, + 0x019fbca67, + 0x0af66a53d, + 0x0f162693b, + 0x0672f5bc6, + 0x0dfb03404, + 0x0d42ed4da, + 0x0bf862d14, + 0x04b9f17c2, + 0x00d5f3a0a, + 0x07f0cd537, + 0x0b5c46a98, + 0x05d41d38d, + 0x0f64a219c, + 0x0f5b59e15, + 0x02cd134d8, + 0x0966c8661, + 0x0504fb339, + 0x02edeeb3d, + 0x08385aa21, + 0x06afa7bf9, + 0x07d6f2a81, + 0x0c35be851, + 0x026f51ef8, + 0x0db447baf, + 0x074beb6fc, + 0x092e561b4, + 0x0c0a38a59, + 0x0c5d3f32b, + 0x05cf96828, + 0x029793aaf, + 0x0e461b280, + 0x0a64c77d6, + 0x08f160a3a, + 0x0c4221b60, + 0x0a81c972f, + 0x0461638ce, + 0x0d5d9b0df, + 0x0d153775e, + 0x0f8588f2f, + 0x0cf3bbdc6, + 0x0b4ae2e08, + 0x0f06d37ca, + 0x0422e04a9, + 0x056ae9418, + 0x0a03745c5, + 0x033f5b799, + 0x0ed11ecbe, + 0x0d9552be7, + 0x057a4addf, + 0x0db3b60d4, + 0x082ac7181, + 0x086e671ff, + 0x08c614373, + 0x092be4ccc, + 0x03813576e, + 0x0c41ade20, + 0x0ec37b698, + 0x007ee48be, + 0x035ee922b, + 0x0dee912df, + 0x0f358e19c, + 0x057339b4e, + 0x037e97394, + 0x0d6a3882d, + 0x04e4e6bf6, + 0x0f42dd2d3, + 0x02e073e4a, + 0x0aabc06fa, + 0x0694c9886, + 0x0003b29a9, + 0x002b2de3d, + 0x0ab86db67, + 0x030868d97, + 0x0b223fb7f, + 0x05506cbb5, + 0x0f80fe1b5, + 0x0ea2798ed, + 0x08fb3392e, + 0x0f05fbbc9, + 0x0ba81fa3a, + 0x0314aa3f2, + 0x0b65900f9, + 0x00a4ae3df, + 0x04af0aa61, + 0x05d6f941f, + 0x07f3f9ca0, + 0x03740f88c, + 0x048d28c54, + 0x0c5720e9f, + 0x079b1da77, + 0x041663d91, + 0x018fe7617, + 0x0e85d9785, + 0x086127c77, + 0x095ff39e8, + 0x02d725dd4, + 0x0427bf370, + 0x0c5498ac7, + 0x02f3e312c, + 0x08fc079d7, + 0x0913754e6, + 0x0048796dc, + 0x08c4981b6, + 0x002c4aec8, + 0x07d2b809b, + 0x09730d177, + 0x0aeb7606c, + 0x004e82b37, + 0x08aa09ee7, + 0x04e913d85, + 0x0a7bbfc36, + 0x04aea998d, + 0x0878be408, + 0x0a97f1576, + 0x014a306c4, + 0x071874f1e, + 0x0d39352ee, + 0x0014ee496, + 0x05efc521d, + 0x015625553, + 0x03541f36d, + 0x02eda2872, + 0x074784483, + 0x0c83d481b, + 0x0ebd08496, + 0x06c99f041, + 0x0059a1da5, + 0x0589f0792, + 0x0222201de, + 0x0ca209b2c, + 0x02f11fad4, + 0x048da2638, + 0x04c197f69, + 0x0eb1dc551, + 0x05905d2ee, + 0x00fc62715, + 0x07c1e2170, + 0x0983adf75, + 0x03f75fcf1, + 0x039253d5a, + 0x063d7005a, + 0x0078b84ff, + 0x01cede3c5, + 0x0451cb497, + 0x0475d396a, + 0x08df12dd0, + 0x0d177deaa, + 0x0cf044d07, + 0x0071ad974, + 0x0fdbf72c0, + 0x05d242e8d, + 0x0371d0ace, + 0x05f2e3894, + 0x09799c488, + 0x07a9ca254, + 0x03753e005, + 0x08feda5b2, + 0x011090521, + 0x02a09d3b8, + 0x091600588, + 0x06a148114, + 0x08995f3e9, + 0x0e48c6736, + 0x026a1e9d3, + 0x007966973, + 0x04fed433b, + 0x0932dbb4c, + 0x078323c3c, + 0x044cfad34, + 0x0cc9b3589, + 0x0c618aec8, + 0x05cfbae87, + 0x008bd8afb, + 0x0627537f5, + 0x08ec1f9c2, + 0x01599f101, + 0x0fbdc5c6c, + 0x0fa2a1299, + 0x0fd795bb4, + 0x01c7b1099, + 0x0fb48425b, + 0x09e8cfbab, + 0x0a0daba12, + 0x0b58dc099, + 0x0aeb5c98e, + 0x0b135dacd, + 0x0479b5fee, + 0x044176521, + 0x02ec945c3, + 0x06676039a, + 0x0404b94c4, + 0x07a2af612, + 0x049a25c93, + 0x0b68d6368, + 0x0e1ff29fa, + 0x0ce0cfd3a, + 0x0441ba46d, + 0x0f31a0b4d, + 0x07ce7423e, + 0x00ebb707c, + 0x0a20be4ee, + 0x0d72dff27, + 0x01e8ea782, + 0x0880ca3af, + 0x0e7f73ae6, + 0x04c66c3b8, + 0x03fca28af, + 0x0f4eae9a2, + 0x04f8411d8, + 0x05c04699f, + 0x0be3c49b0, + 0x066f562cf, + 0x0b62e6c85, + 0x08c0ad586, + 0x058e6a6ae, diff --git a/src/cpu/k7/cpufixup.c b/src/cpu/k7/cpufixup.c index 0a53c58591..544a786318 100644 --- a/src/cpu/k7/cpufixup.c +++ b/src/cpu/k7/cpufixup.c @@ -3,14 +3,12 @@ #include #include #include +#include #define TOP_MEM 0xc001001A #define TOP_MEM2 0xc001001D #define IORR_FIRST 0xC0010016 #define IORR_LAST 0xC0010019 -#define SYSCFG 0xC0010010 - -#define MTRRVARDRAMEN (1 << 20) void k7_cpufixup(struct mem_range *mem) { @@ -50,11 +48,12 @@ void k7_cpufixup(struct mem_range *mem) for (i = IORR_FIRST; i <= IORR_LAST; i++) wrmsr(i, lo, hi); - rdmsr(SYSCFG, lo, hi); + rdmsr(SYSCFG_MSR, lo, hi); printk_spew("SYSCFG was 0x%x:0x%x\n", hi, lo); - lo |= MTRRVARDRAMEN; - wrmsr(SYSCFG, lo, hi); - rdmsr(SYSCFG, lo, hi); + lo |= SYSCFG_MSR_MtrrVarDramEn; + lo |= SYSCFG_MSR_SysEccEn; + wrmsr(SYSCFG_MSR, lo, hi); + rdmsr(SYSCFG_MSR, lo, hi); printk_spew("SYSCFG IS NOW 0x%x:0x%x\n", hi, lo); } diff --git a/src/include/part/mainboard.h b/src/include/part/mainboard.h index 1a364560e8..dcc3ee1f3b 100644 --- a/src/include/part/mainboard.h +++ b/src/include/part/mainboard.h @@ -9,4 +9,10 @@ void final_mainboard_fixup(void); # define final_mainboard_fixup() do {} while(0) #endif /* FINAL_MAINBOARD_FIXUP */ +#ifdef HAVE_MAINBOARD_CPU_FIXUP +void mainboard_cpu_fixup(int); +#else +# define mainboard_cpu_fixup(x) do {} while(0) +#endif /* HAVE_MAINBOARD_CPU_FIXUP */ + #endif /* PART_MAINBOARD_H */ diff --git a/src/include/pc80/mc146818rtc.h b/src/include/pc80/mc146818rtc.h index 726734f364..1daf39aa25 100644 --- a/src/include/pc80/mc146818rtc.h +++ b/src/include/pc80/mc146818rtc.h @@ -13,6 +13,12 @@ #define PC_CKS_LOC 46 +/* Linux bios checksum is built only over bytes 49..125 */ +#define LB_CKS_RANGE_START 49 +#define LB_CKS_RANGE_END 125 +#define LB_CKS_LOC 126 + + /* control registers - Moto names */ #define RTC_REG_A 10 diff --git a/src/include/pci_ids.h b/src/include/pci_ids.h index 1a2da5bb92..91831b55df 100644 --- a/src/include/pci_ids.h +++ b/src/include/pci_ids.h @@ -204,6 +204,8 @@ #define PCI_DEVICE_ID_ATI_215_LR 0x4c52 #define PCI_DEVICE_ID_ATI_215_LS 0x4c53 #define PCI_DEVICE_ID_ATI_264_LT 0x4c54 +#define PCI_DEVICE_ID_ATI_215LG 0x4c47 +#define PCI_DEVICE_ID_ATI_264LT 0x4c54 /* Mach64 VT */ #define PCI_DEVICE_ID_ATI_264VT 0x5654 #define PCI_DEVICE_ID_ATI_264VU 0x5655 @@ -386,6 +388,12 @@ #define PCI_DEVICE_ID_AMD_VIPER_7410 0x7410 #define PCI_DEVICE_ID_AMD_VIPER_7411 0x7411 +#define PCI_DEVICE_ID_AMD_SB768_7440 0x7440 +#define PCI_DEVICE_ID_AMD_SB768_7441 0x7441 +#define PCI_DEVICE_ID_AMD_SB768_7443 0x7443 +#define PCI_DEVICE_ID_AMD_SB768_7448 0x7448 +#define PCI_DEVICE_ID_AMD_SB768_7449 0x7449 + #define PCI_DEVICE_ID_AMD_VIPER_7413 0x7413 #define PCI_DEVICE_ID_AMD_VIPER_7414 0x7414 #define PCI_DEVICE_ID_AMD_VIPER_7440 0x7440 @@ -637,6 +645,10 @@ #define PCI_DEVICE_ID_X_AGX016 0x0001 #define PCI_VENDOR_ID_MYLEX 0x1069 +#define PCI_DEVICE_ID_MYLEX_DAC960P_V2 0x0001 +#define PCI_DEVICE_ID_MYLEX_DAC960P_V3 0x0002 +#define PCI_DEVICE_ID_MYLEX_DAC960P_V4 0x0010 +#define PCI_DEVICE_ID_MYLEX_DAC960P_V5 0x0020 #define PCI_DEVICE_ID_MYLEX_DAC960_P 0x0001 #define PCI_DEVICE_ID_MYLEX_DAC960_PD 0x0002 #define PCI_DEVICE_ID_MYLEX_DAC960_PG 0x0010 @@ -766,6 +778,7 @@ #define PCI_DEVICE_ID_DATABOOK_87144 0xb106 #define PCI_VENDOR_ID_PLX 0x10b5 +#define PCI_VENDOR_ID_PLX_ROMULUS 0x106a #define PCI_DEVICE_ID_PLX_R685 0x1030 #define PCI_DEVICE_ID_PLX_ROMULUS 0x106a #define PCI_DEVICE_ID_PLX_SPCOM800 0x1076 @@ -914,6 +927,7 @@ #define PCI_DEVICE_ID_REALTEK_8129 0x8129 #define PCI_DEVICE_ID_REALTEK_8139 0x8139 +#define PCI_VENDOR_ID_TYAN 0x10f1 #define PCI_VENDOR_ID_XILINX 0x10ee #define PCI_DEVICE_ID_TURBOPAM 0x4020 @@ -1187,6 +1201,8 @@ #define PCI_VENDOR_ID_V3 0x11b0 #define PCI_DEVICE_ID_V3_V960 0x0001 #define PCI_DEVICE_ID_V3_V350 0x0001 +#define PCI_DEVICE_ID_V3_V960V2 0x0002 +#define PCI_DEVICE_ID_V3_V350V2 0x0002 #define PCI_DEVICE_ID_V3_V961 0x0002 #define PCI_DEVICE_ID_V3_V351 0x0002 @@ -1307,6 +1323,7 @@ #define PCI_VENDOR_ID_ENSONIQ 0x1274 #define PCI_DEVICE_ID_ENSONIQ_CT5880 0x5880 +#define PCI_DEVICE_ID_ENSONIQ_AUDIOPCI 0x5000 #define PCI_DEVICE_ID_ENSONIQ_ES1370 0x5000 #define PCI_DEVICE_ID_ENSONIQ_ES1371 0x1371 @@ -1527,6 +1544,7 @@ #define PCI_DEVICE_ID_PANACOM_DUALMODEM 0x0402 #define PCI_VENDOR_ID_AFAVLAB 0x14db +#define PCI_DEVICE_ID_AFAVLAB_TK9902 0x2120 #define PCI_DEVICE_ID_AFAVLAB_P028 0x2180 #define PCI_VENDOR_ID_BROADCOM 0x14e4 @@ -1662,6 +1680,30 @@ #define PCI_DEVICE_ID_INTEL_82801AB_5 0x2425 #define PCI_DEVICE_ID_INTEL_82801AB_6 0x2426 #define PCI_DEVICE_ID_INTEL_82801AB_8 0x2428 +#define PCI_DEVICE_ID_INTEL_82801BA_1E0 0x244e +#define PCI_DEVICE_ID_INTEL_82801BA_1F0 0x2440 +#define PCI_DEVICE_ID_INTEL_82801BA_1F1 0x244b +#define PCI_DEVICE_ID_INTEL_82801BA_1F2 0x2442 +#define PCI_DEVICE_ID_INTEL_82801BA_1F3 0x2443 +#define PCI_DEVICE_ID_INTEL_82801BA_1F4 0x2444 +#define PCI_DEVICE_ID_INTEL_82801BA_1F5 0x2445 +#define PCI_DEVICE_ID_INTEL_82801CA_1E0 0x244e +#define PCI_DEVICE_ID_INTEL_82801CA_1F0 0x2480 +#define PCI_DEVICE_ID_INTEL_82801CA_1F1 0x248b +#define PCI_DEVICE_ID_INTEL_82801CA_1D0 0x2482 +#define PCI_DEVICE_ID_INTEL_82801CA_1F3 0x2483 +#define PCI_DEVICE_ID_INTEL_82801CA_1D1 0x2484 +#define PCI_DEVICE_ID_INTEL_82801CA_1F5 0x2485 +#define PCI_DEVICE_ID_INTEL_82801CA_1D2 0x2487 +#define PCI_DEVICE_ID_INTEL_82870_1E0 0x1461 +#define PCI_DEVICE_ID_INTEL_82870_1F0 0x1460 +#define PCI_DEVICE_ID_INTEL_82820FW_0 0x2440 +#define PCI_DEVICE_ID_INTEL_82820FW_1 0x2442 +#define PCI_DEVICE_ID_INTEL_82820FW_2 0x2443 +#define PCI_DEVICE_ID_INTEL_82820FW_3 0x2444 +#define PCI_DEVICE_ID_INTEL_82820FW_4 0x2449 +#define PCI_DEVICE_ID_INTEL_82820FW_5 0x244b +#define PCI_DEVICE_ID_INTEL_82820FW_6 0x244e #define PCI_DEVICE_ID_INTEL_82801BA_0 0x2440 #define PCI_DEVICE_ID_INTEL_82801BA_1 0x2442 #define PCI_DEVICE_ID_INTEL_82801BA_2 0x2443 diff --git a/src/lib/fallback_boot.c b/src/lib/fallback_boot.c index d1a65655d3..e10495593d 100644 --- a/src/lib/fallback_boot.c +++ b/src/lib/fallback_boot.c @@ -17,5 +17,9 @@ void boot_successful(void) byte = inb(RTC_PORT(1)); byte &= 0xfe; byte |= (byte & 2) >> 1; + + /* If we are in normal mode set the boot count to 0 */ + if(byte & 1) + byte &= 0x0f; outb(byte, RTC_PORT(1)); } diff --git a/src/lib/linuxpci.c b/src/lib/linuxpci.c index 7c767f4f0d..8b24e741dc 100644 --- a/src/lib/linuxpci.c +++ b/src/lib/linuxpci.c @@ -202,13 +202,30 @@ static void pci_get_resource(struct pci_dev *dev, struct resource *resource, uns resource->limit = 0x000fffffUL; } else if (type == PCI_BASE_ADDRESS_MEM_TYPE_64) { + unsigned long index_hi; /* 64bit limit * For now just treat this as a 32bit limit */ + index_hi = index + 4; resource->limit = 0xffffffffUL; resource->flags |= IORESOURCE_PCI64; - pci_read_config_dword(dev, index +4, &addr); - if (addr) { + pci_read_config_dword( dev, index_hi, &addr); + /* get the extended size */ + pci_write_config_dword(dev, index_hi, 0xffffffffUL); + pci_read_config_dword( dev, index_hi, &size); + + /* get the minimum value the bar can be set to */ + pci_write_config_dword(dev, index_hi, 0); + pci_read_config_dword(dev, index_hi, &base); + + /* restore addr */ + pci_write_config_dword(dev, index_hi, addr); + + if ((size == 0xffffffff) && (base == 0)) { + /* Clear the top half of the bar */ + pci_write_config_dword(dev, index_hi, 0); + } + else { printk_err("PCI: %02x:%02x.%01x Unable to handle 64-bit address\n", dev->bus->secondary, PCI_SLOT(dev->devfn), PCI_FUNC(dev->devfn)); @@ -417,6 +434,7 @@ static void pci_set_resource(struct pci_dev *dev, struct resource *resource) buf, (resource->flags & IORESOURCE_IO)? "io": (resource->flags & IORESOURCE_PREFETCH)? "prefmem": "mem"); + return; } static void pci_dev_set_resources(struct pci_dev *dev)