Merge tag 'efi-2025-07-rc1' of https://source.denx.de/u-boot/custodians/u-boot-efi
Pull request efi-2025-07-rc1 CI: * https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/25648 Documentation: * Update authenticated capsules documentation UEFI: * Add support for loading FIT images including initrd - efi_loader: efi_load_initrd: provide a memory mapped initrd - efi_loader: binary_run: register an initrd - bootm: add support for initrd in do_bootm_efi * efi_selftest: remove un-needed NULL checks * efi: Fix efiboot for payloads loaded from memory * Print extra information from the bootmgr * Move public cert for capsules to .rodata * Set EFI capsule dfu_alt_info env explicitly * Make FDT extra space configurable * Install the ACPI table from the bloblist * Handle GD_FLG_SKIP_RELOC * Handle malloc() errors Others: * acpi: select CONFIG_BLOBLIST * smbios: select CONFIG_BLOBLIST * xilinx: dfu: Fill directly update_info.dfu_string * cmd: fwu: Dump custom fields from mdata structure * board: remove capsule update support in set_dfu_alt_info()
This commit is contained in:
@@ -185,6 +185,7 @@ config CMD_UFETCH
|
||||
config CMD_FWU_METADATA
|
||||
bool "fwu metadata read"
|
||||
depends on FWU_MULTI_BANK_UPDATE
|
||||
imply HEXDUMP if FWU_MDATA_V2
|
||||
help
|
||||
Command to read the metadata and dump it's contents
|
||||
|
||||
|
@@ -211,7 +211,7 @@ static int do_bootefi(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
}
|
||||
}
|
||||
|
||||
ret = efi_binary_run(image_buf, size, fdt);
|
||||
ret = efi_binary_run(image_buf, size, fdt, NULL, 0);
|
||||
|
||||
if (ret != EFI_SUCCESS)
|
||||
return CMD_RET_FAILURE;
|
||||
|
@@ -7,6 +7,7 @@
|
||||
#include <dm.h>
|
||||
#include <fwu.h>
|
||||
#include <fwu_mdata.h>
|
||||
#include <hexdump.h>
|
||||
#include <log.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
@@ -45,6 +46,30 @@ static void print_mdata(struct fwu_data *data)
|
||||
img_info->accepted == 0x1 ? "yes" : "no");
|
||||
}
|
||||
}
|
||||
|
||||
if (data->version == 2) {
|
||||
struct fwu_mdata *mdata = data->fwu_mdata;
|
||||
struct fwu_fw_store_desc *desc;
|
||||
void *end;
|
||||
u32 diff;
|
||||
|
||||
/*
|
||||
* fwu_mdata defines only header that's why taking it as array
|
||||
* which exactly point to image description location
|
||||
*/
|
||||
desc = (struct fwu_fw_store_desc *)&mdata[1];
|
||||
|
||||
/* Number of entries is taken from for loop - variable i */
|
||||
end = &desc->img_entry[i];
|
||||
debug("mdata %p, desc %p, end %p\n", mdata, desc, end);
|
||||
|
||||
diff = data->metadata_size - ((void *)end - (void *)mdata);
|
||||
if (diff) {
|
||||
printf("Custom fields covered by CRC len: 0x%x\n", diff);
|
||||
print_hex_dump_bytes("CUSTOM ", DUMP_PREFIX_OFFSET,
|
||||
end, diff);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int do_fwu_mdata_read(struct cmd_tbl *cmdtp, int flag,
|
||||
|
Reference in New Issue
Block a user