All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb
@ 2019-08-07 14:44 Dalon Westergreen
  2019-08-07 14:44 ` [U-Boot] [RESEND PATCH v3 2/2] ARM: socfpga: stratix10: Remove CONFIG_OF_EMBED Dalon Westergreen
  0 siblings, 1 reply; 7+ messages in thread
From: Dalon Westergreen @ 2019-08-07 14:44 UTC (permalink / raw)
  To: u-boot

From: Dalon Westergreen <dalon.westergreen@intel.com>

Stratix10 requires a hex image of the spl plus spl devicetree offset to
the Stratix10 onchip memory located at SPL_TEXT_BASE.  This patch adds
a target to generate a hex file from the u-boot-spl binary including the
dtb offset at SPL_TEST_BASE.

Objcopy is used to convert the $(SPL_BIN).bin, which includes the spl
dtb, to a hex file.  the --change-address option is used to offset the
hex to SPL_TEXT_BASE as objcopy on the spl binary will not result in
a hex file appropriately offset at SPL_TEXT_BASE.

Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>

---
Changes in v3:
 -> Cleanup commit message and better describe the problem being
    resolved
 -> Remove extraneous hunk
 -> use SPL_BIN instead of u-boot-spl
Changes in v2:
 -> Move spl hex file generation to SPL Makefile
 -> Create hexfile from $(SPL_BIN).bin which will include the dtb
    ifneq(build_dtb,)
---
 Makefile             | 8 +++-----
 scripts/Makefile.spl | 7 +++++++
 2 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/Makefile b/Makefile
index 8513db94e3..aa5c0746f0 100644
--- a/Makefile
+++ b/Makefile
@@ -1129,11 +1129,6 @@ OBJCOPYFLAGS_u-boot-nodtb.bin := -O binary \
 		$(if $(CONFIG_X86_16BIT_INIT),-R .start16 -R .resetvec) \
 		$(if $(CONFIG_MPC85XX_HAVE_RESET_VECTOR),-R .bootpg -R .resetvec)
 
-OBJCOPYFLAGS_u-boot-spl.hex = $(OBJCOPYFLAGS_u-boot.hex)
-
-spl/u-boot-spl.hex: spl/u-boot-spl FORCE
-	$(call if_changed,objcopy)
-
 binary_size_check: u-boot-nodtb.bin FORCE
 	@file_size=$(shell wc -c u-boot-nodtb.bin | awk '{print $$1}') ; \
 	map_size=$(shell cat u-boot.map | \
@@ -1715,6 +1710,9 @@ spl/u-boot-spl.bin: spl/u-boot-spl
 	@:
 	$(SPL_SIZE_CHECK)
 
+spl/u-boot-spl.hex: spl/u-boot-spl
+	@:
+
 spl/u-boot-spl: tools prepare \
 		$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) \
 		$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_TPL_OF_PLATDATA),dts/dt.dtb)
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index 7af6b120b6..551002194e 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -216,6 +216,8 @@ ifneq ($(CONFIG_TARGET_SOCFPGA_GEN5)$(CONFIG_TARGET_SOCFPGA_ARRIA10),)
 ALL-y	+= $(obj)/$(SPL_BIN).sfp
 endif
 
+ALL-$(CONFIG_TARGET_SOCFPGA_STRATIX10) += $(obj)/$(SPL_BIN).hex
+
 ifdef CONFIG_ARCH_SUNXI
 ALL-y	+= $(obj)/sunxi-spl.bin
 
@@ -363,6 +365,11 @@ endif
 $(obj)/$(SPL_BIN).sfp: $(obj)/$(SPL_BIN).bin FORCE
 	$(call if_changed,mkimage)
 
+OBJCOPYFLAGS_$(SPL_BIN).hex := -I binary -O ihex --change-address=$(CONFIG_SPL_TEXT_BASE)
+
+$(obj)/$(SPL_BIN).hex: $(obj)/$(SPL_BIN).bin FORCE
+	$(call if_changed,objcopy)
+
 quiet_cmd_mksunxiboot = MKSUNXI $@
 cmd_mksunxiboot = $(objtree)/tools/mksunxiboot \
 			--default-dt $(CONFIG_DEFAULT_DEVICE_TREE) $< $@
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [U-Boot] [RESEND PATCH v3 2/2] ARM: socfpga: stratix10: Remove CONFIG_OF_EMBED
  2019-08-07 14:44 [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb Dalon Westergreen
@ 2019-08-07 14:44 ` Dalon Westergreen
  0 siblings, 0 replies; 7+ messages in thread
From: Dalon Westergreen @ 2019-08-07 14:44 UTC (permalink / raw)
  To: u-boot

From: Dalon Westergreen <dalon.westergreen@intel.com>

CONFIG_OF_EMBED was primarily enabled to support the stratix10
spl hex file requirements.  Since this option now produces a
warning during build, and the spl hex can be created using
alternate methods, CONFIG_OF_EMBED is no longer needed.

Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>

---
Changes in v3:
 -> Revert to u-boot.img for SPL payload name
Changes in v2:
 -> Change CONFIG_SPL_TARGET back to u-boot-spl.hex
---
 configs/socfpga_stratix10_defconfig | 1 -
 1 file changed, 1 deletion(-)

diff --git a/configs/socfpga_stratix10_defconfig b/configs/socfpga_stratix10_defconfig
index fbab388b43..f27180385d 100644
--- a/configs/socfpga_stratix10_defconfig
+++ b/configs/socfpga_stratix10_defconfig
@@ -26,7 +26,6 @@ CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
-CONFIG_OF_EMBED=y
 CONFIG_DEFAULT_DEVICE_TREE="socfpga_stratix10_socdk"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb
  2019-10-09 12:57   ` Dalon L Westergreen
@ 2019-10-09 13:34     ` Simon Goldschmidt
  0 siblings, 0 replies; 7+ messages in thread
From: Simon Goldschmidt @ 2019-10-09 13:34 UTC (permalink / raw)
  To: u-boot

On Wed, Oct 9, 2019 at 2:57 PM Dalon L Westergreen
<dalon.westergreen@linux.intel.com> wrote:
>
> On Sat, 2019-10-05 at 21:40 +0200, Simon Goldschmidt wrote:
>
> Am 27.09.2019 um 20:27 schrieb Dalon Westergreen:
>
> From: Dalon Westergreen <
>
> dalon.westergreen at intel.com
>
> >
>
>
> Stratix10 requires a hex image of the spl plus spl devicetree offset to
>
> the Stratix10 onchip memory located at SPL_TEXT_BASE.  This patch adds
>
> a target to generate a hex file from the u-boot-spl binary including the
>
> dtb offset at SPL_TEST_BASE.
>
>
> Objcopy is used to convert the $(SPL_BIN).bin, which includes the spl
>
> dtb, to a hex file.  the --change-address option is used to offset the
>
> hex to SPL_TEXT_BASE as objcopy on the spl binary will not result in
>
> a hex file appropriately offset at SPL_TEXT_BASE.
>
>
> Signed-off-by: Dalon Westergreen <
>
> dalon.westergreen at intel.com
>
> >
>
>
> ---
>
> Changes in v3:
>
>   -> Cleanup commit message and better describe the problem being
>
>      resolved
>
>   -> Remove extraneous hunk
>
>   -> use SPL_BIN instead of u-boot-spl
>
> Changes in v2:
>
>   -> Move spl hex file generation to SPL Makefile
>
>   -> Create hexfile from $(SPL_BIN).bin which will include the dtb
>
>      ifneq(build_dtb,)
>
> ---
>
>   Makefile             | 8 +++-----
>
>   scripts/Makefile.spl | 7 +++++++
>
>   2 files changed, 10 insertions(+), 5 deletions(-)
>
>
> diff --git a/Makefile b/Makefile
>
> index 1d9ade948b..0bc9d1589f 100644
>
> --- a/Makefile
>
> +++ b/Makefile
>
> @@ -1152,11 +1152,6 @@ OBJCOPYFLAGS_u-boot-nodtb.bin := -O binary \
>
>   $(if $(CONFIG_X86_16BIT_INIT),-R .start16 -R .resetvec) \
>
>   $(if $(CONFIG_MPC85XX_HAVE_RESET_VECTOR),-R .bootpg -R .resetvec)
>
>
>
> -OBJCOPYFLAGS_u-boot-spl.hex = $(OBJCOPYFLAGS_u-boot.hex)
>
> -
>
> -spl/u-boot-spl.hex: spl/u-boot-spl FORCE
>
> - $(call if_changed,objcopy)
>
> -
>
>   binary_size_check: u-boot-nodtb.bin FORCE
>
>   @file_size=$(shell wc -c u-boot-nodtb.bin | awk '{print $$1}') ; \
>
>   map_size=$(shell cat u-boot.map | \
>
> @@ -1756,6 +1751,9 @@ spl/u-boot-spl.bin: spl/u-boot-spl
>
>   @:
>
>   $(SPL_SIZE_CHECK)
>
>
>
> +spl/u-boot-spl.hex: spl/u-boot-spl
>
> + @:
>
> +
>
>   spl/u-boot-spl: tools prepare \
>
>   $(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) \
>
>   $(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_TPL_OF_PLATDATA),dts/dt.dtb)
>
> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
>
> index 7af6b120b6..551002194e 100644
>
> --- a/scripts/Makefile.spl
>
> +++ b/scripts/Makefile.spl
>
> @@ -216,6 +216,8 @@ ifneq ($(CONFIG_TARGET_SOCFPGA_GEN5)$(CONFIG_TARGET_SOCFPGA_ARRIA10),)
>
>   ALL-y += $(obj)/$(SPL_BIN).sfp
>
>   endif
>
>
>
> +ALL-$(CONFIG_TARGET_SOCFPGA_STRATIX10) += $(obj)/$(SPL_BIN).hex
>
> +
>
>   ifdef CONFIG_ARCH_SUNXI
>
>   ALL-y += $(obj)/sunxi-spl.bin
>
>
>
> @@ -363,6 +365,11 @@ endif
>
>   $(obj)/$(SPL_BIN).sfp: $(obj)/$(SPL_BIN).bin FORCE
>
>   $(call if_changed,mkimage)
>
>
>
> +OBJCOPYFLAGS_$(SPL_BIN).hex := -I binary -O ihex --change-address=$(CONFIG_SPL_TEXT_BASE)
>
> +
>
> +$(obj)/$(SPL_BIN).hex: $(obj)/$(SPL_BIN).bin FORCE
>
> + $(call if_changed,objcopy)
>
> +
>
>
> While I like the idea of this patch, and I *think* that this is what an
>
> SPL hex should look like for all platforms, I'm not 100% sure that
>
> globally changing the rule and objcopy flags for u-boot-spl.hex is OK
>
> for all architectures?
>
>
> Let's try to apply this at the start of next merge window, then we'll
>
> hopefully see if this does break any board.
>
>
> Reviewed-by: Simon Goldschmidt <
>
> simon.k.r.goldschmidt at gmail.com
>
> >
>
>
> Regards,
>
> Simon
>
>
> sounds good, i dont believe there are other boards with SPL hex as a
>
> target, at least none that i found.

Even better. Sadly, the Quartus gen5 tools require the HEX to be at offset 0
to create a 'boot-from-FPGA' image, but since that one is easy enough to
create without Makefile help, I think this patch is still ok.

Regards,
Simon

>
>
> --dalon
>
>
>   quiet_cmd_mksunxiboot = MKSUNXI $@
>
>   cmd_mksunxiboot = $(objtree)/tools/mksunxiboot \
>
>   --default-dt $(CONFIG_DEFAULT_DEVICE_TREE) $< $@
>
>
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb
  2019-10-05 19:40 ` Simon Goldschmidt
@ 2019-10-09 12:57   ` Dalon L Westergreen
  2019-10-09 13:34     ` Simon Goldschmidt
  0 siblings, 1 reply; 7+ messages in thread
From: Dalon L Westergreen @ 2019-10-09 12:57 UTC (permalink / raw)
  To: u-boot

On Sat, 2019-10-05 at 21:40 +0200, Simon Goldschmidt wrote:
> Am 27.09.2019 um 20:27 schrieb Dalon Westergreen:
> > From: Dalon Westergreen <dalon.westergreen@intel.com>
> > Stratix10 requires a hex image of the spl plus spl devicetree offset tothe
> > Stratix10 onchip memory located at SPL_TEXT_BASE.  This patch addsa target
> > to generate a hex file from the u-boot-spl binary including thedtb offset at
> > SPL_TEST_BASE.
> > Objcopy is used to convert the $(SPL_BIN).bin, which includes the spldtb, to
> > a hex file.  the --change-address option is used to offset thehex to
> > SPL_TEXT_BASE as objcopy on the spl binary will not result ina hex file
> > appropriately offset at SPL_TEXT_BASE.
> > Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>
> > ---Changes in v3:  -> Cleanup commit message and better describe the problem
> > being     resolved  -> Remove extraneous hunk  -> use SPL_BIN instead of u-
> > boot-splChanges in v2:  -> Move spl hex file generation to SPL Makefile  ->
> > Create hexfile from $(SPL_BIN).bin which will include the
> > dtb     ifneq(build_dtb,)---  Makefile             | 8 +++--
> > ---  scripts/Makefile.spl | 7 +++++++  2 files changed, 10 insertions(+), 5
> > deletions(-)
> > diff --git a/Makefile b/Makefileindex 1d9ade948b..0bc9d1589f 100644---
> > a/Makefile+++ b/Makefile@@ -1152,11 +1152,6 @@ OBJCOPYFLAGS_u-boot-nodtb.bin 
> > := -O binary \  		$(if $(CONFIG_X86_16BIT_INIT),-R .start16 -R
> > .resetvec) \  		$(if $(CONFIG_MPC85XX_HAVE_RESET_VECTOR),-R
> > .bootpg -R .resetvec)  -OBJCOPYFLAGS_u-boot-spl.hex = $(OBJCOPYFLAGS_u-
> > boot.hex)--spl/u-boot-spl.hex: spl/u-boot-spl FORCE-	$(call
> > if_changed,objcopy)-  binary_size_check: u-boot-nodtb.bin FORCE  	@file_si
> > ze=$(shell wc -c u-boot-nodtb.bin | awk '{print $$1}') ; \  	map_size
> > =$(shell cat u-boot.map | \@@ -1756,6 +1751,9 @@ spl/u-boot-spl.bin: spl/u-
> > boot-spl  	@:  	$(SPL_SIZE_CHECK)  +spl/u-boot-spl.hex: spl/u-boot-
> > spl+	@:+  spl/u-boot-spl: tools prepare \  		$(if
> > $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb)
> > \  		$(if
> > $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_TPL_OF_PLATDATA),dts/dt.dtb)
> > diff --git a/scripts/Makefile.spl b/scripts/Makefile.splindex
> > 7af6b120b6..551002194e 100644--- a/scripts/Makefile.spl+++
> > b/scripts/Makefile.spl@@ -216,6 +216,8 @@ ifneq
> > ($(CONFIG_TARGET_SOCFPGA_GEN5)$(CONFIG_TARGET_SOCFPGA_ARRIA10),)  ALL-y	
> > += $(obj)/$(SPL_BIN).sfp  endif  +ALL-$(CONFIG_TARGET_SOCFPGA_STRATIX10) +=
> > $(obj)/$(SPL_BIN).hex+  ifdef CONFIG_ARCH_SUNXI  ALL-y	+= $(obj)/sunxi-
> > spl.bin  @@ -363,6 +365,11 @@ endif  $(obj)/$(SPL_BIN).sfp:
> > $(obj)/$(SPL_BIN).bin FORCE  	$(call
> > if_changed,mkimage)  +OBJCOPYFLAGS_$(SPL_BIN).hex := -I binary -O ihex --
> > change-address=$(CONFIG_SPL_TEXT_BASE)++$(obj)/$(SPL_BIN).hex:
> > $(obj)/$(SPL_BIN).bin FORCE+	$(call if_changed,objcopy)+
> 
> While I like the idea of this patch, and I *think* that this is what an SPL
> hex should look like for all platforms, I'm not 100% sure that globally
> changing the rule and objcopy flags for u-boot-spl.hex is OK for all
> architectures?
> Let's try to apply this at the start of next merge window, then we'll
> hopefully see if this does break any board.
> Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
> Regards,Simon
sounds good, i dont believe there are other boards with SPL hex as atarget, at
least none that i found.
--dalon
> >   quiet_cmd_mksunxiboot = MKSUNXI $@  cmd_mksunxiboot =
> > $(objtree)/tools/mksunxiboot \  			--default-dt
> > $(CONFIG_DEFAULT_DEVICE_TREE) $< $@

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb
  2019-09-27 18:27 [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb Dalon Westergreen
  2019-10-04 13:54 ` Tom Rini
@ 2019-10-05 19:40 ` Simon Goldschmidt
  2019-10-09 12:57   ` Dalon L Westergreen
  1 sibling, 1 reply; 7+ messages in thread
From: Simon Goldschmidt @ 2019-10-05 19:40 UTC (permalink / raw)
  To: u-boot

Am 27.09.2019 um 20:27 schrieb Dalon Westergreen:
> From: Dalon Westergreen <dalon.westergreen@intel.com>
> 
> Stratix10 requires a hex image of the spl plus spl devicetree offset to
> the Stratix10 onchip memory located at SPL_TEXT_BASE.  This patch adds
> a target to generate a hex file from the u-boot-spl binary including the
> dtb offset at SPL_TEST_BASE.
> 
> Objcopy is used to convert the $(SPL_BIN).bin, which includes the spl
> dtb, to a hex file.  the --change-address option is used to offset the
> hex to SPL_TEXT_BASE as objcopy on the spl binary will not result in
> a hex file appropriately offset at SPL_TEXT_BASE.
> 
> Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>
> 
> ---
> Changes in v3:
>   -> Cleanup commit message and better describe the problem being
>      resolved
>   -> Remove extraneous hunk
>   -> use SPL_BIN instead of u-boot-spl
> Changes in v2:
>   -> Move spl hex file generation to SPL Makefile
>   -> Create hexfile from $(SPL_BIN).bin which will include the dtb
>      ifneq(build_dtb,)
> ---
>   Makefile             | 8 +++-----
>   scripts/Makefile.spl | 7 +++++++
>   2 files changed, 10 insertions(+), 5 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index 1d9ade948b..0bc9d1589f 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1152,11 +1152,6 @@ OBJCOPYFLAGS_u-boot-nodtb.bin := -O binary \
>   		$(if $(CONFIG_X86_16BIT_INIT),-R .start16 -R .resetvec) \
>   		$(if $(CONFIG_MPC85XX_HAVE_RESET_VECTOR),-R .bootpg -R .resetvec)
>   
> -OBJCOPYFLAGS_u-boot-spl.hex = $(OBJCOPYFLAGS_u-boot.hex)
> -
> -spl/u-boot-spl.hex: spl/u-boot-spl FORCE
> -	$(call if_changed,objcopy)
> -
>   binary_size_check: u-boot-nodtb.bin FORCE
>   	@file_size=$(shell wc -c u-boot-nodtb.bin | awk '{print $$1}') ; \
>   	map_size=$(shell cat u-boot.map | \
> @@ -1756,6 +1751,9 @@ spl/u-boot-spl.bin: spl/u-boot-spl
>   	@:
>   	$(SPL_SIZE_CHECK)
>   
> +spl/u-boot-spl.hex: spl/u-boot-spl
> +	@:
> +
>   spl/u-boot-spl: tools prepare \
>   		$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) \
>   		$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_TPL_OF_PLATDATA),dts/dt.dtb)
> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
> index 7af6b120b6..551002194e 100644
> --- a/scripts/Makefile.spl
> +++ b/scripts/Makefile.spl
> @@ -216,6 +216,8 @@ ifneq ($(CONFIG_TARGET_SOCFPGA_GEN5)$(CONFIG_TARGET_SOCFPGA_ARRIA10),)
>   ALL-y	+= $(obj)/$(SPL_BIN).sfp
>   endif
>   
> +ALL-$(CONFIG_TARGET_SOCFPGA_STRATIX10) += $(obj)/$(SPL_BIN).hex
> +
>   ifdef CONFIG_ARCH_SUNXI
>   ALL-y	+= $(obj)/sunxi-spl.bin
>   
> @@ -363,6 +365,11 @@ endif
>   $(obj)/$(SPL_BIN).sfp: $(obj)/$(SPL_BIN).bin FORCE
>   	$(call if_changed,mkimage)
>   
> +OBJCOPYFLAGS_$(SPL_BIN).hex := -I binary -O ihex --change-address=$(CONFIG_SPL_TEXT_BASE)
> +
> +$(obj)/$(SPL_BIN).hex: $(obj)/$(SPL_BIN).bin FORCE
> +	$(call if_changed,objcopy)
> +

While I like the idea of this patch, and I *think* that this is what an 
SPL hex should look like for all platforms, I'm not 100% sure that 
globally changing the rule and objcopy flags for u-boot-spl.hex is OK 
for all architectures?

Let's try to apply this at the start of next merge window, then we'll 
hopefully see if this does break any board.

Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>

Regards,
Simon

>   quiet_cmd_mksunxiboot = MKSUNXI $@
>   cmd_mksunxiboot = $(objtree)/tools/mksunxiboot \
>   			--default-dt $(CONFIG_DEFAULT_DEVICE_TREE) $< $@
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb
  2019-09-27 18:27 [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb Dalon Westergreen
@ 2019-10-04 13:54 ` Tom Rini
  2019-10-05 19:40 ` Simon Goldschmidt
  1 sibling, 0 replies; 7+ messages in thread
From: Tom Rini @ 2019-10-04 13:54 UTC (permalink / raw)
  To: u-boot

On Fri, Sep 27, 2019 at 11:27:56AM -0700, Dalon Westergreen wrote:

> From: Dalon Westergreen <dalon.westergreen@intel.com>
> 
> Stratix10 requires a hex image of the spl plus spl devicetree offset to
> the Stratix10 onchip memory located at SPL_TEXT_BASE.  This patch adds
> a target to generate a hex file from the u-boot-spl binary including the
> dtb offset at SPL_TEST_BASE.
> 
> Objcopy is used to convert the $(SPL_BIN).bin, which includes the spl
> dtb, to a hex file.  the --change-address option is used to offset the
> hex to SPL_TEXT_BASE as objcopy on the spl binary will not result in
> a hex file appropriately offset at SPL_TEXT_BASE.
> 
> Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>
> 
> ---
> Changes in v3:
>  -> Cleanup commit message and better describe the problem being
>     resolved
>  -> Remove extraneous hunk
>  -> use SPL_BIN instead of u-boot-spl
> Changes in v2:
>  -> Move spl hex file generation to SPL Makefile
>  -> Create hexfile from $(SPL_BIN).bin which will include the dtb
>     ifneq(build_dtb,)
> ---
>  Makefile             | 8 +++-----
>  scripts/Makefile.spl | 7 +++++++
>  2 files changed, 10 insertions(+), 5 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index 1d9ade948b..0bc9d1589f 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1152,11 +1152,6 @@ OBJCOPYFLAGS_u-boot-nodtb.bin := -O binary \
>  		$(if $(CONFIG_X86_16BIT_INIT),-R .start16 -R .resetvec) \
>  		$(if $(CONFIG_MPC85XX_HAVE_RESET_VECTOR),-R .bootpg -R .resetvec)
>  
> -OBJCOPYFLAGS_u-boot-spl.hex = $(OBJCOPYFLAGS_u-boot.hex)
> -
> -spl/u-boot-spl.hex: spl/u-boot-spl FORCE
> -	$(call if_changed,objcopy)
> -
>  binary_size_check: u-boot-nodtb.bin FORCE
>  	@file_size=$(shell wc -c u-boot-nodtb.bin | awk '{print $$1}') ; \
>  	map_size=$(shell cat u-boot.map | \
> @@ -1756,6 +1751,9 @@ spl/u-boot-spl.bin: spl/u-boot-spl
>  	@:
>  	$(SPL_SIZE_CHECK)
>  
> +spl/u-boot-spl.hex: spl/u-boot-spl
> +	@:
> +
>  spl/u-boot-spl: tools prepare \
>  		$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) \
>  		$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_TPL_OF_PLATDATA),dts/dt.dtb)
> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
> index 7af6b120b6..551002194e 100644
> --- a/scripts/Makefile.spl
> +++ b/scripts/Makefile.spl
> @@ -216,6 +216,8 @@ ifneq ($(CONFIG_TARGET_SOCFPGA_GEN5)$(CONFIG_TARGET_SOCFPGA_ARRIA10),)
>  ALL-y	+= $(obj)/$(SPL_BIN).sfp
>  endif
>  
> +ALL-$(CONFIG_TARGET_SOCFPGA_STRATIX10) += $(obj)/$(SPL_BIN).hex
> +
>  ifdef CONFIG_ARCH_SUNXI
>  ALL-y	+= $(obj)/sunxi-spl.bin
>  
> @@ -363,6 +365,11 @@ endif
>  $(obj)/$(SPL_BIN).sfp: $(obj)/$(SPL_BIN).bin FORCE
>  	$(call if_changed,mkimage)
>  
> +OBJCOPYFLAGS_$(SPL_BIN).hex := -I binary -O ihex --change-address=$(CONFIG_SPL_TEXT_BASE)
> +
> +$(obj)/$(SPL_BIN).hex: $(obj)/$(SPL_BIN).bin FORCE
> +	$(call if_changed,objcopy)
> +
>  quiet_cmd_mksunxiboot = MKSUNXI $@
>  cmd_mksunxiboot = $(objtree)/tools/mksunxiboot \
>  			--default-dt $(CONFIG_DEFAULT_DEVICE_TREE) $< $@

SoCFPGA folks?  This has been posted a few times, is this OK for the
next release?  Thanks

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191004/6cd33708/attachment.sig>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb
@ 2019-09-27 18:27 Dalon Westergreen
  2019-10-04 13:54 ` Tom Rini
  2019-10-05 19:40 ` Simon Goldschmidt
  0 siblings, 2 replies; 7+ messages in thread
From: Dalon Westergreen @ 2019-09-27 18:27 UTC (permalink / raw)
  To: u-boot

From: Dalon Westergreen <dalon.westergreen@intel.com>

Stratix10 requires a hex image of the spl plus spl devicetree offset to
the Stratix10 onchip memory located at SPL_TEXT_BASE.  This patch adds
a target to generate a hex file from the u-boot-spl binary including the
dtb offset at SPL_TEST_BASE.

Objcopy is used to convert the $(SPL_BIN).bin, which includes the spl
dtb, to a hex file.  the --change-address option is used to offset the
hex to SPL_TEXT_BASE as objcopy on the spl binary will not result in
a hex file appropriately offset at SPL_TEXT_BASE.

Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>

---
Changes in v3:
 -> Cleanup commit message and better describe the problem being
    resolved
 -> Remove extraneous hunk
 -> use SPL_BIN instead of u-boot-spl
Changes in v2:
 -> Move spl hex file generation to SPL Makefile
 -> Create hexfile from $(SPL_BIN).bin which will include the dtb
    ifneq(build_dtb,)
---
 Makefile             | 8 +++-----
 scripts/Makefile.spl | 7 +++++++
 2 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/Makefile b/Makefile
index 1d9ade948b..0bc9d1589f 100644
--- a/Makefile
+++ b/Makefile
@@ -1152,11 +1152,6 @@ OBJCOPYFLAGS_u-boot-nodtb.bin := -O binary \
 		$(if $(CONFIG_X86_16BIT_INIT),-R .start16 -R .resetvec) \
 		$(if $(CONFIG_MPC85XX_HAVE_RESET_VECTOR),-R .bootpg -R .resetvec)
 
-OBJCOPYFLAGS_u-boot-spl.hex = $(OBJCOPYFLAGS_u-boot.hex)
-
-spl/u-boot-spl.hex: spl/u-boot-spl FORCE
-	$(call if_changed,objcopy)
-
 binary_size_check: u-boot-nodtb.bin FORCE
 	@file_size=$(shell wc -c u-boot-nodtb.bin | awk '{print $$1}') ; \
 	map_size=$(shell cat u-boot.map | \
@@ -1756,6 +1751,9 @@ spl/u-boot-spl.bin: spl/u-boot-spl
 	@:
 	$(SPL_SIZE_CHECK)
 
+spl/u-boot-spl.hex: spl/u-boot-spl
+	@:
+
 spl/u-boot-spl: tools prepare \
 		$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SPL_OF_PLATDATA),dts/dt.dtb) \
 		$(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_TPL_OF_PLATDATA),dts/dt.dtb)
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index 7af6b120b6..551002194e 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -216,6 +216,8 @@ ifneq ($(CONFIG_TARGET_SOCFPGA_GEN5)$(CONFIG_TARGET_SOCFPGA_ARRIA10),)
 ALL-y	+= $(obj)/$(SPL_BIN).sfp
 endif
 
+ALL-$(CONFIG_TARGET_SOCFPGA_STRATIX10) += $(obj)/$(SPL_BIN).hex
+
 ifdef CONFIG_ARCH_SUNXI
 ALL-y	+= $(obj)/sunxi-spl.bin
 
@@ -363,6 +365,11 @@ endif
 $(obj)/$(SPL_BIN).sfp: $(obj)/$(SPL_BIN).bin FORCE
 	$(call if_changed,mkimage)
 
+OBJCOPYFLAGS_$(SPL_BIN).hex := -I binary -O ihex --change-address=$(CONFIG_SPL_TEXT_BASE)
+
+$(obj)/$(SPL_BIN).hex: $(obj)/$(SPL_BIN).bin FORCE
+	$(call if_changed,objcopy)
+
 quiet_cmd_mksunxiboot = MKSUNXI $@
 cmd_mksunxiboot = $(objtree)/tools/mksunxiboot \
 			--default-dt $(CONFIG_DEFAULT_DEVICE_TREE) $< $@
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-10-09 13:34 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-07 14:44 [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb Dalon Westergreen
2019-08-07 14:44 ` [U-Boot] [RESEND PATCH v3 2/2] ARM: socfpga: stratix10: Remove CONFIG_OF_EMBED Dalon Westergreen
2019-09-27 18:27 [U-Boot] [RESEND PATCH v3 1/2] Makefile: Add target to generate hex output for combined spl and dtb Dalon Westergreen
2019-10-04 13:54 ` Tom Rini
2019-10-05 19:40 ` Simon Goldschmidt
2019-10-09 12:57   ` Dalon L Westergreen
2019-10-09 13:34     ` Simon Goldschmidt

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.