[U-Boot] Arria 10 binary too large

The uboot binary generated with `make socfpga_arria10_config` is too large for Intel's `mkpimage` tool to consume.
u-boot.bin weighs in at 242508 bytes.
The maximum binary size supported by the `mkpimage` tool (distributed with Intel's SoC EDS suite) is 204796 bytes.
Note that this image also has to include the device tree blob, which for my design is about 4k.
I'm sure that someone must have tested this binary, it would be handy to know either what configuration options were necessary to slim u-boot down enough, or how mkpimage might be being used differently.
For reference, my build steps are as follows:
To generate u-boot.bin:
``` export CROSS_COMPILE=${soc-toolchain}/bin/arm-linux-gnueabihf- make mrproper make socfpga_arria10_config make ```
To generate uboot combined with the device tree blob:
``` cat u-boot.bin devicetree.dtb > u-boot_w_dtb.bin mkpimage \ --header-version 1 \ -o uboot_w_dtb-mkpimage.bin \ u-boot_w_dtb.bin \ u-boot_w_dtb.bin \ u-boot_w_dtb.bin \ u-boot_w_dtb.bin ```
mkpimage fails with the output 'Image size must not be more than 204796 bytes'
I get this behaviour with `mkpimage version 17.0 (build 290)` and revision `7e09145` of u-boot.
Best, Joe.

G'day Joe,
On 8/07/2017 03:46, Joe Hermaszewski wrote:
The uboot binary generated with `make socfpga_arria10_config` is too large for Intel's `mkpimage` tool to consume.
u-boot.bin weighs in at 242508 bytes.
The maximum binary size supported by the `mkpimage` tool (distributed with Intel's SoC EDS suite) is 204796 bytes.
Note that this image also has to include the device tree blob, which for my design is about 4k.
I'm sure that someone must have tested this binary, it would be handy to know either what configuration options were necessary to slim u-boot down enough, or how mkpimage might be being used differently.
For reference, my build steps are as follows:
To generate u-boot.bin:
export CROSS_COMPILE=${soc-toolchain}/bin/arm-linux-gnueabihf- make mrproper make socfpga_arria10_config make
To generate uboot combined with the device tree blob:
cat u-boot.bin devicetree.dtb > u-boot_w_dtb.bin mkpimage \ --header-version 1 \ -o uboot_w_dtb-mkpimage.bin \ u-boot_w_dtb.bin \ u-boot_w_dtb.bin \ u-boot_w_dtb.bin \ u-boot_w_dtb.bin
mkpimage fails with the output 'Image size must not be more than 204796 bytes'
I get this behaviour with `mkpimage version 17.0 (build 290)` and revision `7e09145` of u-boot.
I've got a Cyclone V system and I'm using the tool builtin to uboot. mkimage I think does the work in uboot.
Anyway after building uboot I end up with a u-boot-with-spl.sfp
That's ready to copy to the sdcard.
participants (2)
-
Joe Hermaszewski
-
Phil Reid