mirror of
https://github.com/smaeul/u-boot.git
synced 2025-10-17 14:18:14 +01:00
ARMv8/sec_firmware: Convert to use fit_get_data_conf_prop
This reduces sec_firmware_get_data to a single call to fit_get_data_conf_prop. I think sec_firmware_check_copy_loadable could also be converted, but it does not map as straightforwardly, so I have left it for a future cleanup. Signed-off-by: Sean Anderson <sean.anderson@seco.com> Signed-off-by: Peng Fan <peng.fan@nxp.com>
This commit is contained in:
parent
37feaf2f72
commit
bdbdaede67
@ -43,43 +43,8 @@ phys_addr_t sec_firmware_addr;
|
|||||||
static int sec_firmware_get_data(const void *sec_firmware_img,
|
static int sec_firmware_get_data(const void *sec_firmware_img,
|
||||||
const void **data, size_t *size)
|
const void **data, size_t *size)
|
||||||
{
|
{
|
||||||
int conf_node_off, fw_node_off;
|
return fit_get_data_conf_prop(sec_firmware_img, SEC_FIRMWARE_FIT_IMAGE,
|
||||||
char *desc;
|
data, size);
|
||||||
int ret;
|
|
||||||
|
|
||||||
conf_node_off = fit_conf_get_node(sec_firmware_img, NULL);
|
|
||||||
if (conf_node_off < 0) {
|
|
||||||
puts("SEC Firmware: no config\n");
|
|
||||||
return -ENOENT;
|
|
||||||
}
|
|
||||||
|
|
||||||
fw_node_off = fit_conf_get_prop_node(sec_firmware_img, conf_node_off,
|
|
||||||
SEC_FIRMWARE_FIT_IMAGE);
|
|
||||||
if (fw_node_off < 0) {
|
|
||||||
printf("SEC Firmware: No '%s' in config\n",
|
|
||||||
SEC_FIRMWARE_FIT_IMAGE);
|
|
||||||
return -ENOLINK;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Verify secure firmware image */
|
|
||||||
if (!(fit_image_verify(sec_firmware_img, fw_node_off))) {
|
|
||||||
printf("SEC Firmware: Bad firmware image (bad CRC)\n");
|
|
||||||
return -EINVAL;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (fit_image_get_data(sec_firmware_img, fw_node_off, data, size)) {
|
|
||||||
printf("SEC Firmware: Can't get %s subimage data/size",
|
|
||||||
SEC_FIRMWARE_FIT_IMAGE);
|
|
||||||
return -ENOENT;
|
|
||||||
}
|
|
||||||
|
|
||||||
ret = fit_get_desc(sec_firmware_img, fw_node_off, &desc);
|
|
||||||
if (ret)
|
|
||||||
printf("SEC Firmware: Can't get description\n");
|
|
||||||
else
|
|
||||||
printf("%s\n", desc);
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user