On Thu, 2018-09-06 at 15:41 +0200, Marek Vasut wrote: > On 09/06/2018 03:39 PM, Dalon L Westergreen wrote: > > On Thu, 2018-09-06 at 12:09 +0200, Marek Vasut wrote: > > On 09/06/2018 05:02 AM, Dalon Westergreen wrote: > Stratix10 requires a hex image of the spl for boot. The hex > image is added to the FPGA configuration image and loaded to > the processor memory by the configuration engine. > > v2: > -> add CONFIG_OF_EMBED to include dtb in elf > -> generate hex from elf source > > Signed-off-by: Dalon Westergreen <dwest...@gmail.com > <mailto:dwest...@gmail.com>> > --- > configs/socfpga_stratix10_defconfig | 1 + > scripts/Makefile.spl | 6 ++++++ > 2 files changed, 7 insertions(+) > > diff --git a/configs/socfpga_stratix10_defconfig > b/configs/socfpga_stratix10_defconfig > index dceadff439..17cc732cbe 100644 > --- a/configs/socfpga_stratix10_defconfig > +++ b/configs/socfpga_stratix10_defconfig > @@ -56,3 +56,4 @@ CONFIG_DM_USB=y > CONFIG_USB_DWC2=y > CONFIG_USB_STORAGE=y > CONFIG_USE_TINY_PRINTF=y > +CONFIG_OF_EMBED=y > > Why is this needed ? And where did the objcopy hack go ? What is the > explanation here ? > > You suggested the use of CONFIG_OF_EMBED as an alternative to using the > u-boot-spl-dtb.bin for objcopy. > The intent is to ensure that the spl elf has the dtb included, and then > a simple objcopy to elf to hex is fine. > You no longer need the --change-address as the elf indicates the correct > start address, unlike the binary. > > And that's fine with your usecase ? Fine be me then ... > > > > diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl > index 76d08fd92b..b09bd40b2a 100644 > --- a/scripts/Makefile.spl > +++ b/scripts/Makefile.spl > @@ -190,6 +190,7 @@ endif > ifdef CONFIG_ARCH_SOCFPGA > ALL-$(CONFIG_TARGET_SOCFPGA_GEN5) += $(obj)/$(SPL_BIN).sfp > ALL-$(CONFIG_TARGET_SOCFPGA_ARRIA10) += $(obj)/$(SPL_BIN).sfp > +ALL-$(CONFIG_TARGET_SOCFPGA_STRATIX10) += $(obj)/$(SPL_BIN).hex > > CONFIG_SPL_TARGET "u-boot-spl.hex" can replace this addition I think ?
This doesnt actually work as CONFIG_SPL_TARGET doesnt appear to be an SPL target, but rather a target for creating combined u-boot + spl images at the top level. Adding ALL-$(CONFIG_SPL_TARGET) += $(obj)/$(SPL_BIN).hex in Makefile.spl and CONFIG_SPL_TARGET="u-boot-spl.hex" in the socfpga_stratix10_config results in a build failure with no target for u-boot-spl.hex > > endif > > ifdef CONFIG_ARCH_SUNXI > @@ -299,6 +300,11 @@ OBJCOPYFLAGS_u-boot-x86-16bit-spl.bin := -O binary -j > .start16 -j .resetvec > $(obj)/u-boot-x86-16bit-spl.bin: $(obj)/u-boot-spl FORCE > $(call if_changed,objcopy) > > +OBJCOPYFLAGS_$(SPL_BIN).hex = -O ihex > + > +$(obj)/$(SPL_BIN).hex: $(obj)/$(SPL_BIN) FORCE > + $(call if_changed,objcopy) > + > > This is generic, separate patch please. > > LDFLAGS_$(SPL_BIN) += -T u-boot-spl.lds $(LDFLAGS_FINAL) > > > Will do > > Thanks > > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot