summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/arch/i386/boot/coreboot_table.c4
-rw-r--r--src/arch/i386/boot/tables.c3
2 files changed, 3 insertions, 4 deletions
diff --git a/src/arch/i386/boot/coreboot_table.c b/src/arch/i386/boot/coreboot_table.c
index 9dd6a3299a..900ab7c106 100644
--- a/src/arch/i386/boot/coreboot_table.c
+++ b/src/arch/i386/boot/coreboot_table.c
@@ -402,7 +402,6 @@ unsigned long write_coreboot_table(
unsigned long low_table_start, unsigned long low_table_end,
unsigned long rom_table_start, unsigned long rom_table_end)
{
- unsigned long table_size;
struct lb_header *head;
struct lb_memory *mem;
@@ -445,9 +444,8 @@ unsigned long write_coreboot_table(
low_table_start, low_table_end - low_table_start);
/* Record the pirq table, acpi tables, and maybe the mptable */
- table_size=rom_table_end-rom_table_start;
lb_add_memory_range(mem, LB_MEM_TABLE,
- rom_table_start, table_size<0x10000?0x10000:table_size);
+ rom_table_start, rom_table_end-rom_table_start);
/* Note:
* I assume that there is always memory at immediately after
diff --git a/src/arch/i386/boot/tables.c b/src/arch/i386/boot/tables.c
index 0ff5c0ad2d..373a0f9bfc 100644
--- a/src/arch/i386/boot/tables.c
+++ b/src/arch/i386/boot/tables.c
@@ -72,8 +72,9 @@ struct lb_memory *write_tables(void)
#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...
*/
- if(new_low_table_end>0x467){
+ if(new_low_table_end>0x400){
unsigned mptable_size;
unsigned mpc_start;
low_table_end += SMP_FLOATING_TABLE_LEN; /* keep the mpf in 1k low, so kernel can find it */