u-boot/lib
Sam Edwards 408a20e099 efi_loader: Move .dynamic out of .text in EFI
EFI applications need to be relocatable. Ordinarily, this is achieved
through a PE-format .reloc section, but since that requires toolchain
tricks to achieve, U-Boot's EFI applications instead embed ELF-flavored
relocation information and use it for self-relocation; thus, the
.dynamic section needs to be preserved.

Before this patch, it was tacked on to the end of .text, but this was
not proper: A .text section is SHT_PROGBITS, while the .dynamic section
is SHT_DYNAMIC. Attempting to combine them like this creates a section
type mismatch. While GNU ld doesn't seem to complain, LLVM's lld
considers this a fatal linking error.

This patch moves .dynamic out to its own section, so that the output ELF
has the correct types. (They're all mashed together when converting to
binary anyway, so this patch causes no change in the final .efi output.)

Signed-off-by: Sam Edwards <CFSworks@gmail.com>
Cc: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2025-03-17 09:22:06 +01:00
..
acpi acpi: don't fill FADT, MADT if CONFIG_QFW_ACPI=y 2025-01-21 09:27:24 -06:00
aes aes: Allow to store randomly generated IV in the FIT 2024-12-19 09:10:34 -06:00
at91
blake2 lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
bzip2 lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
crypt lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
crypto Merge patch series "Integrate MbedTLS v3.6 LTS with U-Boot" 2024-10-14 17:59:04 -06:00
dhry lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
ecdsa lib: ecdsa: Add ECDSA384 support 2024-10-21 17:52:52 -06:00
efi include: export uuid.h 2024-09-12 17:35:37 +02:00
efi_driver efi_driver: create a parent device for all EFI block devices 2025-02-20 11:07:44 +01:00
efi_loader efi_loader: Move .dynamic out of .text in EFI 2025-03-17 09:22:06 +01:00
efi_selftest efi_loader: Update startimage_exit self-test to check error 2025-01-05 02:30:48 +01:00
fwu_updates fwu: do not allow capsule processing on exceeding Trial Counter threshold 2024-09-19 10:52:50 +03:00
libavb lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
libfdt global: Rename SPL_TPL_ to PHASE_ 2024-10-11 11:44:48 -06:00
lwip net: use strnstr() for lwip_strnstr() 2025-02-12 12:37:19 -06:00
lzma lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
lzo lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
mbedtls mbedtls: refactor mbedtls build for XPL 2025-02-27 12:11:02 -06:00
optee
rsa lib: rsa: Set conventional salt length RSA-PSS parameter 2024-11-14 18:14:05 -06:00
zlib lib: Mark gunzip as relocation code 2025-02-03 16:01:36 -06:00
zstd lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
.gitignore
abuf.c abuf: Provide a constant buffer 2025-01-22 15:58:03 -06:00
addr_map.c
aes.c
alist.c alist: Add a way to efficiently filter an alist 2024-11-03 21:27:12 -06:00
asm-offsets.c global_data: Remove environment members if not used 2024-08-26 14:06:08 -06:00
asn1_decoder.c
bch.c
binman.c binman: Avoid skipping binman_init() 2024-12-02 07:40:30 -06:00
bitrev.c
charset.c efi_loader: add an EFI variable with the file contents 2024-04-20 08:22:24 +02:00
circbuf.c lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
crc7.c lib: Remove duplicate newlines 2024-07-15 12:12:18 -06:00
crc8.c lib: Mark crc8 as relocation code 2025-02-03 16:01:36 -06:00
crc16-ccitt.c
crc16.c
crc32.c
crc32c.c
ctype.c
date.c
display_options.c global: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
div64.c
elf.c lib: move phdr increment to for loop heading 2024-08-27 18:01:21 -06:00
errno.c
errno_str.c
fdt-libcrypto.c
fdtdec.c Merge patch series "Keep the access to dtb_dt_embedded() within fdtdec" 2024-12-31 10:57:54 -06:00
fdtdec_common.c
fdtdec_test.c
getopt.c
gunzip.c lib: Mark gunzip as relocation code 2025-02-03 16:01:36 -06:00
gzip.c Revert "Revert "Merge patch series "zlib: Address CVE-2016-9841""" 2024-07-05 13:57:02 -06:00
hang.c global: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
hash-checksum.c
hashtable.c lib: hashtable: Prevent recursive calling of callback functions 2024-12-07 09:07:45 -03:00
hexdump.c global: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
image-sparse.c lib: sparse: Fix error checking for write_sparse_chunk_raw 2024-02-09 09:42:04 +01:00
initcall.c initcall: Correct use of relocation offset 2024-07-04 09:25:20 -06:00
Kconfig lib: Allow crc16 code to be dropped 2025-02-03 16:00:42 -06:00
ldiv.c
linux_compat.c
linux_string.c
list_sort.c
lmb.c lmb: move lmb_map_update_notify() to EFI 2025-02-20 11:09:33 +01:00
lz4.c lib: Mark lz4 as relocation code 2025-02-03 16:01:36 -06:00
lz4_wrapper.c lib: Mark lz4 as relocation code 2025-02-03 16:01:36 -06:00
Makefile spl: Avoid including hash algorithms which are not wanted 2025-02-03 16:01:36 -06:00
md5.c net: disable MBEDTLS in SPL 2024-12-06 17:47:23 -06:00
membuff.c lib: membuff: fix readline not returning line in case of overflow 2024-01-09 14:58:33 +01:00
net_utils.c net: net_utils: Move ip_to_string to lib/net_utils.c 2024-11-18 16:12:35 +01:00
of_live.c
oid_registry.c
panic.c
physmem.c
qsort.c
rand.c
rational.c
rbtree.c
rc4.c
rtc-lib.c
semihosting.c
sha1.c net: disable MBEDTLS in SPL 2024-12-06 17:47:23 -06:00
sha256.c lib: sha256: add feature sha256_hmac 2025-01-18 17:12:47 -06:00
sha256_common.c lib: sha256: move common function to sha256_common.c 2025-01-18 17:12:47 -06:00
sha512.c net: disable MBEDTLS in SPL 2024-12-06 17:47:23 -06:00
slre.c
smbios-parser.c smbios: correctly name Structure Table Maximum Size field 2024-02-02 19:57:45 +01:00
smbios.c Merge patch series "SMBIOS improvements" 2025-01-14 14:29:49 -06:00
sscanf.c
string.c lib: implement strnstr() 2025-02-12 12:37:12 -06:00
strto.c lib: provide function hextoull() 2024-11-13 08:14:23 -06:00
tables_csum.c
time.c xpl: Rename spl_phase() to xpl_phase() 2024-10-11 11:44:47 -06:00
tiny-printf.c tiny-printf: Handle NULL pointer argument to %s 2024-11-29 12:59:27 +02:00
tpm-common.c
tpm-utils.h
tpm-v1.c sha1: Remove sha1 non-watchdog API 2024-10-14 17:58:30 -06:00
tpm-v2.c tpm: PCR allocate during PCR extend to disable the unsupported algorithms 2025-01-28 08:58:41 +02:00
tpm_api.c tpm: add TPM2_Shutdown command 2025-01-28 08:58:41 +02:00
tpm_tcg2.c tpm: get tpm event log from bloblist 2025-01-28 09:09:32 +02:00
trace.c Merge patch series "Add 'trace wipe'" 2025-01-01 10:40:33 -06:00
uuid.c lib: uuid: support more efi protocols in uuid_guid_get_str() 2025-02-20 08:40:52 +01:00
vsprintf.c lib: vsprintf: fix API build 2024-11-13 08:16:41 -06:00
xxhash.c