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
This commit is contained in:
@ -69,6 +69,7 @@ struct lb_memory *write_tables(void)
|
|||||||
/* The smp table must be in 0-1K, 639K-640K, or 960K-1M */
|
/* The smp table must be in 0-1K, 639K-640K, or 960K-1M */
|
||||||
new_low_table_end = write_smp_table(low_table_end);
|
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,
|
/* 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
|
* 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;
|
low_table_end = 0x500 + mptable_size;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Don't write anything in the traditional x86 BIOS data segment */
|
/* Don't write anything in the traditional x86 BIOS data segment */
|
||||||
if (low_table_end < 0x500) {
|
if (low_table_end < 0x500) {
|
||||||
|
@ -264,6 +264,8 @@ void smp_write_compatibility_address_space(struct mp_config_table *mc,
|
|||||||
unsigned int range_list);
|
unsigned int range_list);
|
||||||
unsigned char smp_compute_checksum(void *v, int len);
|
unsigned char smp_compute_checksum(void *v, int len);
|
||||||
void *smp_write_floating_table(unsigned long addr);
|
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);
|
unsigned long write_smp_table(unsigned long addr);
|
||||||
|
|
||||||
#else /* HAVE_MP_TABLE */
|
#else /* HAVE_MP_TABLE */
|
||||||
|
Reference in New Issue
Block a user