next part of YhLu's large patch. I am not sure whether the tables.c
changes are correct. If someone could look into this, thank you.

Signed-off-by: Yinghai Lu <yinghai.lu@amd.com>
Signed-off-by: Ed Swierk <eswierk@arastra.com>
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Ward Vandewege <ward@gnu.org>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2593 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
diff --git a/src/arch/i386/boot/linuxbios_table.c b/src/arch/i386/boot/linuxbios_table.c
index 569692e..9074d11 100644
--- a/src/arch/i386/boot/linuxbios_table.c
+++ b/src/arch/i386/boot/linuxbios_table.c
@@ -364,6 +364,17 @@
 		head = lb_table_init(low_table_end);
 		low_table_end = (unsigned long)head;
 	}
+ 
+	printk_debug("Adjust low_table_end from 0x%08x to ", low_table_end);
+	low_table_end += 0xfff; // 4K aligned
+	low_table_end &= ~0xfff;
+	printk_debug("0x%08x \n", low_table_end);
+
+	/* The Linux kernel assumes this region is reserved */
+	printk_debug("Adjust rom_table_end from 0x%08x to ", rom_table_end);
+	rom_table_end += 0xffff; // 64K align
+	rom_table_end &= ~0xffff;
+	printk_debug("0x%08x \n", rom_table_end);
 
 #if (HAVE_OPTION_TABLE == 1) 
 	{