From 7cba654ca343f52b3b8258cc2073d1287fa96c16 Mon Sep 17 00:00:00 2001 From: Ming Liu Date: Mon, 31 May 2021 09:27:31 +0200 Subject: u-boot-tools: fix a mkimage signature issue A following error was observed: | Can't write signature for 'signature@1' signature node in 'conf@imx6ull-colibri-wifi-eval-v3.dtb' conf node: | uboot-mkimage Can't add hashes to FIT blob: -1 This is caused by a wrong return value being used in uboot source. The return value '-ENOSPC' of fit_set_timestamp function does not match the caller fit_image_write_sig's expection which is '-FDT_ERR_NOSPACE'. Fix it by not calling fit_set_timestamp, but call fdt_setprop instead. Related-to: TOR-1704 Signed-off-by: Ming Liu --- ...1-tools-image-host-fix-wrong-return-value.patch | 41 ++++++++++++++++++++++ recipes-bsp/u-boot/u-boot-tools_%.bbappend | 5 +++ 2 files changed, 46 insertions(+) create mode 100644 recipes-bsp/u-boot/files/0001-tools-image-host-fix-wrong-return-value.patch create mode 100644 recipes-bsp/u-boot/u-boot-tools_%.bbappend (limited to 'recipes-bsp/u-boot') diff --git a/recipes-bsp/u-boot/files/0001-tools-image-host-fix-wrong-return-value.patch b/recipes-bsp/u-boot/files/0001-tools-image-host-fix-wrong-return-value.patch new file mode 100644 index 0000000..5e58173 --- /dev/null +++ b/recipes-bsp/u-boot/files/0001-tools-image-host-fix-wrong-return-value.patch @@ -0,0 +1,41 @@ +From 77fe3ad2ab2953ccdf6e9417cbecc060b45d3e55 Mon Sep 17 00:00:00 2001 +From: Ming Liu +Date: Sun, 30 May 2021 10:32:08 +0200 +Subject: [PATCH] tools: image-host: fix wrong return value + +Upstream-Status: Submitted [ Sent to u-boot@lists.denx.de on 2021-05-31 ] + +The return value '-ENOSPC' of fit_set_timestamp function does not match +the caller fit_image_write_sig's expection which is '-FDT_ERR_NOSPACE'. + +Fix it by not calling fit_set_timestamp, but call fdt_setprop instead. + +This fixes a following mkimage error: +| Can't write signature for 'signature@1' signature node in +| 'conf@imx6ull-colibri-wifi-eval-v3.dtb' conf node: +| mkimage Can't add hashes to FIT blob: -1 + +Signed-off-by: Ming Liu +--- + tools/image-host.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/tools/image-host.c b/tools/image-host.c +index 270d36fe45..73095461a7 100644 +--- a/tools/image-host.c ++++ b/tools/image-host.c +@@ -132,8 +132,10 @@ static int fit_image_write_sig(void *fit, int noffset, uint8_t *value, + if (!ret) { + time_t timestamp = imagetool_get_source_date(cmdname, + time(NULL)); ++ uint32_t t = cpu_to_uimage(timestamp); + +- ret = fit_set_timestamp(fit, noffset, timestamp); ++ ret = fdt_setprop(fit, noffset, FIT_TIMESTAMP_PROP, &t, ++ sizeof(uint32_t)); + } + if (region_prop && !ret) { + uint32_t strdata[2]; +-- +2.29.0 + diff --git a/recipes-bsp/u-boot/u-boot-tools_%.bbappend b/recipes-bsp/u-boot/u-boot-tools_%.bbappend new file mode 100644 index 0000000..a2f2625 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-tools_%.bbappend @@ -0,0 +1,5 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" + +SRC_URI_append = " \ + file://0001-tools-image-host-fix-wrong-return-value.patch \ +" -- cgit v1.2.3