Let ld(1) calculate the required size for code in the bootblock
automatically. Signed-off-by: Maciej Pijanka <maciej.pijanka@gmail.com> Acked-by: Patrick Georgi <patrick.georgi@coresystems.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4961 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
b0f82d9cd3
commit
c58290c2ff
|
@ -40,8 +40,10 @@ SECTIONS
|
|||
_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 . : {
|
||||
.rom _myrom : {
|
||||
_rom = .;
|
||||
*(.rom.text);
|
||||
*(.rom.data);
|
||||
|
@ -54,6 +56,7 @@ SECTIONS
|
|||
}
|
||||
|
||||
_lrom = LOADADDR(.rom);
|
||||
|
||||
_elrom = LOADADDR(.rom) + SIZEOF(.rom);
|
||||
|
||||
/DISCARD/ : {
|
||||
|
@ -62,4 +65,13 @@ SECTIONS
|
|||
*(.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);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue