Moved initialization of NATSEMI Ethernet controller to board_eth_init() Affected boards: a3000 Removed initialization of the driver from net/eth.c Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
diff --git a/board/a3000/a3000.c b/board/a3000/a3000.c index c1eceaa..040ba89 100644 --- a/board/a3000/a3000.c +++ b/board/a3000/a3000.c
@@ -27,6 +27,7 @@ #include <common.h> #include <mpc824x.h> #include <pci.h> +#include <netdev.h> int checkboard (void) { @@ -109,3 +110,9 @@ { pci_mpc824x_init(&hose); } + +int board_eth_init(bd_t *bis) +{ + return pci_eth_init(bis); +} +
diff --git a/drivers/net/natsemi.c b/drivers/net/natsemi.c index 4aee048..ff8d2d7 100644 --- a/drivers/net/natsemi.c +++ b/drivers/net/natsemi.c
@@ -53,6 +53,7 @@ #include <common.h> #include <malloc.h> #include <net.h> +#include <netdev.h> #include <asm/io.h> #include <pci.h>
diff --git a/include/netdev.h b/include/netdev.h index 97eff7a..c5b0815 100644 --- a/include/netdev.h +++ b/include/netdev.h
@@ -46,6 +46,7 @@ int macb_eth_initialize(int id, void *regs, unsigned int phy_addr); int mcdmafec_initialize(bd_t *bis); int mcffec_initialize(bd_t *bis); +int natsemi_initialize(bd_t *bis); int ns8382x_initialize(bd_t *bis); int rtl8139_initialize(bd_t *bis); int rtl8169_initialize(bd_t *bis); @@ -60,6 +61,9 @@ static inline int pci_eth_init(bd_t *bis) { int num = 0; +#ifdef CONFIG_NATSEMI + num += natsemi_initialize(bis); +#endif #ifdef CONFIG_NS8382X num += ns8382x_initialize(bis); #endif
diff --git a/net/eth.c b/net/eth.c index b846cad..dc7b288 100644 --- a/net/eth.c +++ b/net/eth.c
@@ -55,7 +55,6 @@ extern int mpc8220_fec_initialize(bd_t*); extern int mv6436x_eth_initialize(bd_t *); extern int mv6446x_eth_initialize(bd_t *); -extern int natsemi_initialize(bd_t*); extern int pcnet_initialize(bd_t*); extern int plb2800_eth_initialize(bd_t*); extern int ppc_4xx_eth_initialize(bd_t *); @@ -234,9 +233,6 @@ #ifdef CFG_GT_6426x gt6426x_eth_initialize(bis); #endif -#ifdef CONFIG_NATSEMI - natsemi_initialize(bis); -#endif if (!eth_devices) { puts ("No ethernet found.\n"); show_boot_progress (-64);