arch/x86/bootblock: Link in object files selected with bootblock-y
As part of preparing for systems with non-memory-mapped media, we want to be able to call into C code. This change allows us to link C code directly into the bootblock. The steps of going from bootblock main() to CAR setup to C code will be implemented in subsequent patches. Note that a few files selected with bootblock-y will now be compiled for the bootblock as well, but since we enabled garbage collection, they will not be included in the final binary. Change-Id: I5ca6dcaf176f5469c6a3bb925859399123493bc6 Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-on: http://review.coreboot.org/11783 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Tested-by: build bot (Jenkins)
This commit is contained in:
parent
0017b0045d
commit
dbeedbef70
|
@ -110,9 +110,11 @@ $(objgenerated)/bootblock.inc: $(src)/arch/x86/$(subst ",,$(CONFIG_BOOTBLOCK_SOU
|
||||||
$< > $(objgenerated)/bootblock.inc.d
|
$< > $(objgenerated)/bootblock.inc.d
|
||||||
$(ROMCC) -c -S $(bootblock_romccflags) -I. $(CPPFLAGS_bootblock) $< -o $@
|
$(ROMCC) -c -S $(bootblock_romccflags) -I. $(CPPFLAGS_bootblock) $< -o $@
|
||||||
|
|
||||||
$(objcbfs)/bootblock.debug: $(obj)/arch/x86/bootblock.bootblock.o $(obj)/arch/x86/bootblock.bootblock.ld
|
# $(obj)/arch/x86/bootblock.bootblock.ld is part of $(bootblock-objs)
|
||||||
|
$(objcbfs)/bootblock.debug: $$(bootblock-objs)
|
||||||
@printf " LINK $(subst $(obj)/,,$(@))\n"
|
@printf " LINK $(subst $(obj)/,,$(@))\n"
|
||||||
$(LD_bootblock) $(LDFLAGS_bootblock) -static -o $@ -L$(obj) $< \
|
$(LD_bootblock) $(LDFLAGS_bootblock) -o $@ -L$(obj) \
|
||||||
|
$(filter-out %.ld,$(bootblock-objs)) \
|
||||||
-T $(obj)/arch/x86/bootblock.bootblock.ld
|
-T $(obj)/arch/x86/bootblock.bootblock.ld
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -43,6 +43,9 @@ SECTIONS
|
||||||
*(.rom.text);
|
*(.rom.text);
|
||||||
*(.rom.data);
|
*(.rom.data);
|
||||||
*(.rom.data.*);
|
*(.rom.data.*);
|
||||||
|
*(.text);
|
||||||
|
*(.text.*);
|
||||||
|
*(.rodata);
|
||||||
*(.rodata.*);
|
*(.rodata.*);
|
||||||
_erom = .;
|
_erom = .;
|
||||||
} >rom = 0xff
|
} >rom = 0xff
|
||||||
|
@ -65,6 +68,7 @@ SECTIONS
|
||||||
*(.note)
|
*(.note)
|
||||||
*(.comment.*)
|
*(.comment.*)
|
||||||
*(.note.*)
|
*(.note.*)
|
||||||
|
*(.eh_frame)
|
||||||
*(.iplt)
|
*(.iplt)
|
||||||
*(.rel.*)
|
*(.rel.*)
|
||||||
*(.igot.*)
|
*(.igot.*)
|
||||||
|
|
Loading…
Reference in New Issue