Fix HIGH_TABLES introduced error when compiling without MP table

Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3998 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Myles Watson 2009-03-12 17:42:20 +00:00 committed by Stefan Reinauer
parent 30140a59f7
commit 47e42e5ebb
1 changed files with 3 additions and 2 deletions

View File

@ -122,6 +122,8 @@ struct lb_memory *write_tables(void)
/* copy the smp block to address 0 */
post_code(0x96);
#if HAVE_MP_TABLE == 1
/* The smp table must be in 0-1K, 639K-640K, or 960K-1M */
#if HAVE_LOW_TABLES == 1
new_low_table_end = write_smp_table(low_table_end); // low_table_end is 0x10 at this point
@ -133,7 +135,6 @@ struct lb_memory *write_tables(void)
}
#endif
#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
* or use 0x40e/0x413 for EBDA finding...
@ -160,7 +161,7 @@ struct lb_memory *write_tables(void)
smp_write_floating_table_physaddr(low_table_end - SMP_FLOATING_TABLE_LEN, mpc_start);
memset((unsigned char *)low_table_end, '\0', mptable_size);
}
#endif
#endif /* HAVE_MP_TABLE */
if (low_table_end < 0x500) {
low_table_end = 0x500;