coreboot/src/lib
Julius Werner 52a92606bb linking: Repair special treatments for non-x86 bootblocks
Patch b2a62622b (linking: move romstage and bootblock to use program.ld)
unified the linker scripts between different stages. Unfortunately it
omitted several special cases from the old bootblock.ld script that are
required for non-x86 environments.

This patch expands program.ld to once again merge the .BSS into the
program image for bootblocks (ensuring correct initialization by the
external loader). It also revives the .id section (which adds a
human-readable blurb of information to the top of an image) and fixes a
problem with unintended automated section alignment.

BRANCH=None
BUG=None
TEST=Jerry and Oak boot again.

Change-Id: I54271b8b59a9c773d858d676cde0218cb7f20e74
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Original-Commit-Id: 6fddbc00963e363039634fa31a9b66254b6cf18f
Original-Change-Id: I4d748056f1ab29a8e730f861879982bdf4c33eab
Original-Signed-off-by: Julius Werner <jwerner@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/299413
Original-Tested-by: Yidi Lin <yidi.lin@mediatek.com>
Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: http://review.coreboot.org/11660
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2015-09-17 14:17:55 +00:00
..
assets.c assets: abstract away the firmware assets used for booting 2015-06-02 14:10:08 +02:00
b64_decode.c lib: add base64 decoder 2015-04-22 08:50:54 +02:00
boot_device.c coreboot: introduce boot_device 2015-05-26 22:32:47 +02:00
bootmem.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
bootmode.c bootmode: add display_init_required() 2015-09-04 15:09:00 +00:00
cbfs.c cbfs: hardcode file alignment 2015-07-15 16:34:37 +02:00
cbfs_boot_props.c cbfs: hardcode file alignment 2015-07-15 16:34:37 +02:00
cbfs_spi.c cbfs: new API and better program loading 2015-06-02 14:09:31 +02:00
cbmem_common.c cbmem: add indicator to hooks if cbmem is being recovered 2015-06-09 22:03:30 +02:00
cbmem_console.c cbmem: add indicator to hooks if cbmem is being recovered 2015-06-09 22:03:30 +02:00
cbmem_stage_cache.c stage_cache: make prog const in stage_cache_add() 2015-08-14 15:17:58 +02:00
compute_ip_checksum.c lib: Fix spelling 2013-07-10 20:17:51 +02:00
coreboot_table.c cbtable: describe boot media 2015-07-14 22:36:43 +02:00
debug.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
delay.c - Major cleanup of the bootpath 2003-07-19 04:28:22 +00:00
edid.c edid: fix know_modes timing error 2015-08-28 06:44:20 +00:00
ext_stage_cache.c stage_cache: make prog const in stage_cache_add() 2015-08-14 15:17:58 +02:00
fallback_boot.c lib: Add Kconfig option to enable/disable auto fallback control 2015-03-17 04:22:23 +01:00
fmap.c fmap: publish find_fmap_directory() 2015-07-14 15:48:54 +02:00
gcc.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
gcov-glue.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
gcov-io.c Implement GCC code coverage analysis 2013-01-12 19:09:55 +01:00
gcov-io.h lib: Fix spelling 2013-07-10 20:17:51 +02:00
gcov-iov.h Implement GCC code coverage analysis 2013-01-12 19:09:55 +01:00
generic_dump_spd.c misc: Drop print_ implementation from non-romcc boards 2015-01-09 06:12:22 +01:00
generic_sdram.c misc: Drop print_ implementation from non-romcc boards 2015-01-09 06:12:22 +01:00
gpio.c arm, arm64, mips: Add rough static stack size checks with -Wstack-usage 2015-07-29 20:25:59 +02:00
halt.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
hardwaremain.c hardwaremain: Move init_timer() call to before console init 2015-06-30 08:11:16 +02:00
hexdump.c Drop "See file CREDITS..." comment 2015-09-07 15:54:50 +00:00
imd.c imd: don't recover on limit == 0 2015-05-11 22:39:13 +02:00
imd_cbmem.c cbmem: add indicator to hooks if cbmem is being recovered 2015-06-09 22:03:30 +02:00
jpeg.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
jpeg.h Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
libgcc.c lib: Unify log2() and related functions 2015-06-05 13:18:55 +02:00
libgcov.c Fix whitespace leaked into tree 2013-09-17 21:04:35 +02:00
lzma.c lzma: Return correct amount of decompressed bytes 2015-07-06 09:40:37 +02:00
lzmadecode.c RISCV: get RISCV to build again 2014-12-04 19:17:51 +01:00
lzmadecode.h Since some people disapprove of white space cleanups mixed in regular commits 2010-04-27 06:56:47 +00:00
Makefile.inc x86: link ramstage the same way regardless of RELOCATABLE_RAMSTAGE 2015-09-09 19:36:08 +00:00
malloc.c Remove leftover smi_get_tseg_base 2015-05-29 07:06:37 +02:00
mem_pool.c coreboot: add memory pool infrastructure 2015-05-14 17:27:09 +02:00
memchr.c Add an implementation for the memchr library function 2012-03-09 20:00:53 +01:00
memcmp.c - Initial checkin of the freebios2 tree 2003-04-22 19:02:15 +00:00
memcpy.c fix compiler warnings (trivial) 2009-01-20 21:40:16 +00:00
memmove.c tidy 2004-03-13 03:40:29 +00:00
memrange.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
memset.c fix compiler warnings (trivial) 2009-01-20 21:40:16 +00:00
mocked_tlcl.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
primitive_memtest.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
prog_loaders.c stage_cache: make prog const in stage_cache_add() 2015-08-14 15:17:58 +02:00
prog_ops.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
program.ld linking: Repair special treatments for non-x86 bootblocks 2015-09-17 14:17:55 +00:00
ramtest.c misc: Drop print_ implementation from non-romcc boards 2015-01-09 06:12:22 +01:00
reg_script.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
region.c regions: add more helpers 2015-05-19 10:36:43 +02:00
rmodule.c assets: abstract away the firmware assets used for booting 2015-06-02 14:10:08 +02:00
rmodule.ld rmodule: use program.ld for linking 2015-09-09 19:35:30 +00:00
selfboot.c assets: abstract away the firmware assets used for booting 2015-06-02 14:10:08 +02:00
stack.c arm: Fix checkstack() to use correct stack size 2015-04-14 09:04:04 +02:00
thread.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
timer.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
timer_queue.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
timestamp.c timestamp: add tick frequency to exported table 2015-08-31 13:55:28 +00:00
tlcl.c chromeos: vboot2: Add TPM PCR extension support 2015-04-20 17:06:28 +02:00
tlcl_internal.h vboot2: read secdata and nvdata 2015-03-23 19:51:47 +01:00
tlcl_structures.h vboot2: copy tlcl from vboot_reference as a preparation for vboot2 integration 2015-01-27 01:43:57 +01:00
tpm_error_messages.h TPM: Fix whitespace 2015-02-06 00:25:59 +01:00
trace.c Remove address from GPLv2 headers 2015-05-21 20:50:25 +02:00
version.c build.h: remove variable for the builduser, -hostname and -domain 2015-03-09 17:53:16 +01:00