mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-16 09:54:35 +00:00
cmd: fwu: make changes for supporting FWU metadata version 2
Add support for displaying data specific to FWU metadata version 2. Because the size of the v2 metadata structure is read from the structure itself, allocate memory for the metadata structure by first getting the size of the structure. Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org> Tested-by: Michal Simek <michal.simek@amd.com>
This commit is contained in:
parent
8ee8b9c900
commit
7cfe0d8a48
1 changed files with 18 additions and 21 deletions
|
@ -13,27 +13,33 @@
|
|||
|
||||
#include <linux/types.h>
|
||||
|
||||
static void print_mdata(struct fwu_mdata *mdata)
|
||||
static void print_mdata(struct fwu_data *data)
|
||||
{
|
||||
int i, j;
|
||||
struct fwu_image_entry *img_entry;
|
||||
struct fwu_image_bank_info *img_info;
|
||||
|
||||
printf("\tFWU Metadata\n");
|
||||
printf("crc32: %#x\n", mdata->crc32);
|
||||
printf("version: %#x\n", mdata->version);
|
||||
printf("active_index: %#x\n", mdata->active_index);
|
||||
printf("previous_active_index: %#x\n", mdata->previous_active_index);
|
||||
printf("crc32: %#x\n", data->crc32);
|
||||
printf("version: %#x\n", data->version);
|
||||
printf("active_index: %#x\n", data->active_index);
|
||||
printf("previous_active_index: %#x\n", data->previous_active_index);
|
||||
|
||||
if (data->version == 2) {
|
||||
for (i = 0; i < 4; i++)
|
||||
printf("bank_state[%d]: %#x\n",
|
||||
i, data->bank_state[i]);
|
||||
}
|
||||
|
||||
printf("\tImage Info\n");
|
||||
for (i = 0; i < CONFIG_FWU_NUM_IMAGES_PER_BANK; i++) {
|
||||
img_entry = &mdata->img_entry[i];
|
||||
img_entry = &data->fwu_images[i];
|
||||
printf("\nImage Type Guid: %pUL\n",
|
||||
&img_entry->image_type_uuid);
|
||||
printf("Location Guid: %pUL\n", &img_entry->location_uuid);
|
||||
&img_entry->image_type_guid);
|
||||
printf("Location Guid: %pUL\n", &img_entry->location_guid);
|
||||
for (j = 0; j < CONFIG_FWU_NUM_BANKS; j++) {
|
||||
img_info = &img_entry->img_bank_info[j];
|
||||
printf("Image Guid: %pUL\n", &img_info->image_uuid);
|
||||
printf("Image Guid: %pUL\n", &img_info->image_guid);
|
||||
printf("Image Acceptance: %s\n",
|
||||
img_info->accepted == 0x1 ? "yes" : "no");
|
||||
}
|
||||
|
@ -43,20 +49,11 @@ static void print_mdata(struct fwu_mdata *mdata)
|
|||
int do_fwu_mdata_read(struct cmd_tbl *cmdtp, int flag,
|
||||
int argc, char * const argv[])
|
||||
{
|
||||
int ret = CMD_RET_SUCCESS, res;
|
||||
struct fwu_mdata mdata;
|
||||
struct fwu_data *data = fwu_get_data();
|
||||
|
||||
res = fwu_get_mdata(&mdata);
|
||||
if (res < 0) {
|
||||
log_err("Unable to get valid FWU metadata\n");
|
||||
ret = CMD_RET_FAILURE;
|
||||
goto out;
|
||||
}
|
||||
print_mdata(data);
|
||||
|
||||
print_mdata(&mdata);
|
||||
|
||||
out:
|
||||
return ret;
|
||||
return CMD_RET_SUCCESS;
|
||||
}
|
||||
|
||||
U_BOOT_CMD(
|
||||
|
|
Loading…
Add table
Reference in a new issue