From: Ben Warren Date: Thu, 23 Oct 2008 06:47:51 +0000 (-0700) Subject: Moved initialization of MPC8220 FEC to cpu_eth_init() X-Git-Tag: v2009.01-rc1~79 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=a9bec96d6359ac9f90a852962bf3040cad9e0256;p=u-boot Moved initialization of MPC8220 FEC to cpu_eth_init() Removed initialization of the driver from net/eth.c Signed-off-by: Ben Warren --- diff --git a/board/sorcery/sorcery.c b/board/sorcery/sorcery.c index 3e1bd6f0cf..90d4298020 100644 --- a/board/sorcery/sorcery.c +++ b/board/sorcery/sorcery.c @@ -62,5 +62,7 @@ void pci_init_board (void) int board_eth_init(bd_t *bis) { + /* Initialize built-in FEC first */ + cpu_eth_init(bis); return pci_eth_init(bis); } diff --git a/cpu/mpc8220/cpu.c b/cpu/mpc8220/cpu.c index 5b3fdd32c1..563cfe0536 100644 --- a/cpu/mpc8220/cpu.c +++ b/cpu/mpc8220/cpu.c @@ -29,6 +29,7 @@ #include #include #include +#include #include 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; +} diff --git a/include/netdev.h b/include/netdev.h index 3b11961c8b..55183e87a1 100644 --- a/include/netdev.h +++ b/include/netdev.h @@ -56,6 +56,7 @@ int mcdmafec_initialize(bd_t *bis); int mcffec_initialize(bd_t *bis); int mpc512x_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 npe_initialize(bd_t *bis); int ns8382x_initialize(bd_t *bis); diff --git a/net/eth.c b/net/eth.c index 3793dd7cb8..d5431639ae 100644 --- a/net/eth.c +++ b/net/eth.c @@ -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 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 mv6446x_eth_initialize(bd_t *); extern int ppc_4xx_eth_initialize(bd_t *); @@ -160,9 +159,6 @@ int eth_initialize(bd_t *bis) #endif #ifdef SCC_ENET scc_initialize(bis); -#endif -#if defined(CONFIG_MPC8220_FEC) - mpc8220_fec_initialize(bis); #endif if (!eth_devices) { puts ("No ethernet found.\n");