eng6138
New Contributor
6 years agou-boot make failure: SPL image too big
When trying to build u-boot/make the preloader, I get the following message: arm-altera-eabi-ld: SPL image too big
make CROSS_COMPILE=arm-altera-eabi- -C uboot-socfpga spl/u-boot-spl.bin ... cd /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/spl/ && arm-altera-eabi-ld -T /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/spl/u-boot-spl.lds --gc-sections -Bstatic arch/arm/cpu/armv7/start.o --start-group arch/arm/cpu/armv7/libarmv7.o arch/arm/cpu/armv7/socfpga/libsocfpga.o arch/arm/lib/libarm.o board/altera/socfpga/libsocfpga.o board/altera/socfpga/sdram/libsocfpga-sdram.o --end-group /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/spl/arch/arm/lib/eabi_compat.o -L /opt/intelFPGA/18.0/embedded/host_tools/mentor/gnu/arm/baremetal/bin/../lib/gcc/arm-altera-eabi/6.2.0 -lgcc -Map u-boot-spl.map -o u-boot-spl arm-altera-eabi-ld: SPL image too big arch/arm/cpu/armv7/socfpga/libsocfpga.o: In function `sdram_mmr_init_full': /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/arch/arm/cpu/armv7/socfpga/sdram.c:377: undefined reference to `__stack_start' /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/arch/arm/cpu/armv7/socfpga/sdram.c:377: undefined reference to `__sdram_stack_start' arch/arm/cpu/armv7/socfpga/libsocfpga.o: In function `s_init': /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/arch/arm/cpu/armv7/socfpga/s_init.c:73: undefined reference to `memset' /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/arch/arm/cpu/armv7/socfpga/s_init.c:92: undefined reference to `__ecc_padding_start' /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/arch/arm/cpu/armv7/socfpga/s_init.c:92: undefined reference to `__ecc_padding_end' arch/arm/cpu/armv7/socfpga/libsocfpga.o: In function `sdram_mmr_init_full': /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/arch/arm/cpu/armv7/socfpga/sdram.c:1264: undefined reference to `board_init_r' /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/arch/arm/cpu/armv7/socfpga/sdram.c:1265: undefined reference to `__stack_start' /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/arch/arm/cpu/armv7/socfpga/sdram.c:1277: undefined reference to `gdata' make[2]: *** [Makefile:178: /home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/spl/u-boot-spl] Error 1 make[2]: Leaving directory '/home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga/spl' make[1]: *** [Makefile:611: spl/u-boot-spl.bin] Error 2 make[1]: Leaving directory '/home/firmware/Documents/DE1_SoC_demo_ds5/software/spl_bsp/uboot-socfpga' make: *** [Makefile:187: uboot-socfpga/spl/u-boot-spl.bin] Error 2
Performing the build on a Ubuntu 20.04 virtual machine which has SoC EDS 18.0.0.614 installed. BSP and HDL was created on Windows 10 build 19041 using the same Quartus and SoC EDS version. Target board is the Terasic DE1-SoC dev kit.
It appears the problem is fixed by doing a "make clean" and running make again.