summaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
authorStefan Reinauer <stepan@openbios.org>2006-07-19 16:58:43 +0000
committerStefan Reinauer <stepan@openbios.org>2006-07-19 16:58:43 +0000
commit87f194dd9e2977b0f3a274706b7f2b4795615c7d (patch)
treed847fb80ef6026a5b6f385d601d316ee425964cd /src/arch
parent4f1cb2342630e806399b2febafc8c215a8bf6059 (diff)
this code is for writing the mp table, so only execute it when
we actually have one. git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2343 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/boot/tables.c2
-rw-r--r--src/arch/i386/include/arch/smp/mpspec.h2
2 files changed, 4 insertions, 0 deletions
diff --git a/src/arch/i386/boot/tables.c b/src/arch/i386/boot/tables.c
index 8abac2b748..e43d49d124 100644
--- a/src/arch/i386/boot/tables.c
+++ b/src/arch/i386/boot/tables.c
@@ -69,6 +69,7 @@ struct lb_memory *write_tables(void)
/* The smp table must be in 0-1K, 639K-640K, or 960K-1M */
new_low_table_end = write_smp_table(low_table_end);
+#if HAVE_MP_TABLE==1
/* Don't write anything in the traditional x86 BIOS data segment,
* for example the linux kernel smp need to use 0x467 to pass reset vector
*/
@@ -93,6 +94,7 @@ struct lb_memory *write_tables(void)
low_table_end = 0x500 + mptable_size;
}
}
+#endif
/* Don't write anything in the traditional x86 BIOS data segment */
if (low_table_end < 0x500) {
diff --git a/src/arch/i386/include/arch/smp/mpspec.h b/src/arch/i386/include/arch/smp/mpspec.h
index 32ed2d752a..600a584514 100644
--- a/src/arch/i386/include/arch/smp/mpspec.h
+++ b/src/arch/i386/include/arch/smp/mpspec.h
@@ -264,6 +264,8 @@ void smp_write_compatibility_address_space(struct mp_config_table *mc,
unsigned int range_list);
unsigned char smp_compute_checksum(void *v, int len);
void *smp_write_floating_table(unsigned long addr);
+void *smp_write_floating_table_physaddr(unsigned long addr,
+ unsigned long mpf_physptr);
unsigned long write_smp_table(unsigned long addr);
#else /* HAVE_MP_TABLE */