[coreboot] [commit] r4971 - trunk/src/arch/i386/init

svn at coreboot.org svn at coreboot.org
Tue Dec 1 10:35:20 CET 2009


Author: oxygene
Date: 2009-12-01 10:35:19 +0100 (Tue, 01 Dec 2009)
New Revision: 4971

Modified:
   trunk/src/arch/i386/init/ldscript_fallback_cbfs.lb
Log:
Not all boards cope with automatically sized bootblocks, leading to 4GB
images due to the "helpful" 4GB rollover behaviour of ld(1).

Back out r4961, something like this should go in eventually, but more
completely tested and working.

Signed-off-by: Patrick Georgi <patrick.georgi at coresystems.de>
Acked-by: Stefan Reinauer <stepan at coresystems.de>


Modified: trunk/src/arch/i386/init/ldscript_fallback_cbfs.lb
===================================================================
--- trunk/src/arch/i386/init/ldscript_fallback_cbfs.lb	2009-12-01 08:15:38 UTC (rev 4970)
+++ trunk/src/arch/i386/init/ldscript_fallback_cbfs.lb	2009-12-01 09:35:19 UTC (rev 4971)
@@ -40,10 +40,8 @@
 	_x = .;
 	. = (_x < (CONFIG_ROMBASE - 0x10000 +  CONFIG_ROM_IMAGE_SIZE)) ? (CONFIG_ROMBASE - 0x10000 +  CONFIG_ROM_IMAGE_SIZE) : _x;
 
-	__my_rom_start = .; 
-
 	/* This section might be better named .setup */
-	.rom _myrom : {
+	.rom . : {
 		_rom = .;
 		*(.rom.text);
 		*(.rom.data);
@@ -56,7 +54,6 @@
 	}
 
 	_lrom = LOADADDR(.rom);
-
 	_elrom = LOADADDR(.rom) + SIZEOF(.rom);
 
 	/DISCARD/ : {
@@ -65,13 +62,4 @@
 		*(.comment.*)
 		*(.note.*)
 	}
-
-	__my_rom_end = .; 
-
-	__my_rom_size = (( ( __my_rom_end - __my_rom_start ) / 256) + 2 ) * 256; 
-	/* Next line gives same output for me as above one but causes
-	 * ld to complain about non constant offset so
-	__my_rom_size = (( (SIZEOF(.rom) + SIZEOF(.data) + SIZEOF(.text)) / 256 ) + 2 ) * 256;
-	*/
-	_myrom = _rom + (0x10000 - __my_rom_size);
 }





More information about the coreboot mailing list