[U-Boot] [PATCH 3/3][Net][ARM] Switched dm644x_emac Ethernet driver to use newer API

Ben Warren biggerbadderben at gmail.com
Thu Apr 30 00:11:45 CEST 2009


Jean-Christophe PLAGNIOL-VILLARD wrote:
> On 13:29 Wed 29 Apr     , Ben Warren wrote:
>   
>> Hi J-C,
>>
>> Jean-Christophe PLAGNIOL-VILLARD wrote:
>> <snip>
>>     
>>>> +/*
>>>> + *  * Initializes on-chip ethernet controllers.
>>>> + *   * to override, implement board_eth_init()
>>>> + *    */
>>>> +int cpu_eth_init(bd_t *bis)
>>>> +{
>>>> +#if defined(CONFIG_DRIVER_TI_EMAC)
>>>> +	dm644x_emac_initialize();
>>>> +#endif
>>>> +	return 0;
>>>> +}
>>>>     
>>>>         
>>> please move this to the soc
>>> arm926ejs/davinci/cpu.c
>>>
>>> the cpu.c is destinated to be removed in most of the case
>>> or at least all the soc specific code
>>>
>>> Best Regards,
>>> J.
>>>   
>>>       
>> There is currently no such file (not even in arm/next), or that's where  
>> this would have gone.  This function needs to be in a source file that  
>> already has strongly-linked symbols or it won't override the weak  
>> version in net/eth.c.  I'm certainly open to suggestions.
>>     
> or simply add an entry in the lds this will force the file to be evaluated
> first
>
>   
That's not a scalable solution and isn't how we did it with other 
controllers.  If there's no file that's guaranteed to be included in all 
Davinci boards that will have this MAC, an alternative is to implement 
board_eth_init() on each board, but IMHO that's worse architecturally.
> Best Regards,
> J.
>   
regards,
Ben


More information about the U-Boot mailing list