[U-Boot] weak functions not being over-ridden (location dependent)

Ben Warren biggerbadderben at gmail.com
Wed Nov 26 20:42:12 CET 2008


Graeme,

Graeme Russ wrote:
> Wolfgang Denk wrote:
>   
>> Dear Remy,
>>
>> In message <3efb10970811260501h6dcf87b9idf3d80981ceee07b at mail.gmail.com> you wrote:
>>     
>>>> I have a very strange problem - I am trying to define a weak function, but
>>>> whether or not the function is overridden depends on where I put the
>>>> overriding function. Case in point:
>>>>         
>>> You are not the only one, I have seen this also with the LED interface
>>> in U-boot.
>>>       
>> I think this has been answered before: it doesn't work when the
>> functions are in libraries. It only works when the respective
>> functions are in explicitely linked object files.
>>
>>
>>     
> This doesn't seem right - reset_cpu () will be in a library no matter where
> I put it (either libsc520.a or libeNET.a)
>   
Is the overriding function the only one in the source file (and thus the 
object file)?  I've found that overriding functions will link only if 
there's other code in the source file that is strongly-linked.

regards,
Ben


More information about the U-Boot mailing list