From: Ming Liu <[email protected]>

A following error was observed:
| Can't write signature for 'signature@1' signature node in 
'[email protected]' conf node: <unknown error>
| 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.

Signed-off-by: Ming Liu <[email protected]>
---
 ...ls-image-host-fix-wrong-return-value.patch | 41 +++++++++++++++++++
 .../u-boot/u-boot-tools_2021.04.bb            |  1 +
 2 files changed, 42 insertions(+)
 create mode 100644 
meta/recipes-bsp/u-boot/files/0001-tools-image-host-fix-wrong-return-value.patch

diff --git 
a/meta/recipes-bsp/u-boot/files/0001-tools-image-host-fix-wrong-return-value.patch
 
b/meta/recipes-bsp/u-boot/files/0001-tools-image-host-fix-wrong-return-value.patch
new file mode 100644
index 0000000000..81687203e4
--- /dev/null
+++ 
b/meta/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 <[email protected]>
+Date: Sun, 30 May 2021 10:32:08 +0200
+Subject: [PATCH] tools: image-host: fix wrong return value
+
+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
+| '[email protected]' conf node: <unknown error>
+| mkimage Can't add hashes to FIT blob: -1
+
+Upstream-Status: Submitted [ 
https://patchwork.ozlabs.org/project/uboot/patch/[email protected]
 ]
+
+Signed-off-by: Ming Liu <[email protected]>
+---
+ 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/meta/recipes-bsp/u-boot/u-boot-tools_2021.04.bb 
b/meta/recipes-bsp/u-boot/u-boot-tools_2021.04.bb
index ef386f76e6..4e90081911 100644
--- a/meta/recipes-bsp/u-boot/u-boot-tools_2021.04.bb
+++ b/meta/recipes-bsp/u-boot/u-boot-tools_2021.04.bb
@@ -1,3 +1,4 @@
 require u-boot-common.inc
 require u-boot-tools.inc
 
+SRC_URI_append = " file://0001-tools-image-host-fix-wrong-return-value.patch"
-- 
2.29.0

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#153131): 
https://lists.openembedded.org/g/openembedded-core/message/153131
Mute This Topic: https://lists.openembedded.org/mt/83685911/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to