u-boot/include
Ilias Apalodimas fd58c275f6 efi_loader: Move public cert for capsules to .rodata
commit ddf67daac3 ("efi_capsule: Move signature from DTB to .rodata")
was reverted in
commit 47a25e81d3 ("Revert "efi_capsule: Move signature from DTB to .rodata"")
because that's what U-Boot was usually doing -- using the DT to store
configuration and data. Some of the discussions can be found here [0].

(Ab)using the device tree to store random data isn't ideal though.
On top of that with new features introduced over the years, keeping
the certificates in the DT has proven to be problematic.
One of the reasons is that platforms might send U-Boot a DTB
from the previous stage loader using a transfer list which won't contain
the signatures since other loaders are not  aware of internal
U-Boot ABIs. On top of that QEMU creates the DTB on the fly, so adding
the capsule certificate there does not work and requires users to dump
it and re-create it injecting the public keys.

Now that we have proper memory permissions for arm64, move the certificate
to .rodata and read it from there.

[0] https://lore.kernel.org/u-boot/CAPnjgZ2uM=n8Qo-a=DUkx5VW5Bzp5Xy8=Wgmrw8ESqUBK00YJQ@mail.gmail.com/

Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Tested-by: Jonathan Humphreys <j-humphreys@ti.com>  # on TI sk-am62p-lp
Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on AML-A311D-CC
Tested-by: Raymond Mao <raymond.mao@linaro.org>
2025-04-11 13:25:31 +02:00
..
acpi Merge patch series "acpi: simplify updating ACPI table header checksum" 2025-04-08 16:23:27 -06:00
asm-generic efi_loader: Move public cert for capsules to .rodata 2025-04-11 13:25:31 +02:00
broadcom
cavium
clk
configs Merge patch series "airoha: Add initial support AN7581" 2025-04-01 08:45:46 -06:00
cramfs
crypto mbedtls: access mbedtls private members in mscode and pkcs7 parser 2025-02-27 12:11:02 -06:00
dm Merge patch series "Clarify DM_FLAG_PROBE_AFTER_BIND behaviour" 2025-03-30 09:11:07 -06:00
dt-bindings riscv: dt-binding: k1: Add reset driver binding definition 2025-03-25 16:31:32 +08:00
env Merge branch 'staging' of https://source.denx.de/u-boot/custodians/u-boot-tegra into next 2025-03-26 14:07:37 -06:00
faraday
firmware/imx/sci wdt: imx8qxp: add option to control external PMIC wdt via IMX8 SCU 2024-11-25 23:07:37 -03:00
fsl-mc
jffs2
k210
keys
linux Merge patch series "fs: exfat: Add exfat port based on exfat-fuse" 2025-04-02 20:01:14 -06:00
lzma
meson
mtd include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
mvebu
net net/tcp: improve tcp framework, use better state machine 2024-12-28 11:59:42 -06:00
power power: regulator: tps65941: Fix voltage calculation for ldo 2025-02-18 10:49:36 -06:00
reboot-mode
renesas reset: rzg2l-usbphy-ctrl: Add new driver 2025-03-19 03:36:19 +01:00
samsung
soc/qcom
spmi
tee
test test: Drop suites.h 2025-02-11 20:12:36 -06:00
u-boot mbedtls: access mbedtls private members in mscode and pkcs7 parser 2025-02-27 12:11:02 -06:00
usb usb: tcpm: add core framework 2024-10-17 03:12:47 +02:00
valgrind
xen
zfs
_exports.h
abuf.h abuf: Provide a constant buffer 2025-01-22 15:58:03 -06:00
ACEX1K.h
adc.h
addr_map.h
ahci.h
alist.h alist: Add a way to efficiently filter an alist 2024-11-03 21:27:12 -06:00
altera.h
android_ab.h cmd: bcb: introduce 'ab_dump' command to print BCB block content 2024-10-24 09:45:55 +02:00
android_bootloader_message.h
android_image.h image: android: use ulong for kernel address 2024-10-24 09:48:14 +02:00
ansi.h
api.h
api_public.h
arm_ffa.h
arm_ffa_priv.h
armcoremodule.h
asm-offsets.h
ata.h
atf_common.h Update the ARM trusted firmware git URL 2024-10-03 09:08:29 -06:00
atmel_hlcdc.h
atmel_lcd.h
atmel_lcdc.h
atmel_mci.h
atsha204a-i2c.h
audio_codec.h
autoboot.h
avb_verify.h
axi.h
axp152.h
axp209.h
axp221.h
axp305.h
axp809.h
axp818.h
axp_pmic.h
backlight.h
bcb.h
bcd.h
binman.h
binman_sym.h
bios_emul.h
bitfield.h
blk.h block: make blk_create_device() static 2024-10-24 11:20:58 -06:00
blkmap.h blkmap: pass information on ISO image to the OS 2025-03-26 13:28:08 +02:00
bloblist.h Merge patch series "bloblist: refactor xferlist and bloblist" 2025-02-19 18:49:47 -06:00
bmp_layout.h
board_f.h board_f: Move new_bloblist to boardf 2024-08-26 14:05:38 -06:00
boot_fit.h
bootcount.h include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
bootdev.h bootstd: Export bootdev_get_from_blk() 2025-01-15 08:48:43 -06:00
bootflow.h boot: Consider non-bootable partitions 2025-04-03 11:41:55 -06:00
bootm.h Revert "Merge patch series "pxe: Precursor series for supporting read_all() in extlinux / PXE"" 2025-04-07 16:35:43 -06:00
bootmeth.h Update bootmeth_alloc_other() to record images 2025-01-15 08:48:42 -06:00
bootretry.h
bootstage.h bootstage: Allow counting memory without strings 2024-10-25 14:22:24 -06:00
bootstd.h boot: Handle running out of labels 2025-04-03 11:43:22 -06:00
bouncebuf.h
btrfs.h
bus_vcxk.h
button.h
bzlib.h
cache.h
cadence-nand.h drivers: mtd: nand: cadence: Add support for read status command 2025-03-15 10:35:00 +01:00
capitalization.h
cbfs.h
cedit.h expo: Add forward declaration for udevice to cedit 2024-10-18 14:10:22 -06:00
charset.h
circbuf.h
cli.h
cli_hush.h
clk-uclass.h
clk.h clk: Add clk_resolve_parent_clk() 2025-03-24 08:51:34 -03:00
clock_legacy.h
cmd_spl.h
command.h
common_timing_params.h
compiler.h
config_distro_bootcmd.h Fix EFI boot file name definition for 64-bit x86 2025-04-04 12:26:36 -06:00
config_fallbacks.h
config_fsl_chain_trust.h
config_phylib_all_drivers.h
console.h dm: usb: Deal with USB keyboard persisting across tests 2024-09-18 13:01:00 -06:00
cortina.h
cp437.h
cp1250.h
cpsw.h
cpu.h cpu: Provide a way to get the physical-address size 2025-01-22 15:58:03 -06:00
cpu_func.h treewide: Add a function to change page permissions 2025-03-14 13:37:54 +02:00
cros_ec.h
cros_ec_message.h
crypt.h
ctype.h
cyclic.h cyclic: Fix typo in struct cyclic_info description 2025-01-22 10:22:34 +01:00
dbsc5.h ram: renesas: dbsc5: Make struct renesas_dbsc5_board_config public 2025-03-16 14:56:16 +01:00
ddr_spd.h
debug_uart.h
dfu.h dfu: add scsi backend 2024-11-20 17:57:58 +01:00
dialog_pmic.h
display.h
display_options.h
div64.h
dm-demo.h
dm.h
dma-uclass.h
dma.h
dsi_host.h
dt-structs.h
dt_table.h
dw_hdmi.h
dwc3-omap-uboot.h
dwc3-uboot.h
dwc_ahsata.h
dwmmc.h mmc: exynos_dw_mmc: Move quirks from struct dwmci_host to chip data 2024-08-19 16:09:06 +09:00
e500.h
ec_commands.h
edid.h
eeprom.h
eeprom_field.h
eeprom_layout.h
efi.h blkmap: pass information on ISO image to the OS 2025-03-26 13:28:08 +02:00
efi_api.h efi: Correct ECPT table GUID 2025-01-05 02:30:49 +01:00
efi_config.h
efi_driver.h
efi_dt_fixup.h
efi_load_initrd.h
efi_loader.h efi_loader: binary_run: register an initrd 2025-04-11 13:20:38 +02:00
efi_riscv.h
efi_rng.h
efi_selftest.h
efi_tcg2.h tcg2: decouple eventlog size from efi 2025-01-28 08:59:23 +02:00
efi_variable.h efi_loader: correct efi_set_variable_int() description 2024-09-21 10:59:06 +02:00
elf.h
env.h include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
env_attr.h
env_callback.h env: Switch the callback static list to Kconfig 2024-12-06 16:37:43 -06:00
env_default.h Kconfig: Move CONFIG_BOOTCOUNT_ALTBOOTCMD to Kconfig 2025-02-14 10:19:24 -06:00
env_flags.h
env_internal.h global_data: Use less space for environment fields 2024-08-26 14:05:38 -06:00
erofs.h
errno.h
eth_phy.h
ethsw.h
event.h events: correct event_uninit() description 2024-09-21 11:02:25 +02:00
event_internal.h
exception.h
exfat.h fs: exfat: Add U-Boot porting layer 2025-04-02 20:00:59 -06:00
expo.h x86: coreboot: Allow building an expo for editing CMOS config 2024-11-03 21:27:12 -06:00
exports.h
ext4fs.h fs: ext4: implement opendir, readdir, closedir 2024-11-01 13:37:58 -06:00
ext_common.h fs: ext4: document struct ext2_inode 2024-10-30 21:44:39 +01:00
extcon.h
extension_board.h
extlinux.h
fastboot-internal.h
fastboot.h
fat.h fs: fat: add rename 2025-03-07 11:50:22 -06:00
fb_mmc.h
fb_nand.h
fdt.h
fdt_region.h
fdt_simplefb.h
fdt_support.h fdt: add support for adding pmem nodes 2025-03-26 13:28:08 +02:00
fdtdec.h Merge patch series "Keep the access to dtb_dt_embedded() within fdtdec" 2024-12-31 10:57:54 -06:00
fis.h
flash.h flash: prefix error codes with FL_ 2024-09-24 13:41:20 -06:00
fm_eth.h
fpga.h fpga: Avoid ignored-qualifiers warning 2025-02-05 16:22:55 +01:00
fs.h fs: exfat: Add U-Boot porting layer 2025-04-02 20:00:59 -06:00
fs_internal.h fs: Add generic fs_devread() implementation 2025-04-02 20:00:59 -06:00
fs_loader.h
fsl_csu.h
fsl_ddr.h
fsl_ddr_dimm_params.h
fsl_ddr_sdram.h
fsl_ddrc_version.h
fsl_devdis.h
fsl_dspi.h
fsl_dtsec.h
fsl_errata.h
fsl_esdhc.h
fsl_esdhc_imx.h mmc: fsl_esdhc_imx: Reset tuning logic 2024-10-04 09:15:15 -03:00
fsl_fman.h
fsl_ifc.h
fsl_immap.h
fsl_lpuart.h
fsl_mdio.h
fsl_memac.h
fsl_mmdc.h
fsl_pmic.h
fsl_qbman.h
fsl_qe.h
fsl_sec.h
fsl_sec_mon.h
fsl_secboot_err.h
fsl_sfp.h
fsl_tgec.h
fsl_usb.h
fsl_validate.h
fsl_wdog.h
fuse.h cmd: fuse: Add fuse writebuff sub-system command 2025-04-04 12:25:02 -06:00
fuzzing_engine.h
fwu.h fwu: check all images for transitioning out of Trial State 2024-09-19 10:52:50 +03:00
fwu_mdata.h
g_dnl.h
gdsys_fpga.h
generic-phy.h phy: Extend generic_setup_phy() with PHY mode and submode 2024-09-09 17:18:04 +02:00
getopt.h doc: include/getopt.h: remove comments confusing Sphinx 2024-09-21 10:58:38 +02:00
gsc.h
gt64120.h
gzip.h gzip: Correct function comment for gunzip() 2024-10-03 11:52:16 -06:00
handoff.h Revert "global_data: Drop spl_handoff" 2024-12-02 07:40:39 -06:00
hang.h
hash.h
hda_codec.h
hexdump.h
host_arch.h
hw_sha.h
hwconfig.h
hwspinlock.h
i2c.h i2c: Remove CFG_SYS_I2C_DIRECT_BUS 2024-08-13 06:23:15 +02:00
i2c_eeprom.h
i2s.h
i8042.h
ide.h
image-android-dt.h include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
image-sparse.h
image.h Revert "Merge patch series "pxe: Precursor series for supporting read_all() in extlinux / PXE"" 2025-04-07 16:35:43 -06:00
imx8image.h tools: imx8image: add possibility to skip dcd 2024-11-09 08:54:19 -03:00
imx_container.h
imx_lpi2c.h
imx_sip.h
imx_thermal.h
imximage.h
init.h
initcall.h
input.h
interrupt.h common: clean up setjmp.h 2025-03-10 07:41:16 +01:00
inttypes.h
iommu.h
iomux.h
ioports.h
iotrace.h include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
ipu_pixfmt.h
irq.h drivers: misc: irq-uclass: Update irq_get_by_index 2024-10-27 17:24:13 -06:00
irq_func.h cmd: irq: Move do_irqinfo() prototype to a header file 2024-10-17 15:38:50 -06:00
k3-avs.h misc: k3_avs: Check validity of efuse voltage data 2024-12-04 14:30:18 -06:00
k3-clk.h
k3-ddrss.h
k3-dev.h
key_matrix.h
keyboard.h
kgdb.h
lattice.h
led.h Merge patch series "led: add function naming option from linux" 2025-02-07 11:39:24 -06:00
libata.h
libtizen.h
limits.h x86: select CONFIG_64BIT for X86_64 2024-12-31 10:58:30 -06:00
linker_lists.h Improve support for linker lists in data structures 2025-01-24 14:34:40 -06:00
lmb.h lmb: change the return code on lmb_alloc_addr() 2025-03-24 11:12:33 -06:00
log.h log: enable filtering on functions 2025-01-26 11:06:56 +01:00
mailbox-uclass.h
mailbox.h
malloc.h common: Tidy up how malloc() is inited 2024-10-25 14:22:24 -06:00
mapmem.h sandbox: Correct a typo in mapmem 2025-04-03 11:41:54 -06:00
marvell_phy.h
mc13892.h
mcheck.h mcheck: Fix SPDX License Identifier to LGPL-2.1-or-later 2025-03-05 12:14:04 -06:00
media_bus_format.h
memalign.h
membuf.h membuf: Minor code-style improvements 2025-04-03 16:54:49 -06:00
memtop.h common: memtop: add logic to detect ram_top 2024-11-15 14:32:02 +01:00
menu.h bootmenu: add reprint check 2024-11-04 16:41:38 -06:00
micrel.h
miiphy.h net: miiphybb: Drop mdio_init() 2025-03-11 23:06:18 +01:00
mipi_display.h
mipi_dsi.h
misc.h
mm_communication.h
mmc.h mmc: Remove alignment hole for cmdidx in struct mmc_cmd 2025-01-26 11:39:00 -06:00
mpc8xx.h
mpc8xx_irq.h
mpc83xx.h
mpc85xx.h
msc01.h
mtd.h
mtd_node.h
mux-internal.h
mux.h Mark a few functions static inline 2024-10-24 11:21:48 -06:00
mv88e6352.h
mvebu_mmc.h
mxs_nand.h
nand.h
ndisc.h
net-common.h Merge branch 'next' 2025-04-08 11:43:23 -06:00
net-legacy.h net/tcp: add connection info to tcp_stream structure 2024-12-28 11:59:42 -06:00
net-lwip.h net: lwip: move eth_init() out of new_netif() 2025-02-12 12:36:57 -06:00
net.h net: split net into net{,-common,-legacy,-lwip} 2024-10-16 11:11:56 -06:00
net6.h
netdev.h net: fec_mxc: fix probing for imx8qxp 2024-11-25 23:07:37 -03:00
ns16550.h serial: ns16550: Increase scope of ops functions 2024-12-14 09:32:59 -06:00
nuvoton_nct6102d.h
nvme.h
nvmem.h
nvmxip.h
of_live.h
omap3_spi.h
onenand_uboot.h
opensbi.h
os.h Prepare v2024.10-rc6 2024-09-30 17:48:12 -06:00
p2sb.h
palmas.h
panel.h
part.h disk: expose partition type flags 2024-11-20 17:57:58 +01:00
part_efi.h
pca953x.h
pch.h
pci.h pci: Add support for Qualcomm PCIe controller 2025-01-22 16:43:54 +01:00
pci_ep.h
pci_gt64120.h
pci_ids.h net: dwc_eth_qos: Add glue driver for Intel MAC 2024-09-03 09:12:00 -06:00
pci_msc01.h
pci_rom.h
pci_tegra.h
pe.h
phy-mipi-dphy.h
phy-sun4i-usb.h
phy.h net: phy: Port set/clear bits from Linux 2025-03-19 03:38:51 +01:00
phy_interface.h
phys2bus.h
physmem.h
post.h
power-domain-uclass.h
power-domain.h
ppc_asm.tmpl powerpc: Introduce and enforce assembler checks on GPR usage 2024-12-30 15:55:07 -06:00
ppc_defs.h
pvblock.h
pwm.h
pwrseq.h
pxe_utils.h boot: Update extlinux pxe_getfile_func() to include type 2025-01-15 08:48:42 -06:00
qfw.h
ram.h
rand.h
rc4.h
regmap.h
relocate.h
remoteproc.h
reset-uclass.h
reset.h
rkmtd.h include: export uuid.h 2024-09-12 17:35:37 +02:00
rng.h
rtc.h
rtc_def.h
s_record.h
samsung-usb-phy-uboot.h
sandbox-adc.h
sandbox-clk.h
sandbox-sm.h
sandbox_efi_capsule.h sandbox: switch to dynamic UUIDs 2024-09-12 17:35:37 +02:00
sandbox_host.h
sandboxfs.h
sandboxtee.h
sata.h
scmi_agent-uclass.h
scmi_agent.h
scmi_protocols.h
scp03.h
scsi.h
scsi_emul.h
sdhci.h
sdp.h include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
search.h include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
semihosting.h
semihostingfs.h
serial.h usb: gadget: Remove the legacy usbtty driver 2025-03-10 09:22:35 +01:00
setjmp.h common: clean up setjmp.h 2025-03-10 07:41:16 +01:00
sh_pfc.h
signatures.h
sl28cpld.h
slre.h
sm-uclass.h
sm.h
smbios.h cmd: update smbios cmd 2025-01-14 14:29:29 -06:00
smbios_def.h smbios: Refactor the smbios headfile 2025-01-14 14:29:29 -06:00
smbios_plat.h sysinfo: Add sysinfo driver and data structure for smbios 2025-01-14 14:29:29 -06:00
smem.h
smsc_lpc47m.h
smsc_sio1007.h
soc.h
sort.h
sound.h
sparse_defs.h
sparse_format.h
spartan2.h
spartan3.h
spd.h
spd_sdram.h
spi-mem.h Revert "mem: spi-mem: add declaration for spi_mem_default_supports_op" 2025-01-22 09:52:22 -06:00
spi.h mtd: spi-nor: Fix integer overflow in stacked memories support 2024-11-10 20:21:07 -06:00
spi_flash.h spi: add DM_SPI_FLASH compatibility inline functions 2024-10-24 09:41:52 +02:00
spl.h vbe: Allow VBE to disable adding loadables to the FDT 2025-02-03 16:01:36 -06:00
spl_gpio.h drivers: tegra_gpio: add early SPL functions 2024-10-13 17:20:26 +03:00
spl_load.h spl: Allow spl_load() to be controlled in any xPL phase 2025-02-03 16:01:36 -06:00
splash.h
squashfs.h
status_led.h common: board_r: rework BOOT LED handling 2024-10-10 16:02:20 -06:00
stdint.h
stdio.h include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
stdio_dev.h usb: gadget: Remove the legacy usbtty driver 2025-03-10 09:22:35 +01:00
stdlib.h mbedtls: add mbedtls into the build system 2024-10-14 17:58:12 -06:00
stm32_rcc.h
stratixII.h
string.h
sunxi_gpio.h include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
sunxi_image.h
sy8106a.h
syscon.h
sysinfo.h sysinfo: Add SYSID_BOARD_RAM_SIZE_MB 2025-02-28 08:41:54 -06:00
sysreset.h
system-constants.h
tables_csum.h
tca642x.h
tee.h
tegra-kbc.h
thermal.h
thor.h
ti-usb-phy-uboot.h
time.h test: Keep track of suite duration 2025-02-11 20:10:58 -06:00
timer.h
timestamp.h
tlv_eeprom.h
tmu.h
tpm-common.h tpm: update descriptions in tpm headers 2025-01-09 11:11:10 -06:00
tpm-v1.h
tpm-v2.h tpm: add wrapper and helper APIs for PCR allocate 2025-01-28 08:58:41 +02:00
tpm_api.h
tpm_tcg2.h tpm: refactor tcg2_get_pcr_info() 2025-01-07 15:45:51 +02:00
tps6586x.h
trace.h Merge patch series "Add 'trace wipe'" 2025-01-01 10:40:33 -06:00
tsec.h
tsi148.h
turris-omnia-mcu-interface.h
twl4030.h
ubi_uboot.h drivers: introduce UBI block abstraction 2024-08-08 09:28:00 +02:00
ubifs_uboot.h
ubispl.h
uboot_aes.h
ufs.h
universe.h
upl.h include: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILD 2024-10-11 11:44:48 -06:00
usb.h dm: usb: Deal with USB keyboard persisting across tests 2024-09-18 13:01:00 -06:00
usb_cdc_acm.h
usb_defs.h
usb_ether.h
usb_mass_storage.h
usbdescriptors.h
usbdevice.h
usbroothubdes.h
vbe.h vbe: Add an implementation of VBE-ABrec 2025-02-03 16:01:36 -06:00
versalpl.h
version.h
version_string.h
vesa.h
video.h pci: video: Set up the pixel-format field 2025-01-22 17:08:23 -06:00
video_bridge.h video: bridge-uclass: add inline fallbacks of video bridge functions 2025-03-08 16:35:46 +02:00
video_console.h video: Avoid starting a new line to close to the bottom 2024-10-18 14:10:22 -06:00
video_font.h
video_font_4x6.h
video_font_8x16.h
video_font_data.h
video_font_sun12x22.h
video_font_ter16x32.h
video_osd.h
virtex2.h
virtio.h
virtio_ring.h
virtio_types.h
vsc7385.h
vsc9953.h
vsprintf.h lib: provide function hextoull() 2024-11-13 08:14:23 -06:00
vxworks.h
w1-eeprom.h
w1.h
wait_bit.h
watchdog.h watchdog.h: change include of cyclic.h to u-boot/schedule.h 2024-10-23 06:52:38 +02:00
wdt.h
winbond_w83627.h
xen.h
xilinx.h
xyzModem.h
zfs_common.h
zynq_bootimg.h
zynqmp_firmware.h
zynqmppl.h
zynqpl.h ARM: zynq: Add support for 7z010_lr and 7z020_lr 2024-08-05 16:13:26 +02:00