Simon On 03/17/2017 01:46 PM, Simon Glass wrote: > Hi Dan, > > On 17 March 2017 at 12:33, Dan Murphy <dmur...@ti.com> wrote: >> Simon >> >> On 03/17/2017 01:24 PM, Simon Glass wrote: >>> +ML >>> >>> Hi Dan, >>> >>> On 17 March 2017 at 12:16, Dan Murphy <dmur...@ti.com> wrote: >>>> Simon >>>> >>>> I wanted to drop you a note to see if you have any advice on how to fix >>>> this issue. >>>> >>>> In the attached .config file we enable >>>> >>>> CONFIG_SPL_SYS_MALLOC_SIMPLE and CONFIG_SPL_DFU_SUPPORT which we need >>>> CONFIG_SPL_DFU_RAM >>>> >>>> When doing this we find that there is a build error >>>> >>>> common/built-in.o: In function `xrealloc': >>>> common/cli_hush.c:3349: undefined reference to `realloc_simple' >>>> common/built-in.o: In function `done_word': >>>> common/cli_hush.c:2494: undefined reference to `realloc_simple' >>>> cli_hush.c:2499: undefined reference to `realloc_simple' >>>> common/built-in.o: In function `b_check_space': >>>> common/cli_hush.c:876: undefined reference to `realloc_simple' >>>> make[1]: *** [spl/u-boot-spl] Error 1 >>>> make: *** [spl/u-boot-spl] Error 2 >>>> >>>> In digging into this I am finding that realloc_simple is not defined >>>> anywhere in uboot. malloc_simple.c seems >>>> to be missing the implementation. >>>> >>>> I am looking to see if you have a patch that fixes this issue or if you >>>> can guide us to a resolution. >>>> >>>> Right now our only work around is to disable the HUSH_PARSER or turn off >>>> the MALLOC simple. Which according to >>>> Lokesh, CC'd, is needed for DM support. >>> So SPL is using hush? Is there a description somewhere of what it does >>> with that? >> HUSH_PARSER was added to the TI config in commit adad96e60 configs: Re-sync >> HUSH options. >> >> HUSH calls realloc in the builtin functions. I am not sure what SPL would >> do with the HUSH. >> >>> If you have enough space for hush I wonder whether you can just use >>> full malloc() in SPL? You could implement realloc_simple() by just >>> calling malloc_simple() and copying the old data over, but it is >>> inefficient. >> We could work around it but the undef reference will still exist for other >> code that would need realloc. > Right, but the point of simple malloc() is to be simple, and realloc() > is assumed not to be needed until you have a proper malloc().
By proper malloc you mean the dlmalloc code? If thats true then why is realloc even defined in the simple malloc case? Dan >> Lokesh >> >> Do we run out of room using full malloc support in the SPL with the DM code >> added? >> >> Dan > Regards, > Simon -- ------------------ Dan Murphy _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot