diff mbox series

[[PATCH] tools: image-host: fix wrong return value

Message ID 20210531070451.6561-1-liu.ming50@gmail.com
State Accepted
Commit 7c39799dec2cafbe631a35d2c17d080e73741db5
Delegated to: Tom Rini
Headers show
Series [[PATCH] tools: image-host: fix wrong return value | expand

Commit Message

Ming Liu May 31, 2021, 7:04 a.m. UTC
From: Ming Liu <liu.ming50@gmail.com>

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: <unknown error>
| mkimage Can't add hashes to FIT blob: -1

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
---
 tools/image-host.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Igor Opaniuk July 13, 2021, 3:35 p.m. UTC | #1
Hi Ming,

On Mon, May 31, 2021 at 10:05 AM <liu.ming50@gmail.com> wrote:
>
> From: Ming Liu <liu.ming50@gmail.com>
>
> 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: <unknown error>
> | mkimage Can't add hashes to FIT blob: -1
>
> Signed-off-by: Ming Liu <liu.ming50@gmail.com>
> ---
>  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
>

I've hit exactly the same issue on my side today :)

Tested-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Tom Rini July 15, 2021, 1:27 a.m. UTC | #2
On Mon, May 31, 2021 at 09:04:51AM +0200, liu.ming50@gmail.com wrote:

> From: Ming Liu <liu.ming50@gmail.com>
> 
> 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: <unknown error>
> | mkimage Can't add hashes to FIT blob: -1
> 
> Signed-off-by: Ming Liu <liu.ming50@gmail.com>
> Tested-by: Igor Opaniuk <igor.opaniuk@foundries.io>

Applied to u-boot/master, thanks!
diff mbox series

Patch

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];