[U-Boot] [PATCH] defconfig: taurus_defconfig: disable SPL

Heiko Schocher hs at denx.de
Wed Dec 9 09:46:18 CET 2015


Hello Wenyou,

Am 09.12.2015 um 09:34 schrieb Yang, Wenyou:
> Hi
>
>> -----Original Message-----
>> From: Heiko Schocher [mailto:hs at denx.de]
>> Sent: 2015年12月9日 16:00
>> To: Yang, Wenyou <Wenyou.Yang at atmel.com>
>> Cc: U-Boot Mailing List <u-boot at lists.denx.de>; andreas.devel at googlemail.com;
>> Meier, Roger <r.meier at siemens.com>
>> Subject: Re: [PATCH] defconfig: taurus_defconfig: disable SPL
>>
>> Hello Wenyou,
>>
>> Am 09.12.2015 um 08:43 schrieb Yang, Wenyou:
>>> Hello Heiko,
>>>
>>>> -----Original Message-----
>>>> From: Heiko Schocher [mailto:hs at denx.de]
>>>> Sent: 2015年12月9日 15:39
>>>> To: Yang, Wenyou <Wenyou.Yang at atmel.com>
>>>> Cc: U-Boot Mailing List <u-boot at lists.denx.de>;
>>>> andreas.devel at googlemail.com; Meier, Roger <r.meier at siemens.com>
>>>> Subject: Re: [PATCH] defconfig: taurus_defconfig: disable SPL
>>>>
>>>> Hello Wenyou,
>>>>
>>>> Am 09.12.2015 um 08:15 schrieb Wenyou Yang:
>>>>> Build SPL with taurus_defconfig defconfig file.
>>>>> It build fails with following log message:
>>>>>
>>>>> ---8< ----
>>>>> $ make mrproper
>>>>> $ make taurus_defconfig
>>>>> $ make SPL
>>>>> [...]
>>>>> LD      spl/lib/built-in.o
>>>>> LDS     spl/u-boot-spl.lds
>>>>> LD      spl/u-boot-spl
>>>>> arm-none-linux-gnueabi-ld: SPL image too big
>>>>> make[1]: *** [spl/u-boot-spl] Error 1
>>>>> make: *** [spl/u-boot-spl] Error 2
>>>>> --->8----
>>>>>
>>>>> This board code is not ready for SPL for now, so disable CONFIG_SPL.
>>>>>
>>>>> Signed-off-by: Wenyou Yang <wenyou.yang at atmel.com>
>>>>> ---
>>>>>
>>>>>     configs/taurus_defconfig |    1 -
>>>>>     1 file changed, 1 deletion(-)
>>>>
>>>> NACK.
>>>>
>>>> With which toolchain?
>>>
>>> The toolchain is Sourcery CodeBench Lite 2013.05-24. Here is  the
>>> toolchain information,
>>>
>>> ---8<-----
>>> $ arm-none-linux-gnueabi-gcc -v
>>> Using built-in specs.
>>> COLLECT_GCC=arm-none-linux-gnueabi-gcc
>>> COLLECT_LTO_WRAPPER=/home/wyang/opt/arm-
>> 2013.05/bin/../libexec/gcc/arm
>>> -none-linux-gnueabi/4.7.3/lto-wrapper
>>> Target: arm-none-linux-gnueabi
>>> Configured with:
>>> /scratch/jbrown/2013.05-arm-linux-release/src/gcc-4.7-2013.05/configur
>>> e --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu
>>> --target=arm-none-linux-gnueabi --enable-threads --disable-libmudflap
>>> --disable-libssp --disable-libstdcxx-pch
>>> --enable-extra-sgxxlite-multilibs --with-arch=armv5te --with-gnu-as
>>> --with-gnu-ld --with-specs='%{save-temps: -fverbose-asm}
>>> %{funwind-tables|fno-unwind-tables|mabi=*|ffreestanding|nostdlib:;:-fu
>>> nwind-tables} -D__CS_SOURCERYGXX_MAJ__=2013 -
>> D__CS_SOURCERYGXX_MIN__=5
>>> -D__CS_SOURCERYGXX_REV__=24 %{O2:%{!fno-remove-local-statics:
>>> -fremove-local-statics}}
>>> %{O*:%{O|O0|O1|O2|Os:;:%{!fno-remove-local-statics:
>>> -fremove-local-statics}}}' --enable-languages=c,c++ --enable-shared
>>> --enable-lto --enable-symvers=gnu --enable-__cxa_atexit
>>> --with-pkgversion='Sourcery CodeBench Lite 2013.05-24'
>>> --with-bugurl=https://sourcery.mentor.com/GNUToolchain/ --disable-nls
>>> --prefix=/opt/codesourcery
>>> --with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc --w
>>   i
>> th-build-sysroot=/scratch/jbrown/2013.05-arm-linux-release/install/arm-none-linux-
>> gnueabi/libc --with-gmp=/scratch/jbrown/2013.05-arm-linux-release/obj/pkg-
>> 2013.05-24-arm-none-linux-gnueabi/arm-2013.05-24-arm-none-linux-
>> gnueabi.extras/host-libs-i686-pc-linux-gnu/usr --with-
>> mpfr=/scratch/jbrown/2013.05-arm-linux-release/obj/pkg-2013.05-24-arm-none-
>> linux-gnueabi/arm-2013.05-24-arm-none-linux-gnueabi.extras/host-libs-i686-pc-
>> linux-gnu/usr --with-mpc=/scratch/jbrown/2013.05-arm-linux-release/obj/pkg-
>> 2013.05-24-arm-none-linux-gnueabi/arm-2013.05-24-arm-none-linux-
>> gnueabi.extras/host-libs-i686-pc-linux-gnu/usr --with-ppl=/scratch/jbrown/2013.05-
>> arm-linux-release/obj/pkg-2013.05-24-arm-none-linux-gnueabi/arm-2013.05-24-
>> arm-none-linux-gnueabi.extras/host-libs-i686-pc-linux-gnu/usr --with-host-
>> libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --with-
>> cloog=/scratch/jbrown/2013.05-arm-linux-release/obj/pkg-2013.05-24-arm-none-
>> linux-gnueabi/arm-2013.05-24-arm-none-linux-gnueabi.extr
>>   a
>> s/host-libs-i686-pc-linux-gnu/usr --with-libelf=/scratch/jbrown/2013.05-arm-linux-
>> release/obj/pkg-2013.05-24-arm-none-linux-gnueabi/arm-2013.05-24-arm-none-
>> linux-gnueabi.extras/host-libs-i686-pc-linux-gnu/usr --disable-libgomp --disable-
>> libitm --enable-poison-system-directories --with-build-time-
>> tools=/scratch/jbrown/2013.05-arm-linux-release/install/arm-none-linux-
>> gnueabi/bin --with-build-time-tools=/scratch/jbrown/2013.05-arm-linux-
>> release/install/arm-none-linux-gnueabi/bin
>>> Thread model: posix
>>> gcc version 4.7.3 (Sourcery CodeBench Lite 2013.05-24)
>>> --->8---------
>>
>> Just tried with
>>
>> hs at localhost:u-boot  [master] $ arm-unknown-linux-gnueabi-gcc -v Using built-in
>> specs.
>> COLLECT_GCC=arm-unknown-linux-gnueabi-gcc
>> COLLECT_LTO_WRAPPER=/home/hs/data/Entwicklung/zug/cacheperformance/c
>> rosstool/tools-linaro-5.2-20151110/arm-unknown-linux-gnueabi/libexec/gcc/arm-
>> unknown-linux-gnueabi/5.2.1/lto-wrapper
>> Target: arm-unknown-linux-gnueabi
>> Configured with:
>> /home/hs/data/Entwicklung/zug/cacheperformance/crosstool/.build/src/gcc-
>> custom/configure
>> --build=x86_64-build_unknown-linux-gnu --host=x86_64-build_unknown-linux-gnu
>> --target=arm-unknown-linux-gnueabi
>> --prefix=/home/hs/data/Entwicklung/zug/cacheperformance/crosstool/tools-linaro-
>> 5.2-20151110/arm-unknown-linux-gnueabi
>> --with-sysroot=/home/hs/data/Entwicklung/zug/cacheperformance/crosstool/tools-
>> linaro-5.2-20151110/arm-unknown-linux-gnueabi/arm-unknown-linux-
>> gnueabi/sysroot
>> --enable-languages=c --with-pkgversion='crosstool-NG 1.21.0' --enable-
>> __cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-
>> libquadmath --disable-libquadmath-support --disable-libsanitizer --with-
>> gmp=/home/hs/data/Entwicklung/zug/cacheperformance/crosstool/.build/arm-
>> unknown-linux-gnueabi/buildtools
>> --with-
>> mpfr=/home/hs/data/Entwicklung/zug/cacheperformance/crosstool/.build/arm-
>> unknown-linux-gnueabi/buildtools
>> --with-
>> mpc=/home/hs/data/Entwicklung/zug/cacheperformance/crosstool/.build/arm-
>> unknown-linux-gnueabi/buildtools
>> --with-ppl=no --with-isl=no --with-cloog=no --with-
>> libelf=/home/hs/data/Entwicklung/zug/cacheperformance/crosstool/.build/arm-
>> unknown-linux-gnueabi/buildtools
>> --enable-threads=posix --enable-target-optspace --disable-nls --disable-multilib --
>> with-local-
>> prefix=/home/hs/data/Entwicklung/zug/cacheperformance/crosstool/tools-linaro-
>> 5.2-20151110/arm-unknown-linux-gnueabi/arm-unknown-linux-gnueabi/sysroot
>> --enable-c99 --enable-long-long
>> Thread model: posix
>> gcc version 5.2.1 20151110 (crosstool-NG 1.21.0) hs at localhost:u-boot  [master]
>> $
>>
>> hs at localhost:u-boot  [master] $ make taurus_defconfig
>>     HOSTCC  scripts/basic/fixdep
>> make all  HOSTCC  scripts/kconfig/conf.o
>>
>>     SHIPPED scripts/kconfig/zconf.tab.c
>>     SHIPPED scripts/kconfig/zconf.lex.c
>>     SHIPPED scripts/kconfig/zconf.hash.c
>>     HOSTCC  scripts/kconfig/zconf.tab.o
>>     HOSTLD  scripts/kconfig/conf
>> #
>> # configuration written to .config
>> #
>> hs at localhost:u-boot  [master] $ make all scripts/kconfig/conf  --silentoldconfig
>> Kconfig [...]
>>     LD      spl/u-boot-spl
>>     OBJCOPY spl/u-boot-spl.bin
>>     CFG     spl/u-boot-spl.cfg
>>     MKIMAGE boot.bin
>>     MKIMAGE u-boot.img
>> hs at localhost:u-boot  [master] $
>> hs at localhost:u-boot  [master] $ ls -al spl/u-boot-spl.bin -rwxrwxr-x. 1 hs hs 15824
>> 9. Dez 08:56 spl/u-boot-spl.bin hs at localhost:u-boot  [master] $
>>
>> Use another toolchain? How big is your spl/u-boot-spl.bin ?
>
> I will try another toolchain.
> The size of spl/u-boot-spl.bin is 16048 generated by my current toolchain.
>
> ---8<-----
> $ ls -l spl/u-boot-spl.bin
> -rwxrwxr-x 1 wyang wyang 16048 Dec  9 16:16 spl/u-boot-spl.bin
> --->8----
>
> Maybe the "CONFIG_SPL_MAX_SIZE" should be changed to bigger one, not above 16K. It will be OK.

There are only 16K sram for SPL ... we need some bytes also
for the stack ...

bye,
Heiko
>
>>
>> bye,
>> Heiko
>>>
>>>>
>>>> Here current build of u-boot on travis-ci.org:
>>>> with eldk-5.4:
>>>> https://travis-ci.org/u-boot/u-boot/jobs/95590341
>>>> https://travis-ci.org/u-boot/u-boot/jobs/95590311
>>>>
>>>> bye,
>>>> Heiko
>>>>>
>>>>> diff --git a/configs/taurus_defconfig b/configs/taurus_defconfig
>>>>> index
>>>>> d59912c..557b066 100644
>>>>> --- a/configs/taurus_defconfig
>>>>> +++ b/configs/taurus_defconfig
>>>>> @@ -1,7 +1,6 @@
>>>>>     CONFIG_ARM=y
>>>>>     CONFIG_ARCH_AT91=y
>>>>>     CONFIG_TARGET_TAURUS=y
>>>>> -CONFIG_SPL=y
>>>>>
>>>>
>> CONFIG_SYS_EXTRA_OPTIONS="AT91SAM9G20,MACH_TYPE=2067,BOARD_
>>>> TAURUS"
>>>>>     CONFIG_SYS_PROMPT="U-Boot> "
>>>>>     # CONFIG_CMD_BDI is not set
>>>>>
>>>>
>>>> --
>>>> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
>>>> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
>>>
>>> Best Regards,
>>> Wenyou Yang
>>>
>>
>> --
>> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
>> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
>
>
> Best Regards,
> Wenyou Yang
>

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany


More information about the U-Boot mailing list