board: toradex: colibri_vf: efi_loader: unset CONFIG_EFI_UNICODE_CAPITALIZATION
Subsystems (3)
PATCH 1/2 board: toradex: colibri_vf: efi_loader: unset CONFIG_EFI_UNICODE_CAPITALIZATION
From: Marcel Ziswiler <[email protected]>
Unset CONFIG_EFI_UNICODE_CAPITALIZATION on boards with tough size restrictions.
This is analogous to commit a90bf07afc43 ("efi_loader: unset CONFIG_EFI_UNICODE_CAPITALIZATION").
---
configs/colibri_vf_defconfig | 1 + 1 file changed, 1 insertion(+)
configs/colibri_vf_defconfig +1 -0
@@ -72,3 +72,4 @@ CONFIG_VIDEO_FSL_DCU_FB=y CONFIG_VIDEO=y CONFIG_SYS_CONSOLE_FG_COL=0x00 CONFIG_OF_LIBFDT_OVERLAY=y +# CONFIG_EFI_UNICODE_CAPITALIZATION is not set
Signature · 1 line
2.14.5
PATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is taken straight from the root Makefile.
Without this and e.g. enabled EFI Vybrid fails booting as the regular size limit check does not take the final u-boot.imx binary size into account which is bigger due to alignment as well as IMX header stuff.
---
arch/arm/mach-imx/Makefile | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)
arch/arm/mach-imx/Makefile +16 -0
@@ -58,6 +58,21 @@ obj-$(CONFIG_CMD_HDMIDETECT) += cmd_hdmidet.o obj-$(CONFIG_CMD_DEKBLOB) += cmd_dek.o endif +ifneq ($(CONFIG_BOARD_SIZE_LIMIT),) +BOARD_SIZE_CHECK = \ + @actual=`wc -c $@ | awk '{print $$1}'`; \ + limit=`printf "%d" $(CONFIG_BOARD_SIZE_LIMIT)`; \ + if test $$actual -gt $$limit; then \ + echo "$@ exceeds file size limit:" >&2 ; \ + echo " limit: $$limit bytes" >&2 ; \ + echo " actual: $$actual bytes" >&2 ; \ + echo " excess: $$((actual - limit)) bytes" >&2; \ + exit 1; \ + fi +else +BOARD_SIZE_CHECK = +endif + PLUGIN = board/$(BOARDDIR)/plugin ifeq ($(CONFIG_USE_IMXIMG_PLUGIN),y)
@@ -101,6 +116,7 @@ u-boot.imx: MKIMAGEOUTPUT = u-boot.imx.log u-boot.imx: u-boot.bin u-boot.cfgout $(PLUGIN).bin FORCE $(call if_changed,mkimage) + $(BOARD_SIZE_CHECK) ifeq ($(CONFIG_OF_SEPARATE),y) MKIMAGEFLAGS_u-boot-dtb.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) \
Signature · 1 line
2.14.5
Fabio Estevam
reviewerPATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
[Adding Stefano]
Quoted 11 lines · Marcel Ziswiler
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is taken straight from the root
Makefile.Without this and e.g. enabled EFI Vybrid fails booting as the regular size limit check does not take the final u-boot.imx binary size into account which is bigger due to alignment as well as IMX header stuff.
Signed-off-by Marcel Ziswiler <[email protected]>
Hi Stefano, maybe this could be material for 2018.11?
Thanks
PATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
Quoted 13 lines · Fabio Estevam
[Adding Stefano]
Quoted 10 lines · Marcel Ziswiler
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is taken straight from the root
Makefile.Without this and e.g. enabled EFI Vybrid fails booting as the regular size limit check does not take the final u-boot.imx binary size into account which is bigger due to alignment as well as IMX header stuff.
Quoted 8 lines
Quoted 1 line
Signed-off-by Marcel Ziswiler <[email protected]>Reviewed-by Fabio Estevam <[email protected]>Hi Stefano, maybe this could be material for 2018.11?
Thanks
It makes sense - Tom, could you pick this up or do you prefer a formal PR ?
Regards,
Stefano
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================
PATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
Quoted 16 lines · Stefano Babic
Quoted 15 lines · Fabio Estevam
[Adding Stefano]
Quoted 11 lines · Marcel Ziswiler
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is taken straight from the root
Makefile.Without this and e.g. enabled EFI Vybrid fails booting as the regular size limit check does not take the final u-boot.imx binary size into account which is bigger due to alignment as well as IMX header stuff.
Signed-off-by Marcel Ziswiler <[email protected]>
Quoted 8 lines
Quoted 6 lines
Reviewed-by Fabio Estevam <[email protected]>Hi Stefano, maybe this could be material for 2018.11?
Thanks
It makes sense - Tom, could you pick this up or do you prefer a formal PR ?
PR please, thanks.
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: not available URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181108/64bc157e/attachment.sig>
PATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
In reply to Fabio EstevamHi Marcel,
Quoted 13 lines · Fabio Estevam
[Adding Stefano]
Quoted 10 lines · Marcel Ziswiler
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is taken straight from the root
Makefile.Without this and e.g. enabled EFI Vybrid fails booting as the regular size limit check does not take the final u-boot.imx binary size into account which is bigger due to alignment as well as IMX header stuff.
Quoted 6 lines
Quoted 1 line
Signed-off-by Marcel Ziswiler <[email protected]>Reviewed-by Fabio Estevam <[email protected]>Hi Stefano, maybe this could be material for 2018.11?
Added both patches to u-boot-imx, check is effective, now size is too much and build fails:
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: + colibri_vf
+u-boot.imx exceeds file size limit:
+ limit: 520192 bytes + actual: 526104 bytes + excess: 5912 bytes
+make[2]: *** [u-boot.imx] Error 1
+make[1]: *** [u-boot.imx] Error 2
+make: *** [sub-make] Error 2
0 0 1 /1 colibri_vf
Can you take a look ?
Best regards,
Stefeano
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================
PATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
Hi Stefano
Quoted 43 lines · Stefano Babic
Hi Marcel,
Quoted 18 lines · Fabio Estevam
[Adding Stefano]
On Wed, Nov 7, 2018 at 8:41 PM Marcel Ziswiler <[email protected]
Quoted 15 lines
wrote:
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is
taken straight from the rootMakefile.Without this and e.g. enabled EFI Vybrid fails booting as the regular
size limit check does not take the final u-boot.imx binary size into
account which is bigger due to alignment as well as IMX header stuff.Quoted 6 lines
Quoted 1 line
Signed-off-by Marcel Ziswiler <[email protected]>Reviewed-by Fabio Estevam <[email protected]>Hi Stefano, maybe this could be material for 2018.11?
Added both patches to u-boot-imx, check is effective, now size is too much and build fails:
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: +colibri_vf(quoted diff) +7
-0+u-boot.imx exceeds file size limit: + limit: 520192 bytes + actual: 526104 bytes + excess: 5912 bytes +make[2]: *** [u-boot.imx] Error 1 +make[1]: *** [u-boot.imx] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 colibri_vf
Quoted 1 line
Can you take a look ?
Sure, what kind of a tool chain are you using? Might just be that the GCC 8.2 I was using does a better job in optimising stuff. Yep, with GCC 7.3.1 it also fails at my end! I guess then we have to drop EFI entirely but I doubt Mr. Graf will be happy...
Quoted 2 lines
Best regards,
Stefeano
Cheers
Marcel
PATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
Quoted 44 lines · Marcel Ziswiler
Hi Stefano
Quoted 41 lines · Stefano Babic
Hi Marcel,
Quoted 18 lines · Fabio Estevam
[Adding Stefano]
On Wed, Nov 7, 2018 at 8:41 PM Marcel Ziswiler <[email protected]
Quoted 15 lines
wrote:
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is
taken straight from the rootMakefile.Without this and e.g. enabled EFI Vybrid fails booting as the regular
size limit check does not take the final u-boot.imx binary size into
account which is bigger due to alignment as well as IMX header stuff.Quoted 5 lines
Quoted 1 line
Signed-off-by Marcel Ziswiler <[email protected]>Reviewed-by Fabio Estevam <[email protected]>Hi Stefano, maybe this could be material for 2018.11?
Added both patches to u-boot-imx, check is effective, now size is too much and build fails:
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: +colibri_vf(quoted diff) +7
-0+u-boot.imx exceeds file size limit: + limit: 520192 bytes + actual: 526104 bytes + excess: 5912 bytes +make[2]: *** [u-boot.imx] Error 1 +make[1]: *** [u-boot.imx] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 colibri_vf
Quoted 5 lines
Quoted 1 line
Can you take a look ?
Sure, what kind of a tool chain are you using? Might just be that the GCC 8.2 I was using does a better job in optimising stuff. Yep, with GCC 7.3.1 it also fails at my end! I guess then we have to drop EFI entirely but I doubt Mr. Graf will be happy...
I definitely wouldn't be happy, but I've seen us run into tight situations with Vybrid before. So yes, if your platform really a) doesn't want to ever support EBBR and b) really has very tight size constraints, disabling EFI_LOADER is perfectly fine with me.
Alex
PATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
Quoted 61 lines · Alexander Graf
Quoted 51 lines · Marcel Ziswiler
Hi Stefano
Quoted 48 lines · Stefano Babic
Hi Marcel,
Quoted 21 lines · Fabio Estevam
[Adding Stefano]
On Wed, Nov 7, 2018 at 8:41 PM Marcel Ziswiler <marcel@ziswiler .com
Quoted 17 lines
wrote:
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is
taken straight from the rootMakefile.Without this and e.g. enabled EFI Vybrid fails booting as the regular
size limit check does not take the final u-boot.imx binary size
into
account which is bigger due to alignment as well as IMX header
stuff.Quoted 6 lines
Quoted 1 line
Signed-off-by Marcel Ziswiler <[email protected]>Reviewed-by Fabio Estevam <[email protected]>Hi Stefano, maybe this could be material for 2018.11?
Added both patches to u-boot-imx, check is effective, now size is too
much and build fails:Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: +colibri_vf(quoted diff) +7
-0+u-boot.imx exceeds file size limit: + limit: 520192 bytes + actual: 526104 bytes + excess: 5912 bytes +make[2]: *** [u-boot.imx] Error 1 +make[1]: *** [u-boot.imx] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 colibri_vfQuoted 8 lines
Quoted 1 line
Can you take a look ?
Sure, what kind of a tool chain are you using? Might just be that the
GCC 8.2 I was using does a better job in optimising stuff. Yep, with
GCC 7.3.1 it also fails at my end! I guess then we have to drop EFI entirely but I doubt Mr. Graf will be happy...
Quoted 4 lines
I definitely wouldn't be happy, but I've seen us run into tight situations with Vybrid before. So yes, if your platform really a) doesn't want to ever support EBBR and b) really has very tight size constraints, disabling
EFI_LOADERis perfectly fine with me.
Yes, I'm fully aware of EBBR having attended Grant's talk in Edinburgh but especially those older raw NAND platforms are probably not the best candidates for any of this. Unless, of course, we would put some more effort transitioning them all to SPL and what not to overcome e.g. such SRAM limitations. I will send a v2 which disables EFI for now.
Quoted 1 line
Alex
Cheers
Marcel
PATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
In reply to Stefano BabicHi Stefano
Quoted 43 lines · Stefano Babic
Hi Marcel,
Quoted 18 lines · Fabio Estevam
[Adding Stefano]
On Wed, Nov 7, 2018 at 8:41 PM Marcel Ziswiler <[email protected]
Quoted 15 lines
wrote:
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is
taken straight from the rootMakefile.Without this and e.g. enabled EFI Vybrid fails booting as the regular
size limit check does not take the final u-boot.imx binary size into
account which is bigger due to alignment as well as IMX header stuff.Quoted 6 lines
Quoted 1 line
Signed-off-by Marcel Ziswiler <[email protected]>Reviewed-by Fabio Estevam <[email protected]>Hi Stefano, maybe this could be material for 2018.11?
Added both patches to u-boot-imx, check is effective, now size is too much and build fails:
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: +colibri_vf(quoted diff) +7
-0+u-boot.imx exceeds file size limit: + limit: 520192 bytes + actual: 526104 bytes + excess: 5912 bytes +make[2]: *** [u-boot.imx] Error 1 +make[1]: *** [u-boot.imx] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 colibri_vf
Quoted 1 line
Can you take a look ?
I sent a v2 additionally dropping CONFIG_CMDLINE_EDITING and SPI support saving another 8 Kb which for me makes it work right back to GCC 6.1.1 which I believe is anyway about as far back as one can go even compiling U-Boot. Can you please give that another go?
Quoted 2 lines
Best regards,
Stefeano
Cheers
Marcel
PATCH 2/2 imx: mkimage: add size check to the u-boot.imx make target
Quoted 46 lines · Marcel Ziswiler
Hi Stefano
Quoted 43 lines · Stefano Babic
Hi Marcel,
Quoted 18 lines · Fabio Estevam
[Adding Stefano]
On Wed, Nov 7, 2018 at 8:41 PM Marcel Ziswiler <[email protected]
Quoted 15 lines
wrote:
From: Marcel Ziswiler <[email protected]>
The make macro to check if the binary exceeds the board size limit is
taken straight from the rootMakefile.Without this and e.g. enabled EFI Vybrid fails booting as the regular
size limit check does not take the final u-boot.imx binary size into
account which is bigger due to alignment as well as IMX header stuff.Quoted 6 lines
Quoted 1 line
Signed-off-by Marcel Ziswiler <[email protected]>Reviewed-by Fabio Estevam <[email protected]>Hi Stefano, maybe this could be material for 2018.11?
Added both patches to u-boot-imx, check is effective, now size is too much and build fails:
Building current source for 1 boards (1 thread, 8 jobs per thread)
arm: +colibri_vf(quoted diff) +7
-0+u-boot.imx exceeds file size limit: + limit: 520192 bytes + actual: 526104 bytes + excess: 5912 bytes +make[2]: *** [u-boot.imx] Error 1 +make[1]: *** [u-boot.imx] Error 2 +make: *** [sub-make] Error 2 0 0 1 /1 colibri_vf
Quoted 6 lines
Quoted 1 line
Can you take a look ?
I sent a v2 additionally dropping
CONFIG_CMDLINE_EDITINGand SPI support saving another 8 Kb which for me makes it work right back to GCC 6.1.1 which I believe is anyway about as far back as one can go even compiling U-Boot. Can you please give that another go?
Merged the patchset, it works in my build. I will send PR to Tom.
Regards,
Stefano
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================
PATCH 1/2 board: toradex: colibri_vf: efi_loader: unset CONFIG_EFI_UNICODE_CAPITALIZATION
In reply to Marcel ZiswilerQuoted 9 lines · Marcel Ziswiler
From: Marcel Ziswiler <[email protected]>
Unset
CONFIG_EFI_UNICODE_CAPITALIZATIONon boards with tough size restrictions.This is analogous to commit
a90bf07afc43("efi_loader: unsetCONFIG_EFI_UNICODE_CAPITALIZATION").Signed-off-by Marcel Ziswiler <[email protected]>
Alex