From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Thu, 6 Sep 2018 23:56:40 +0200 Subject: [U-Boot] [PATCH v2 2/2] spl: socfpga: stratix10: add hex file output for spl image In-Reply-To: <661d622b7f5685fd0673fa2b87e961c531a1654f.camel@linux.intel.com> References: <20180906030235.8186-1-dwesterg@gmail.com> <20180906030235.8186-2-dwesterg@gmail.com> <7e5967ae-c6a7-1a28-1a8c-578462e2a165@denx.de> <0e8d97e619b941cf32b0da03a726cdf865505c82.camel@linux.intel.com> <661d622b7f5685fd0673fa2b87e961c531a1654f.camel@linux.intel.com> Message-ID: <7208f309-3519-fc89-8dc1-8e2358322da3@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 09/06/2018 11:26 PM, Dalon L Westergreen wrote: > 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 >> >> --- >> 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 I mean, just define CONFIG_SPL_TARGET and it should generate the matching file automatically. See the README, it explains this macro. -- Best regards, Marek Vasut