[U-Boot] [RFC PATCH 4/8] arm: printf() is not available in the SPL

Tom Rini tom.rini at gmail.com
Wed Nov 16 15:18:49 CET 2011


On Wed, Nov 16, 2011 at 12:37 AM, Christian Riesch
<christian.riesch at omicron.at> wrote:
> Hi Tom,
> thanks for your comments!
>
> On Tue, Nov 15, 2011 at 6:50 PM, Tom Rini <tom.rini at gmail.com> wrote:
>> On Tue, Nov 15, 2011 at 3:37 AM, Christian Riesch
>> <christian.riesch at omicron.at> wrote:
>>>
>>> Signed-off-by: Christian Riesch <christian.riesch at omicron.at>
>>> Cc: Wolfgang Denk <wd at denx.de>
>>> ---
>>>  arch/arm/lib/eabi_compat.c |    3 +++
>>>  1 files changed, 3 insertions(+), 0 deletions(-)
>>>
>>> diff --git a/arch/arm/lib/eabi_compat.c b/arch/arm/lib/eabi_compat.c
>>> index eb3e26d..2d49a28 100644
>>> --- a/arch/arm/lib/eabi_compat.c
>>> +++ b/arch/arm/lib/eabi_compat.c
>>> @@ -13,10 +13,13 @@
>>>
>>>  int raise (int signum)
>>>  {
>>> +#ifndef CONFIG_SPL_BUILD
>>>        printf("raise: Signal # %d caught\n", signum);
>>> +#endif
>>>        return 0;
>>>  }
>>>
>>> +
>>>  /* Dummy function to avoid linker complaints */
>>>  void __aeabi_unwind_cpp_pr0(void)
>>>  {
>>
>> printf exists for omap3 SPL.
>
> Ok, I guess I should make this something like #if
> !defined(CONFIG_SPL_BUILD) || defined(CONFIG_SPL_LIBCOMMON_SUPPORT).

If that fixes the link error, yes :)

>> But perhaps the question is, why isn't
>> this code being gc'd away in your SPL?
>
> I must admit that I have absolutely no idea what this function is used
> for. I only see a linker error due to the missing printf.
> Any ideas?

Not off-hand, but you can always run a for o in `find objdir -name
*.o`;do echo $o ; arm-linux-gnueabi-nm $o | grep raise;done or so and
see where it's coming from :)

-- 
Tom


More information about the U-Boot mailing list