Factor out common mptable code to mptable_init().
[coreboot.git] / util / mptable / mptable.c
index 9457c3834ceb81efb52371b34d8216e96b05dfbf..ebdcb3070dd452c77d855c625d09eb60b4124d55 100644 (file)
@@ -307,27 +307,11 @@ char *preamble[] = {
 "",
 "static void *smp_write_config_table(void *v)",
 "{",
-"        static const char sig[4] = \"PCMP\";",
-"        static const char oem[8] = \"LNXI    \";",
-"        static const char productid[12] = \"P4DPE       \";",
 "        struct mp_config_table *mc;",
 "",
 "        mc = (void *)(((char *)v) + SMP_FLOATING_TABLE_LEN);",
-"        memset(mc, 0, sizeof(*mc));",
 "",
-"        memcpy(mc->mpc_signature, sig, sizeof(sig));",
-"        mc->mpc_length = sizeof(*mc); /* initially just the header */",
-"        mc->mpc_spec = 0x04;",
-"        mc->mpc_checksum = 0; /* not yet computed */",
-"        memcpy(mc->mpc_oem, oem, sizeof(oem));",
-"        memcpy(mc->mpc_productid, productid, sizeof(productid));",
-"        mc->mpc_oemptr = 0;",
-"        mc->mpc_oemsize = 0;",
-"        mc->mpc_entry_count = 0; /* No entries yet... */",
-"        mc->mpc_lapic = LAPIC_ADDR;",
-"        mc->mpe_length = 0;",
-"        mc->mpe_checksum = 0;",
-"        mc->reserved = 0;",
+"        mptable_init(mc, \"TODO        \", LAPIC_ADDR);",
 "",
 "        smp_write_processors(mc);",
 "",