* (no subject)
@ 2022-11-23 11:55 Marc Kleine-Budde
2022-11-23 11:55 ` [PATCH v3 1/2] tools: mkimage: don't print error message "Success" in case of failure Marc Kleine-Budde
2022-11-23 11:55 ` [PATCH v3 2/2] tools: mkimage: add new image type "fdt_legacy" Marc Kleine-Budde
0 siblings, 2 replies; 7+ messages in thread
From: Marc Kleine-Budde @ 2022-11-23 11:55 UTC (permalink / raw)
To: u-boot; +Cc: embedded
Hello,
the first patch cleans up the error message output if struct
image_type_params::set_header is set, the other adds support for
creating legacy images with type flat_dt.
regards,
Marc
Changes since v2:
- renamed new image type to "fdt_legacy" (suggested by Sean Anderson)
Changes since v1:
- introduce new image type (suggested by Sean Anderson)
instead of adding new cmd line parameter
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v3 1/2] tools: mkimage: don't print error message "Success" in case of failure
2022-11-23 11:55 Marc Kleine-Budde
@ 2022-11-23 11:55 ` Marc Kleine-Budde
2022-12-04 21:17 ` Simon Glass
2022-12-08 20:23 ` Tom Rini
2022-11-23 11:55 ` [PATCH v3 2/2] tools: mkimage: add new image type "fdt_legacy" Marc Kleine-Budde
1 sibling, 2 replies; 7+ messages in thread
From: Marc Kleine-Budde @ 2022-11-23 11:55 UTC (permalink / raw)
To: u-boot; +Cc: embedded, Marc Kleine-Budde
In case there's no struct image_type_params::set_header callback, no
"errno" will be set. Don't fail with an error message, followed by
"Success". Remove the printing of the human readable "errno" value.
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
---
tools/mkimage.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/mkimage.c b/tools/mkimage.c
index 30c6df77081f..35a6b1fb799c 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -760,8 +760,8 @@ int main(int argc, char **argv)
if (tparams->set_header)
tparams->set_header (ptr, &sbuf, ifd, ¶ms);
else {
- fprintf (stderr, "%s: Can't set header for %s: %s\n",
- params.cmdname, tparams->name, strerror(errno));
+ fprintf (stderr, "%s: Can't set header for %s\n",
+ params.cmdname, tparams->name);
exit (EXIT_FAILURE);
}
--
2.35.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v3 2/2] tools: mkimage: add new image type "fdt_legacy"
2022-11-23 11:55 Marc Kleine-Budde
2022-11-23 11:55 ` [PATCH v3 1/2] tools: mkimage: don't print error message "Success" in case of failure Marc Kleine-Budde
@ 2022-11-23 11:55 ` Marc Kleine-Budde
2022-11-24 4:21 ` Sean Anderson
2022-12-08 20:23 ` Tom Rini
1 sibling, 2 replies; 7+ messages in thread
From: Marc Kleine-Budde @ 2022-11-23 11:55 UTC (permalink / raw)
To: u-boot; +Cc: embedded, Marc Kleine-Budde
If the user select the image type "flat_dt" a FIT image will be build.
This breaks the legacy use case of putting a Flat Device Tree into a
legacy u-boot image.
Add a new image type "fdt_legacy" to build a legacy u-boot image
with a "flat_dt" type.
Link: https://lore.kernel.org/all/20221028155205.ojw6tcso2fofgnhm@pengutronix.de
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
---
boot/image.c | 1 +
include/image.h | 1 +
tools/default_image.c | 11 +++++++++--
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/boot/image.c b/boot/image.c
index b33d1dfc6b36..958dbf853474 100644
--- a/boot/image.c
+++ b/boot/image.c
@@ -180,6 +180,7 @@ static const table_entry_t uimage_type[] = {
{ IH_TYPE_COPRO, "copro", "Coprocessor Image"},
{ IH_TYPE_SUNXI_EGON, "sunxi_egon", "Allwinner eGON Boot Image" },
{ IH_TYPE_SUNXI_TOC0, "sunxi_toc0", "Allwinner TOC0 Boot Image" },
+ { IH_TYPE_FDT_LEGACY, "fdt_legacy", "legacy Image with Flat Device Tree ", },
{ -1, "", "", },
};
diff --git a/include/image.h b/include/image.h
index 65d0d4f4387d..601bf85e3dcc 100644
--- a/include/image.h
+++ b/include/image.h
@@ -229,6 +229,7 @@ enum image_type_t {
IH_TYPE_COPRO, /* Coprocessor Image for remoteproc*/
IH_TYPE_SUNXI_EGON, /* Allwinner eGON Boot Image */
IH_TYPE_SUNXI_TOC0, /* Allwinner TOC0 Boot Image */
+ IH_TYPE_FDT_LEGACY, /* Binary Flat Device Tree Blob in a Legacy Image */
IH_TYPE_COUNT, /* Number of image types */
};
diff --git a/tools/default_image.c b/tools/default_image.c
index 4a067e65862e..0ac3382003d5 100644
--- a/tools/default_image.c
+++ b/tools/default_image.c
@@ -27,7 +27,8 @@ static struct legacy_img_hdr header;
static int image_check_image_types(uint8_t type)
{
if (((type > IH_TYPE_INVALID) && (type < IH_TYPE_FLATDT)) ||
- (type == IH_TYPE_KERNEL_NOLOAD) || (type == IH_TYPE_FIRMWARE_IVT))
+ (type == IH_TYPE_KERNEL_NOLOAD) || (type == IH_TYPE_FIRMWARE_IVT) ||
+ (type == IH_TYPE_FDT_LEGACY))
return EXIT_SUCCESS;
else
return EXIT_FAILURE;
@@ -94,6 +95,7 @@ static void image_set_header(void *ptr, struct stat *sbuf, int ifd,
uint32_t imagesize;
uint32_t ep;
uint32_t addr;
+ int type;
struct legacy_img_hdr *hdr = (struct legacy_img_hdr *)ptr;
checksum = crc32(0,
@@ -113,6 +115,11 @@ static void image_set_header(void *ptr, struct stat *sbuf, int ifd,
else
imagesize = sbuf->st_size - sizeof(struct legacy_img_hdr);
+ if (params->type == IH_TYPE_FDT_LEGACY)
+ type = IH_TYPE_FLATDT;
+ else
+ type = params->type;
+
if (params->os == IH_OS_TEE) {
addr = optee_image_get_load_addr(hdr);
ep = optee_image_get_entry_point(hdr);
@@ -127,7 +134,7 @@ static void image_set_header(void *ptr, struct stat *sbuf, int ifd,
image_set_dcrc(hdr, checksum);
image_set_os(hdr, params->os);
image_set_arch(hdr, params->arch);
- image_set_type(hdr, params->type);
+ image_set_type(hdr, type);
image_set_comp(hdr, params->comp);
image_set_name(hdr, params->imagename);
--
2.35.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v3 2/2] tools: mkimage: add new image type "fdt_legacy"
2022-11-23 11:55 ` [PATCH v3 2/2] tools: mkimage: add new image type "fdt_legacy" Marc Kleine-Budde
@ 2022-11-24 4:21 ` Sean Anderson
2022-12-08 20:23 ` Tom Rini
1 sibling, 0 replies; 7+ messages in thread
From: Sean Anderson @ 2022-11-24 4:21 UTC (permalink / raw)
To: Marc Kleine-Budde, u-boot; +Cc: embedded, Simon Glass
On 11/23/22 06:55, Marc Kleine-Budde wrote:
> If the user select the image type "flat_dt" a FIT image will be build.
> This breaks the legacy use case of putting a Flat Device Tree into a
> legacy u-boot image.
>
> Add a new image type "fdt_legacy" to build a legacy u-boot image
> with a "flat_dt" type.
>
> Link: https://lore.kernel.org/all/20221028155205.ojw6tcso2fofgnhm@pengutronix.de
> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
> ---
> boot/image.c | 1 +
> include/image.h | 1 +
> tools/default_image.c | 11 +++++++++--
> 3 files changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/boot/image.c b/boot/image.c
> index b33d1dfc6b36..958dbf853474 100644
> --- a/boot/image.c
> +++ b/boot/image.c
> @@ -180,6 +180,7 @@ static const table_entry_t uimage_type[] = {
> { IH_TYPE_COPRO, "copro", "Coprocessor Image"},
> { IH_TYPE_SUNXI_EGON, "sunxi_egon", "Allwinner eGON Boot Image" },
> { IH_TYPE_SUNXI_TOC0, "sunxi_toc0", "Allwinner TOC0 Boot Image" },
> + { IH_TYPE_FDT_LEGACY, "fdt_legacy", "legacy Image with Flat Device Tree ", },
> { -1, "", "", },
> };
>
> diff --git a/include/image.h b/include/image.h
> index 65d0d4f4387d..601bf85e3dcc 100644
> --- a/include/image.h
> +++ b/include/image.h
> @@ -229,6 +229,7 @@ enum image_type_t {
> IH_TYPE_COPRO, /* Coprocessor Image for remoteproc*/
> IH_TYPE_SUNXI_EGON, /* Allwinner eGON Boot Image */
> IH_TYPE_SUNXI_TOC0, /* Allwinner TOC0 Boot Image */
> + IH_TYPE_FDT_LEGACY, /* Binary Flat Device Tree Blob in a Legacy Image */
>
> IH_TYPE_COUNT, /* Number of image types */
> };
> diff --git a/tools/default_image.c b/tools/default_image.c
> index 4a067e65862e..0ac3382003d5 100644
> --- a/tools/default_image.c
> +++ b/tools/default_image.c
> @@ -27,7 +27,8 @@ static struct legacy_img_hdr header;
> static int image_check_image_types(uint8_t type)
> {
> if (((type > IH_TYPE_INVALID) && (type < IH_TYPE_FLATDT)) ||
> - (type == IH_TYPE_KERNEL_NOLOAD) || (type == IH_TYPE_FIRMWARE_IVT))
> + (type == IH_TYPE_KERNEL_NOLOAD) || (type == IH_TYPE_FIRMWARE_IVT) ||
> + (type == IH_TYPE_FDT_LEGACY))
> return EXIT_SUCCESS;
> else
> return EXIT_FAILURE;
> @@ -94,6 +95,7 @@ static void image_set_header(void *ptr, struct stat *sbuf, int ifd,
> uint32_t imagesize;
> uint32_t ep;
> uint32_t addr;
> + int type;
> struct legacy_img_hdr *hdr = (struct legacy_img_hdr *)ptr;
>
> checksum = crc32(0,
> @@ -113,6 +115,11 @@ static void image_set_header(void *ptr, struct stat *sbuf, int ifd,
> else
> imagesize = sbuf->st_size - sizeof(struct legacy_img_hdr);
>
> + if (params->type == IH_TYPE_FDT_LEGACY)
> + type = IH_TYPE_FLATDT;
> + else
> + type = params->type;
> +
> if (params->os == IH_OS_TEE) {
> addr = optee_image_get_load_addr(hdr);
> ep = optee_image_get_entry_point(hdr);
> @@ -127,7 +134,7 @@ static void image_set_header(void *ptr, struct stat *sbuf, int ifd,
> image_set_dcrc(hdr, checksum);
> image_set_os(hdr, params->os);
> image_set_arch(hdr, params->arch);
> - image_set_type(hdr, params->type);
> + image_set_type(hdr, type);
> image_set_comp(hdr, params->comp);
>
> image_set_name(hdr, params->imagename);
Reviewed-by: Sean Anderson <seanga2@gmail.com>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v3 1/2] tools: mkimage: don't print error message "Success" in case of failure
2022-11-23 11:55 ` [PATCH v3 1/2] tools: mkimage: don't print error message "Success" in case of failure Marc Kleine-Budde
@ 2022-12-04 21:17 ` Simon Glass
2022-12-08 20:23 ` Tom Rini
1 sibling, 0 replies; 7+ messages in thread
From: Simon Glass @ 2022-12-04 21:17 UTC (permalink / raw)
To: Marc Kleine-Budde; +Cc: u-boot, embedded
On Thu, 24 Nov 2022 at 00:55, Marc Kleine-Budde <mkl@pengutronix.de> wrote:
>
> In case there's no struct image_type_params::set_header callback, no
> "errno" will be set. Don't fail with an error message, followed by
> "Success". Remove the printing of the human readable "errno" value.
>
> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
> ---
> tools/mkimage.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
Reviewed-by: Simon Glass <sjg@chromium.org>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v3 1/2] tools: mkimage: don't print error message "Success" in case of failure
2022-11-23 11:55 ` [PATCH v3 1/2] tools: mkimage: don't print error message "Success" in case of failure Marc Kleine-Budde
2022-12-04 21:17 ` Simon Glass
@ 2022-12-08 20:23 ` Tom Rini
1 sibling, 0 replies; 7+ messages in thread
From: Tom Rini @ 2022-12-08 20:23 UTC (permalink / raw)
To: Marc Kleine-Budde; +Cc: u-boot, embedded
[-- Attachment #1: Type: text/plain, Size: 438 bytes --]
On Wed, Nov 23, 2022 at 12:55:32PM +0100, Marc Kleine-Budde wrote:
> In case there's no struct image_type_params::set_header callback, no
> "errno" will be set. Don't fail with an error message, followed by
> "Success". Remove the printing of the human readable "errno" value.
>
> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
> Reviewed-by: Simon Glass <sjg@chromium.org>
Applied to u-boot/next, thanks!
--
Tom
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v3 2/2] tools: mkimage: add new image type "fdt_legacy"
2022-11-23 11:55 ` [PATCH v3 2/2] tools: mkimage: add new image type "fdt_legacy" Marc Kleine-Budde
2022-11-24 4:21 ` Sean Anderson
@ 2022-12-08 20:23 ` Tom Rini
1 sibling, 0 replies; 7+ messages in thread
From: Tom Rini @ 2022-12-08 20:23 UTC (permalink / raw)
To: Marc Kleine-Budde; +Cc: u-boot, embedded
[-- Attachment #1: Type: text/plain, Size: 580 bytes --]
On Wed, Nov 23, 2022 at 12:55:33PM +0100, Marc Kleine-Budde wrote:
> If the user select the image type "flat_dt" a FIT image will be build.
> This breaks the legacy use case of putting a Flat Device Tree into a
> legacy u-boot image.
>
> Add a new image type "fdt_legacy" to build a legacy u-boot image
> with a "flat_dt" type.
>
> Link: https://lore.kernel.org/all/20221028155205.ojw6tcso2fofgnhm@pengutronix.de
> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
> Reviewed-by: Sean Anderson <seanga2@gmail.com>
Applied to u-boot/next, thanks!
--
Tom
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2022-12-08 20:25 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-23 11:55 Marc Kleine-Budde
2022-11-23 11:55 ` [PATCH v3 1/2] tools: mkimage: don't print error message "Success" in case of failure Marc Kleine-Budde
2022-12-04 21:17 ` Simon Glass
2022-12-08 20:23 ` Tom Rini
2022-11-23 11:55 ` [PATCH v3 2/2] tools: mkimage: add new image type "fdt_legacy" Marc Kleine-Budde
2022-11-24 4:21 ` Sean Anderson
2022-12-08 20:23 ` Tom Rini
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.