* [Buildroot] [PATCH 0/2] boot/uboot: clean-up for ZynqMP pmufw handling
@ 2024-08-15 14:22 Brandon Maier via buildroot
2024-08-15 14:22 ` [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used Brandon Maier via buildroot
2024-08-15 14:22 ` [Buildroot] [PATCH 2/2] boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf Brandon Maier via buildroot
0 siblings, 2 replies; 10+ messages in thread
From: Brandon Maier via buildroot @ 2024-08-15 14:22 UTC (permalink / raw)
To: buildroot; +Cc: Luca Ceresoli, Brandon Maier, Thomas Petazzoni, Neal Frager
Signed-off-by: Brandon Maier <brandon.maier@collins.com>
---
Brandon Maier (2):
boot/uboot: avoid setting PMUFW_INIT_FILE when not used
boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf
boot/uboot/uboot.mk | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
---
base-commit: 48e7affffa06bbe23a1cd190d0a765956cf179b0
change-id: 20240815-boot-uboot-clean-for-pmufw-c0c401a9fec5
Best regards,
--
Brandon Maier <brandon.maier@collins.com>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used
2024-08-15 14:22 [Buildroot] [PATCH 0/2] boot/uboot: clean-up for ZynqMP pmufw handling Brandon Maier via buildroot
@ 2024-08-15 14:22 ` Brandon Maier via buildroot
2024-08-15 17:44 ` Frager, Neal via buildroot
2024-08-19 8:32 ` Luca Ceresoli via buildroot
2024-08-15 14:22 ` [Buildroot] [PATCH 2/2] boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf Brandon Maier via buildroot
1 sibling, 2 replies; 10+ messages in thread
From: Brandon Maier via buildroot @ 2024-08-15 14:22 UTC (permalink / raw)
To: buildroot; +Cc: Luca Ceresoli, Brandon Maier, Thomas Petazzoni, Neal Frager
The CONFIG_PMUFW_INIT_FILE is always set, even when
BR2_TARGET_UBOOT_ZYNQMP_PMUFW is an empty string, which prevents a user
from setting this directly in their U-Boot defconfig or frag.
Signed-off-by: Brandon Maier <brandon.maier@collins.com>
---
boot/uboot/uboot.mk | 3 +++
1 file changed, 3 insertions(+)
diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index cdb9f435f7..9de0776ace 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -469,9 +469,12 @@ UBOOT_PRE_BUILD_HOOKS += UBOOT_ZYNQMP_PMUFW_CONVERT
else
UBOOT_ZYNQMP_PMUFW_PATH_FINAL = $(UBOOT_ZYNQMP_PMUFW_PATH)
endif
+
+ifneq ($(UBOOT_ZYNQMP_PMUFW_PATH_FINAL),)
define UBOOT_ZYNQMP_KCONFIG_PMUFW
$(call KCONFIG_SET_OPT,CONFIG_PMUFW_INIT_FILE,"$(UBOOT_ZYNQMP_PMUFW_PATH_FINAL)")
endef
+endif
UBOOT_ZYNQMP_PM_CFG = $(call qstrip,$(BR2_TARGET_UBOOT_ZYNQMP_PM_CFG))
ifneq ($(UBOOT_ZYNQMP_PM_CFG),)
--
2.45.2
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 2/2] boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf
2024-08-15 14:22 [Buildroot] [PATCH 0/2] boot/uboot: clean-up for ZynqMP pmufw handling Brandon Maier via buildroot
2024-08-15 14:22 ` [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used Brandon Maier via buildroot
@ 2024-08-15 14:22 ` Brandon Maier via buildroot
2024-08-15 17:43 ` Frager, Neal via buildroot
2024-08-19 8:38 ` Luca Ceresoli via buildroot
1 sibling, 2 replies; 10+ messages in thread
From: Brandon Maier via buildroot @ 2024-08-15 14:22 UTC (permalink / raw)
To: buildroot; +Cc: Luca Ceresoli, Brandon Maier, Thomas Petazzoni, Neal Frager
Converting the pmufw.elf to a binary works with any objcopy, regardless
if it's from the host or cross-compiler. Prefer to use the
$(TARGET_OBJCOPY) as it's always available and reproducible.
Signed-off-by: Brandon Maier <brandon.maier@collins.com>
---
boot/uboot/uboot.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index 9de0776ace..08493996e5 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -463,7 +463,7 @@ endif #BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
ifeq ($(suffix $(UBOOT_ZYNQMP_PMUFW_PATH)),.elf)
UBOOT_ZYNQMP_PMUFW_PATH_FINAL = $(basename $(UBOOT_ZYNQMP_PMUFW_PATH)).bin
define UBOOT_ZYNQMP_PMUFW_CONVERT
- objcopy -O binary -I elf32-little $(UBOOT_ZYNQMP_PMUFW_PATH) $(UBOOT_ZYNQMP_PMUFW_PATH_FINAL)
+ $(TARGET_OBJCOPY) -O binary -I elf32-little $(UBOOT_ZYNQMP_PMUFW_PATH) $(UBOOT_ZYNQMP_PMUFW_PATH_FINAL)
endef
UBOOT_PRE_BUILD_HOOKS += UBOOT_ZYNQMP_PMUFW_CONVERT
else
--
2.45.2
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [Buildroot] [PATCH 2/2] boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf
2024-08-15 14:22 ` [Buildroot] [PATCH 2/2] boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf Brandon Maier via buildroot
@ 2024-08-15 17:43 ` Frager, Neal via buildroot
2024-08-19 8:38 ` Luca Ceresoli via buildroot
1 sibling, 0 replies; 10+ messages in thread
From: Frager, Neal via buildroot @ 2024-08-15 17:43 UTC (permalink / raw)
To: Brandon Maier, buildroot@buildroot.org; +Cc: Luca Ceresoli, Thomas Petazzoni
Hi Brandon,
> Converting the pmufw.elf to a binary works with any objcopy, regardless
> if it's from the host or cross-compiler. Prefer to use the
> $(TARGET_OBJCOPY) as it's always available and reproducible.
> Signed-off-by: Brandon Maier <brandon.maier@collins.com>
I confirm that objcopy is arch agnostic, so it does not matter whether it is
an x86 objcopy or arm objcopy when converting a microblaze .elf to .bin.
You have convinced me that this is worth changing because of your
reproducibility argument.
Reviewed-by: Neal Frager <neal.frager@amd.com>
Best regards,
Neal Frager
AMD
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used
2024-08-15 14:22 ` [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used Brandon Maier via buildroot
@ 2024-08-15 17:44 ` Frager, Neal via buildroot
2024-08-19 8:32 ` Luca Ceresoli via buildroot
1 sibling, 0 replies; 10+ messages in thread
From: Frager, Neal via buildroot @ 2024-08-15 17:44 UTC (permalink / raw)
To: Brandon Maier, buildroot@buildroot.org; +Cc: Luca Ceresoli, Thomas Petazzoni
> The CONFIG_PMUFW_INIT_FILE is always set, even when
> BR2_TARGET_UBOOT_ZYNQMP_PMUFW is an empty string, which prevents a user
> from setting this directly in their U-Boot defconfig or frag.
> Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Reviewed-by: Neal Frager <neal.frager@amd.com>
Best regards,
Neal Frager
AMD
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used
2024-08-15 14:22 ` [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used Brandon Maier via buildroot
2024-08-15 17:44 ` Frager, Neal via buildroot
@ 2024-08-19 8:32 ` Luca Ceresoli via buildroot
2024-08-19 8:43 ` Thomas Petazzoni via buildroot
1 sibling, 1 reply; 10+ messages in thread
From: Luca Ceresoli via buildroot @ 2024-08-19 8:32 UTC (permalink / raw)
To: Brandon Maier; +Cc: Neal Frager, Thomas Petazzoni, buildroot
Hello Brandon,
On Thu, 15 Aug 2024 14:22:30 +0000
Brandon Maier <brandon.maier@collins.com> wrote:
> The CONFIG_PMUFW_INIT_FILE is always set, even when
> BR2_TARGET_UBOOT_ZYNQMP_PMUFW is an empty string, which prevents a user
> from setting this directly in their U-Boot defconfig or frag.
I think there are two potential reasons for applying this patch:
1. setting an empty string lets the build finish apparently
successfully, but the output binaries are not working
2. allowing users to set CONFIG_PMUFW_INIT_FILE in their U-Boot config
and have Buildroot let it pass through
For point 1, as I wrote earlier today I think this won't happen, based
on the U-Boot code.
For point 2, which is the motivation you present in this patch, I don't
see a valid use case. Without a use case, I'd rather not add code to
uboot.mk, no matter if it is only a few lines. With a use case, I'd be
totally OK.
Luca
--
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Buildroot] [PATCH 2/2] boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf
2024-08-15 14:22 ` [Buildroot] [PATCH 2/2] boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf Brandon Maier via buildroot
2024-08-15 17:43 ` Frager, Neal via buildroot
@ 2024-08-19 8:38 ` Luca Ceresoli via buildroot
2024-08-19 19:41 ` Brandon Maier via buildroot
1 sibling, 1 reply; 10+ messages in thread
From: Luca Ceresoli via buildroot @ 2024-08-19 8:38 UTC (permalink / raw)
To: Brandon Maier; +Cc: Neal Frager, Thomas Petazzoni, buildroot
Hello Brandon,
On Thu, 15 Aug 2024 14:22:31 +0000
Brandon Maier <brandon.maier@collins.com> wrote:
> Converting the pmufw.elf to a binary works with any objcopy, regardless
> if it's from the host or cross-compiler. Prefer to use the
> $(TARGET_OBJCOPY) as it's always available and reproducible.
>
> Signed-off-by: Brandon Maier <brandon.maier@collins.com>
> ---
> boot/uboot/uboot.mk | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
> index 9de0776ace..08493996e5 100644
> --- a/boot/uboot/uboot.mk
> +++ b/boot/uboot/uboot.mk
> @@ -463,7 +463,7 @@ endif #BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
> ifeq ($(suffix $(UBOOT_ZYNQMP_PMUFW_PATH)),.elf)
> UBOOT_ZYNQMP_PMUFW_PATH_FINAL = $(basename $(UBOOT_ZYNQMP_PMUFW_PATH)).bin
> define UBOOT_ZYNQMP_PMUFW_CONVERT
> - objcopy -O binary -I elf32-little $(UBOOT_ZYNQMP_PMUFW_PATH) $(UBOOT_ZYNQMP_PMUFW_PATH_FINAL)
> + $(TARGET_OBJCOPY) -O binary -I elf32-little $(UBOOT_ZYNQMP_PMUFW_PATH) $(UBOOT_ZYNQMP_PMUFW_PATH_FINAL)
As I wrote earlier today (way after you sent this patch, so surely not
blaming you!) a short comment would help understand why we are using
the "wrong" objcopy.
E.g.:
# objcopy is arch-agnostic so we can use $(TARGET_OBJCOPY) in lack of
# a microblaze objcopy
But this can be added later, or in v2 in case you send one, so:
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
--
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used
2024-08-19 8:32 ` Luca Ceresoli via buildroot
@ 2024-08-19 8:43 ` Thomas Petazzoni via buildroot
2024-08-19 19:24 ` Brandon Maier via buildroot
0 siblings, 1 reply; 10+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-08-19 8:43 UTC (permalink / raw)
To: Luca Ceresoli; +Cc: Neal Frager, Brandon Maier, buildroot
Hello,
On Mon, 19 Aug 2024 10:32:26 +0200
Luca Ceresoli <luca.ceresoli@bootlin.com> wrote:
> I think there are two potential reasons for applying this patch:
>
> 1. setting an empty string lets the build finish apparently
> successfully, but the output binaries are not working
>
> 2. allowing users to set CONFIG_PMUFW_INIT_FILE in their U-Boot config
> and have Buildroot let it pass through
>
> For point 1, as I wrote earlier today I think this won't happen, based
> on the U-Boot code.
>
> For point 2, which is the motivation you present in this patch, I don't
> see a valid use case. Without a use case, I'd rather not add code to
> uboot.mk, no matter if it is only a few lines. With a use case, I'd be
> totally OK.
My initial point was that I found it odd that:
$(call KCONFIG_SET_OPT,CONFIG_PMUFW_INIT_FILE,"$(UBOOT_ZYNQMP_PMUFW_PATH_FINAL)")
was done unconditionally. But in fact, it's done under the condition:
ifeq ($(BR2_TARGET_UBOOT_ZYNQMP),y)
so I think the code is indeed fine as it is.
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used
2024-08-19 8:43 ` Thomas Petazzoni via buildroot
@ 2024-08-19 19:24 ` Brandon Maier via buildroot
0 siblings, 0 replies; 10+ messages in thread
From: Brandon Maier via buildroot @ 2024-08-19 19:24 UTC (permalink / raw)
To: Thomas Petazzoni, Luca Ceresoli; +Cc: buildroot, Neal Frager
Hi Thomas, Luca,
On Mon Aug 19, 2024 at 8:43 AM UTC, Thomas Petazzoni via buildroot wrote:
> Hello,
>
> On Mon, 19 Aug 2024 10:32:26 +0200
> Luca Ceresoli <luca.ceresoli@bootlin.com> wrote:
>
> > I think there are two potential reasons for applying this patch:
> >
> > 1. setting an empty string lets the build finish apparently
> > successfully, but the output binaries are not working
> >
> > 2. allowing users to set CONFIG_PMUFW_INIT_FILE in their U-Boot config
> > and have Buildroot let it pass through
> >
> > For point 1, as I wrote earlier today I think this won't happen, based
> > on the U-Boot code.
> >
> > For point 2, which is the motivation you present in this patch, I don't
> > see a valid use case. Without a use case, I'd rather not add code to
> > uboot.mk, no matter if it is only a few lines. With a use case, I'd be
> > totally OK.
>
> My initial point was that I found it odd that:
>
> $(call KCONFIG_SET_OPT,CONFIG_PMUFW_INIT_FILE,"$(UBOOT_ZYNQMP_PMUFW_PATH_FINAL)")
>
> was done unconditionally. But in fact, it's done under the condition:
>
> ifeq ($(BR2_TARGET_UBOOT_ZYNQMP),y)
>
> so I think the code is indeed fine as it is.
Sounds good to me, I don't have a use case either. I'll drop this patch
when I send the v2.
Thanks,
Brandon Maier
>
> Thomas
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Buildroot] [PATCH 2/2] boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf
2024-08-19 8:38 ` Luca Ceresoli via buildroot
@ 2024-08-19 19:41 ` Brandon Maier via buildroot
0 siblings, 0 replies; 10+ messages in thread
From: Brandon Maier via buildroot @ 2024-08-19 19:41 UTC (permalink / raw)
To: Luca Ceresoli; +Cc: buildroot, Thomas Petazzoni, Neal Frager
Hi Luca,
On Mon Aug 19, 2024 at 8:38 AM UTC, Luca Ceresoli via buildroot wrote:
> Hello Brandon,
>
> On Thu, 15 Aug 2024 14:22:31 +0000
> Brandon Maier <brandon.maier@collins.com> wrote:
>
> > Converting the pmufw.elf to a binary works with any objcopy, regardless
> > if it's from the host or cross-compiler. Prefer to use the
> > $(TARGET_OBJCOPY) as it's always available and reproducible.
> >
> > Signed-off-by: Brandon Maier <brandon.maier@collins.com>
> > ---
> > boot/uboot/uboot.mk | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
> > index 9de0776ace..08493996e5 100644
> > --- a/boot/uboot/uboot.mk
> > +++ b/boot/uboot/uboot.mk
> > @@ -463,7 +463,7 @@ endif #BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
> > ifeq ($(suffix $(UBOOT_ZYNQMP_PMUFW_PATH)),.elf)
> > UBOOT_ZYNQMP_PMUFW_PATH_FINAL = $(basename $(UBOOT_ZYNQMP_PMUFW_PATH)).bin
> > define UBOOT_ZYNQMP_PMUFW_CONVERT
> > - objcopy -O binary -I elf32-little $(UBOOT_ZYNQMP_PMUFW_PATH) $(UBOOT_ZYNQMP_PMUFW_PATH_FINAL)
> > + $(TARGET_OBJCOPY) -O binary -I elf32-little $(UBOOT_ZYNQMP_PMUFW_PATH) $(UBOOT_ZYNQMP_PMUFW_PATH_FINAL)
>
> As I wrote earlier today (way after you sent this patch, so surely not
> blaming you!) a short comment would help understand why we are using
> the "wrong" objcopy.
>
> E.g.:
>
> # objcopy is arch-agnostic so we can use $(TARGET_OBJCOPY) in lack of
> # a microblaze objcopy
Agreed a comment would be good, I sent a v2 with this change.
Thank you!
Brandon Maier
>
> But this can be added later, or in v2 in case you send one, so:
>
> Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2024-08-19 19:41 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-15 14:22 [Buildroot] [PATCH 0/2] boot/uboot: clean-up for ZynqMP pmufw handling Brandon Maier via buildroot
2024-08-15 14:22 ` [Buildroot] [PATCH 1/2] boot/uboot: avoid setting PMUFW_INIT_FILE when not used Brandon Maier via buildroot
2024-08-15 17:44 ` Frager, Neal via buildroot
2024-08-19 8:32 ` Luca Ceresoli via buildroot
2024-08-19 8:43 ` Thomas Petazzoni via buildroot
2024-08-19 19:24 ` Brandon Maier via buildroot
2024-08-15 14:22 ` [Buildroot] [PATCH 2/2] boot/uboot: use $(TARGET_OBJCOPY) for ZynqMP pmufw.elf Brandon Maier via buildroot
2024-08-15 17:43 ` Frager, Neal via buildroot
2024-08-19 8:38 ` Luca Ceresoli via buildroot
2024-08-19 19:41 ` Brandon Maier via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox