[U-Boot] [PATCH] arm64: zynqmp: accept an absolute path for PMUFW_INIT_FILE
Emmanuel Vadot
manu at bidouilliste.com
Thu May 31 15:14:08 UTC 2018
On Thu, 31 May 2018 16:28:46 +0200
Michal Simek <michal.simek at xilinx.com> wrote:
> On 31.5.2018 14:58, Luca Ceresoli wrote:
> > The value of PMUFW_INIT_FILE is prefixed with "$(srctree)/", thus
> > forcing it to be a relative path inside the U-Boot source tree. Since
> > the PMUFW is a binary file generated outside of U-Boot, the PMUFW
> > binary must be copied inside the U-Boot source tree before the
> > build.
> >
> > This generates a few problems:
> >
> > * if the source tree is shared among different out-of-tree builds,
> > they will pollute (and potentially corrupt) each other
> > * the source tree cannot be read-only
> > * any buildsystem must add a command to copy the PMUFW binary
> > * putting an externally-generated binary in the source tree is ugly
> > as hell
> >
> > Avoid these problems by accepting an absolute path for
> > PMUFW_INIT_FILE. This would be as simple as removing the "$(srctree)/"
> > prefix, but in order to keep backward compatibility we rather use the
> > shell and readlink to get the absolute path even when starting from a
> > relative path.
> >
> > Tested in the 9 possible combinations of:
> > - PMUFW_INIT_FILE empty, relative or absolute
> > - building in-tree, in subdir, in other directory
> >
> > Signed-off-by: Luca Ceresoli <luca at lucaceresoli.net>
> > Cc: Michal Simek <michal.simek at xilinx.com>
> > Cc: Simon Glass <sjg at chromium.org>
> > ---
> > scripts/Makefile.spl | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
> > index 057389997de6..ef1681ef4bf5 100644
> > --- a/scripts/Makefile.spl
> > +++ b/scripts/Makefile.spl
> > @@ -168,7 +168,7 @@ MKIMAGEFLAGS_boot.bin = -T zynqimage -R $(srctree)/$(CONFIG_BOOT_INIT_FILE)
> > endif
> > ifdef CONFIG_ARCH_ZYNQMP
> > MKIMAGEFLAGS_boot.bin = -T zynqmpimage -R $(srctree)/$(CONFIG_BOOT_INIT_FILE) \
> > - -n $(srctree)/$(CONFIG_PMUFW_INIT_FILE)
> > + -n "$(shell cd $(srctree); readlink -m $(CONFIG_PMUFW_INIT_FILE))"
> > endif
> >
> > spl/boot.bin: $(obj)/u-boot-spl.bin FORCE
> >
>
> looks good.
>
> Tom: Do we still have people who build u-boot on BSD system?
> I would like to know if this readlink -m works there.
>
> Thanks,
> Michal
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot
We don't have -m on FreeBSD and after checking they don't either on
OpenBSD and NetBSD.
Cheers,
--
Emmanuel Vadot <manu at bidouilliste.com> <manu at freebsd.org>
More information about the U-Boot
mailing list