Moved initialization of MPC8220 FEC to cpu_eth_init()

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
This commit is contained in:
Ben Warren 2008-10-22 23:47:51 -07:00
parent 0e8454e990
commit a9bec96d63
4 changed files with 16 additions and 4 deletions

View File

@ -62,5 +62,7 @@ void pci_init_board (void)
int board_eth_init(bd_t *bis) int board_eth_init(bd_t *bis)
{ {
/* Initialize built-in FEC first */
cpu_eth_init(bis);
return pci_eth_init(bis); return pci_eth_init(bis);
} }

View File

@ -29,6 +29,7 @@
#include <watchdog.h> #include <watchdog.h>
#include <command.h> #include <command.h>
#include <mpc8220.h> #include <mpc8220.h>
#include <netdev.h>
#include <asm/processor.h> #include <asm/processor.h>
DECLARE_GLOBAL_DATA_PTR; DECLARE_GLOBAL_DATA_PTR;
@ -89,3 +90,15 @@ unsigned long get_tbclk (void)
} }
/* ------------------------------------------------------------------------- */ /* ------------------------------------------------------------------------- */
/*
* Initializes on-chip ethernet controllers.
* to override, implement board_eth_init()
*/
int cpu_eth_init(bd_t *bis)
{
#if defined(CONFIG_MPC8220_FEC)
mpc8220_fec_initialize(bis);
#endif
return 0;
}

View File

@ -56,6 +56,7 @@ int mcdmafec_initialize(bd_t *bis);
int mcffec_initialize(bd_t *bis); int mcffec_initialize(bd_t *bis);
int mpc512x_fec_initialize(bd_t *bis); int mpc512x_fec_initialize(bd_t *bis);
int mpc5xxx_fec_initialize(bd_t *bis); int mpc5xxx_fec_initialize(bd_t *bis);
int mpc8220_fec_initialize(bd_t *bis);
int natsemi_initialize(bd_t *bis); int natsemi_initialize(bd_t *bis);
int npe_initialize(bd_t *bis); int npe_initialize(bd_t *bis);
int ns8382x_initialize(bd_t *bis); int ns8382x_initialize(bd_t *bis);

View File

@ -39,7 +39,6 @@ static int __def_eth_init(bd_t *bis)
int cpu_eth_init(bd_t *bis) __attribute((weak, alias("__def_eth_init"))); int cpu_eth_init(bd_t *bis) __attribute((weak, alias("__def_eth_init")));
int board_eth_init(bd_t *bis) __attribute((weak, alias("__def_eth_init"))); int board_eth_init(bd_t *bis) __attribute((weak, alias("__def_eth_init")));
extern int mpc8220_fec_initialize(bd_t*);
extern int mv6436x_eth_initialize(bd_t *); extern int mv6436x_eth_initialize(bd_t *);
extern int mv6446x_eth_initialize(bd_t *); extern int mv6446x_eth_initialize(bd_t *);
extern int ppc_4xx_eth_initialize(bd_t *); extern int ppc_4xx_eth_initialize(bd_t *);
@ -160,9 +159,6 @@ int eth_initialize(bd_t *bis)
#endif #endif
#ifdef SCC_ENET #ifdef SCC_ENET
scc_initialize(bis); scc_initialize(bis);
#endif
#if defined(CONFIG_MPC8220_FEC)
mpc8220_fec_initialize(bis);
#endif #endif
if (!eth_devices) { if (!eth_devices) {
puts ("No ethernet found.\n"); puts ("No ethernet found.\n");