u-boot-brain/drivers/net
Sebastien Carlier 6d8962e814 Switch from archive libraries to partial linking
Before this commit, weak symbols were not overridden by non-weak symbols
found in archive libraries when linking with recent versions of
binutils.  As stated in the System V ABI, "the link editor does not
extract archive members to resolve undefined weak symbols".

This commit changes all Makefiles to use partial linking (ld -r) instead
of creating library archives, which forces all symbols to participate in
linking, allowing non-weak symbols to override weak symbols as intended.
This approach is also used by Linux, from which the gmake function
cmd_link_o_target (defined in config.mk and used in all Makefiles) is
inspired.

The name of each former library archive is preserved except for
extensions which change from ".a" to ".o".  This commit updates
references accordingly where needed, in particular in some linker
scripts.

This commit reveals board configurations that exclude some features but
include source files that depend these disabled features in the build,
resulting in undefined symbols.  Known such cases include:
- disabling CMD_NET but not CMD_NFS;
- enabling CONFIG_OF_LIBFDT but not CONFIG_QE.

Signed-off-by: Sebastien Carlier <sebastien.carlier@gmail.com>
2010-11-17 21:02:18 +01:00
..
phy Switch from archive libraries to partial linking 2010-11-17 21:02:18 +01:00
3c589.c drivers/net/: get mac address from environment 2009-03-20 22:39:10 +01:00
3c589.h Big white-space cleanup. 2008-05-21 00:14:08 +02:00
4xx_enet.c ppc4xx: Big header cleanup, mostly PPC440 related 2010-09-23 09:02:05 +02:00
5701rls.c drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
5701rls.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
8390.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
altera_tse.c miiphy: constify device name 2010-08-09 11:52:29 -07:00
altera_tse.h net: add altera triple speeds ethernet mac driver 2010-05-03 14:52:49 -07:00
at91_emac.c Merge branch 'master' of git://git.denx.de/u-boot-arm 2010-10-13 20:59:47 +02:00
ax88180.c AX88180: add support for the Marvell 88E1118 phy 2010-07-12 00:14:29 -07:00
ax88180.h AX88180: use standard I/O accessors 2010-07-12 00:14:29 -07:00
ax88796.c net: ne2000: Divided a function of NE2000 driver 2008-10-13 22:28:32 -07:00
ax88796.h NE2000: Fix regresssion introduced by e710185aae on non AX88796 2008-04-28 22:26:36 -07:00
bcm570x_autoneg.c drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
bcm570x_autoneg.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
bcm570x_bits.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
bcm570x_debug.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
bcm570x_lm.h bcm570x: get mac address from environment 2009-03-20 22:39:10 +01:00
bcm570x_mm.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
bcm570x_queue.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
bcm570x.c bcm570x: get mac address from environment 2009-03-20 22:39:10 +01:00
bfin_mac.c Blackfin: bfin_mac: convert from old style MMR macros 2010-10-02 16:00:37 -04:00
bfin_mac.h Blackfin: bfin_mac: hook up new write_hwaddr function 2010-05-03 14:52:50 -07:00
cs8900.c cs8900_initialize() cleanup 2010-01-31 22:34:33 -08:00
cs8900.h Convert CS8900 Ethernet driver to CONFIG_NET_MULTI API 2009-08-25 13:35:54 -07:00
davinci_emac.c davinci_emac: davinci_eth_set_mac_addr to ->write_hwaddr 2010-10-11 23:07:17 -07:00
dc2114x.c net: dc2114x: Add initialized eth_device structure 2010-11-14 23:17:40 +01:00
designware.c miiphy: constify device name 2010-08-09 11:52:29 -07:00
designware.h SPEAr : Network driver support added 2010-07-12 00:08:05 -07:00
dm9000x.c net: dm9000x: re-add casts to I/O pointers to fix gcc warnings 2010-07-12 00:02:11 -07:00
dm9000x.h dm9000 remove dead external phy support, gpio fix 2008-08-26 23:08:19 -07:00
dnet.c Coding Style cleanup; update CHANGELOG 2009-02-22 01:19:52 +01:00
dnet.h dnet: driver for Dave DNET ethernet controller 2009-02-10 00:16:27 +01:00
e1000.c net: e1000: Add initialized eth_device & e1000_hw structure 2010-11-14 23:24:37 +01:00
e1000.h Add Intel E1000 PCIE card support 2009-08-08 02:26:05 -07:00
eepro100.c net: eepro100: Add initialized eth_device structure 2010-11-14 23:17:41 +01:00
enc28j60_lpc2292.c NET: move legacy enc28j60.c to sidetrack as enc28j60_lpc2292.c 2010-10-11 22:47:48 -07:00
enc28j60.c NET: add ENC28J60 driver using SPI framework 2010-10-11 22:47:48 -07:00
enc28j60.h NET: add ENC28J60 driver using SPI framework 2010-10-11 22:47:48 -07:00
ep93xx_eth.c miiphy: constify device name 2010-08-09 11:52:29 -07:00
ep93xx_eth.h Add EP93xx ethernet driver 2010-01-31 22:37:12 -08:00
ethoc.c net: ethoc: add write_hwaddr support 2010-05-03 14:52:50 -07:00
fec_mxc.c net: fec_mxc: Add initialized eth_device structure 2010-11-14 23:17:42 +01:00
fec_mxc.h fec_mxc: add MX25 support 2010-03-07 12:36:36 -06:00
fsl_mcdmafec.c drivers/net/: get mac address from environment 2009-03-20 22:39:10 +01:00
ftmac100.c arm: A320: driver for FTMAC100 ethernet controller 2009-08-10 14:53:52 -07:00
ftmac100.h arm: A320: driver for FTMAC100 ethernet controller 2009-08-10 14:53:52 -07:00
greth.c Introduce netdev.h header file and remove externs 2008-09-02 21:18:16 -07:00
greth.h SPARC/LEON3: Added GRETH Ethernet 10/100/1000 driver. 2008-03-30 00:33:28 -04:00
inca-ip_sw.c Moved initialization of IncaIP Ethernet controller to board_eth_init 2008-09-02 21:18:17 -07:00
ks8695eth.c drivers/net/: get mac address from environment 2009-03-20 22:39:10 +01:00
lan91c96.c lan91c96, smc911x: remove useless free(ptr) calls on NULL ptr 2010-05-17 23:21:08 +02:00
lan91c96.h NET: LAN91C96 CONFIG_NET_MULTIify 2009-12-13 21:31:26 -08:00
macb.c miiphy: constify device name 2010-08-09 11:52:29 -07:00
macb.h AT91CAP9 support : MACB changes 2008-02-14 09:37:58 +00:00
Makefile Switch from archive libraries to partial linking 2010-11-17 21:02:18 +01:00
mcffec.c drivers/net/: get mac address from environment 2009-03-20 22:39:10 +01:00
mcfmii.c miiphy: constify device name 2010-08-09 11:52:29 -07:00
mpc5xxx_fec.c mpc5xxx_fec: add call to reset_phy() after PHY initialization 2010-10-11 23:00:29 -07:00
mpc5xxx_fec.h Move MPC5xxx_FEC driver to drivers/net 2008-08-29 13:58:07 -06:00
mpc512x_fec.c miiphy: constify device name 2010-08-09 11:52:29 -07:00
mpc512x_fec.h MPC512x: remove include/mpc512x.h 2009-06-12 20:47:16 +02:00
mvgbe.c miiphy: constify device name 2010-08-09 11:52:29 -07:00
mvgbe.h mvgbe: add support for orion5x GbE controller 2010-07-12 23:40:31 -07:00
natsemi.c net: natsemi: Add initialized eth_device structure 2010-11-14 23:17:43 +01:00
ne2000_base.c rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
ne2000_base.h net: ne2000: Divided a function of NE2000 driver 2008-10-13 22:28:32 -07:00
ne2000.c net: ne2000: Divided a function of NE2000 driver 2008-10-13 22:28:32 -07:00
ne2000.h NE2000: Fix regresssion introduced by e710185aae on non AX88796 2008-04-28 22:26:36 -07:00
netarm_eth.c rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
netarm_eth.h drivers/net : move net drivers to drivers/net 2007-11-25 18:35:17 +01:00
netconsole.c netconsole: mark local funcs with static 2010-01-18 00:21:49 +01:00
nicext.h Big white-space cleanup. 2008-05-21 00:14:08 +02:00
ns7520_eth.c miiphy: constify device name 2010-08-09 11:52:29 -07:00
ns8382x.c net: ns8382x: Add initialized eth_device structure 2010-11-14 23:17:44 +01:00
ns9750_eth.c rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
pcnet.c net: pcnet: Add initialized eth_device structure 2010-11-14 23:17:45 +01:00
plb2800_eth.c Moved initialization of plb2800 Ethernet driver to board_eth_init 2008-09-02 21:18:18 -07:00
rtl8019.c drivers/net/: get mac address from environment 2009-03-20 22:39:10 +01:00
rtl8019.h Big white-space cleanup. 2008-05-21 00:14:08 +02:00
rtl8139.c net: rtl8139: Add initialized eth_device structure 2010-11-14 23:17:39 +01:00
rtl8169.c net: rtl8169: Add initialized eth_device structure 2010-11-14 23:17:37 +01:00
s3c4510b_eth.c drivers/net/: get mac address from environment 2009-03-20 22:39:10 +01:00
s3c4510b_eth.h drivers/net/: get mac address from environment 2009-03-20 22:39:10 +01:00
sh_eth.c sh: sh_eth: Remove garbage from printf 2009-07-22 22:53:43 -07:00
sh_eth.h Fix 100Mbs ethernet operation on sh7763 based boards 2009-02-09 22:52:11 -08:00
smc911x.c lan91c96, smc911x: remove useless free(ptr) calls on NULL ptr 2010-05-17 23:21:08 +02:00
smc911x.h smc911x: add support for LAN9220 2009-10-19 10:08:44 -07:00
smc91111.c smc91111: add write_hwaddr 2010-10-11 23:07:28 -07:00
smc91111.h SMC91111: Clean up SMC_inx macros on xsengine and xaeniax 2009-11-09 21:55:09 -08:00
tigon3.c bcm570x: get mac address from environment 2009-03-20 22:39:10 +01:00
tigon3.h Big white-space cleanup. 2008-05-21 00:14:08 +02:00
tsec.c miiphy: constify device name 2010-08-09 11:52:29 -07:00
tsi108_eth.c net: tsi108_eth: Add initialized eth_device structure 2010-11-14 23:17:46 +01:00
uli526x.c net: uli526x: Add initialized eth_device structure 2010-11-14 23:17:46 +01:00
vsc7385.c rename CFG_ macros to CONFIG_SYS 2008-10-18 21:54:03 +02:00
xilinx_emaclite.c net: Move Emaclite to NET_MULTI 2010-10-11 23:07:04 -07:00