
On 23:07 Wed 01 Oct , Ben Warren wrote:
Hi Nobuhiro-san,
Nobuhiro Iwamatsu wrote:
get_prom function was used __attriute__ , but it is not enable. ax88796.o does not do link besides ne2000.o. When ld is carried out, get_prom function of ax88796.c is ignored. This problem is a thing by specifications of ld. I checked and test this patch on SuperH and MIPS.
You're seeing a common problem with weak functions - namely that they don't always get overridden. If there was a single function in ax88796.c that had strong static linkage there wouldn't be a problem. Using the weak attribute for get_prom() is an elegant solution that improves code re-use, so I'm wondering if there's a way it can be made to work.
If nobody has any suggestions over the next couple of days, I'll pull in this patch.
This get_prom() function was set as weak in commit 2ef7503a593c77a80c2a054011970227c4b62774, labeled " NE2000: Fix regresssion introduced by e710185aae90 on non AX88796" by Jean-Christophe PLAGNIOL-VILLARD. It's a shame that this was done without testing...
The NE2000 is tested every modification and Release on qemu_mips by myself
And I've no problem on this board.
Best Regards, J.