[U-Boot] [PATCH 1/1] net: Add Xilinx LL Temac driver version2
Ben Warren
biggerbadderben at gmail.com
Mon Feb 23 19:29:17 CET 2009
Hi Michal,
Michal Simek wrote:
<snip>
>> All of the above mentioned issues are ones that I could easily deal
>> with, but one thing that really does need to change is that you need to
>> use the CONFIG_NET_MULTI API. In other words, your driver should have a
>> single initialize() function (prototyped in include/netdev.h), and an
>> eth_device struct that gets registered. All your access functions
>> (eth_init, eth_send, eth_recv etc.) will be static and pointed to by the
>> eth_device struct. Most drivers are already this way.
>>
>
> I look at it and I did some change and the main problem is in Microblaze GCC.
> We use GCC 3.4.1 and CONFIG_NET_MULTI use weak function and board_eth_init is
> never called. We are working on GCC 4.1.2 but I don't know when I get it.
>
>
According to the documentation I could find, weak symbols were present
in gcc 3.4.1. Are you sure you're using them properly? Due to the way
linking is performed in U-boot, any weak symbol overrides need to be in
source files that have strongly linked symbols. You'll see that all
implementations of cpu_eth_init() and board_eth_init() are in files that
already contain stuff that is sure to be linked.
> I have two more Xilinx eth drivers in U-BOOT and I think that will be the best
> to do all changes together. What do you think?
>
> Thanks,
> Michal
>
>
If you're really unable to make this change due to your tools, I'm not
opposed to pulling this driver in. I just want to know that you intend
to port all the Xilinx drivers over some time in the near future.
regards,
Ben
More information about the U-Boot
mailing list