summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Warren <biggerbadderben@gmail.com>2008-10-22 23:32:48 -0700
committerBen Warren <biggerbadderben@gmail.com>2008-11-09 21:38:03 -0800
commit0e8454e990385a58f708c2fc26d31ac041c7a6c5 (patch)
treecfb32d9c3976df9cdd12c9c35a6ba497dfe74f04
parent3456a148276d5494b53ee40242efb6462d163504 (diff)
downloadu-boot-0e8454e990385a58f708c2fc26d31ac041c7a6c5.tar.gz
u-boot-0e8454e990385a58f708c2fc26d31ac041c7a6c5.tar.bz2
u-boot-0e8454e990385a58f708c2fc26d31ac041c7a6c5.zip
Moved initialization of QE Ethernet controller to cpu_eth_init()
Removed initialization of the driver from net/eth.c Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
-rw-r--r--cpu/mpc83xx/cpu.c20
-rw-r--r--cpu/mpc85xx/cpu.c18
-rw-r--r--include/netdev.h1
-rw-r--r--net/eth.c19
4 files changed, 38 insertions, 20 deletions
diff --git a/cpu/mpc83xx/cpu.c b/cpu/mpc83xx/cpu.c
index 5e885ab43c..587fca323b 100644
--- a/cpu/mpc83xx/cpu.c
+++ b/cpu/mpc83xx/cpu.c
@@ -33,6 +33,7 @@
#include <asm/processor.h>
#include <libfdt.h>
#include <tsec.h>
+#include <netdev.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -361,9 +362,26 @@ int dma_xfer(void *dest, u32 count, void *src)
*/
int cpu_eth_init(bd_t *bis)
{
+#if defined(CONFIG_UEC_ETH1)
+ uec_initialize(0);
+#endif
+#if defined(CONFIG_UEC_ETH2)
+ uec_initialize(1);
+#endif
+#if defined(CONFIG_UEC_ETH3)
+ uec_initialize(2);
+#endif
+#if defined(CONFIG_UEC_ETH4)
+ uec_initialize(3);
+#endif
+#if defined(CONFIG_UEC_ETH5)
+ uec_initialize(4);
+#endif
+#if defined(CONFIG_UEC_ETH6)
+ uec_initialize(5);
+#endif
#if defined(CONFIG_TSEC_ENET)
tsec_standard_init(bis);
#endif
-
return 0;
}
diff --git a/cpu/mpc85xx/cpu.c b/cpu/mpc85xx/cpu.c
index fc6bd2d213..943602f923 100644
--- a/cpu/mpc85xx/cpu.c
+++ b/cpu/mpc85xx/cpu.c
@@ -387,6 +387,24 @@ int cpu_eth_init(bd_t *bis)
#if defined(CONFIG_ETHER_ON_FCC)
fec_initialize(bis);
#endif
+#if defined(CONFIG_UEC_ETH1)
+ uec_initialize(0);
+#endif
+#if defined(CONFIG_UEC_ETH2)
+ uec_initialize(1);
+#endif
+#if defined(CONFIG_UEC_ETH3)
+ uec_initialize(2);
+#endif
+#if defined(CONFIG_UEC_ETH4)
+ uec_initialize(3);
+#endif
+#if defined(CONFIG_UEC_ETH5)
+ uec_initialize(4);
+#endif
+#if defined(CONFIG_UEC_ETH6)
+ uec_initialize(5);
+#endif
#if defined(CONFIG_TSEC_ENET) || defined(CONFIG_MPC85XX_FEC)
tsec_standard_init(bis);
#endif
diff --git a/include/netdev.h b/include/netdev.h
index 0d1b0d5170..3b11961c8b 100644
--- a/include/netdev.h
+++ b/include/netdev.h
@@ -65,6 +65,7 @@ int rtl8139_initialize(bd_t *bis);
int rtl8169_initialize(bd_t *bis);
int skge_initialize(bd_t *bis);
int tsi108_eth_initialize(bd_t *bis);
+int uec_initialize(int index);
int uli526x_initialize(bd_t *bis);
/* Boards with PCI network controllers can call this from their board_eth_init()
diff --git a/net/eth.c b/net/eth.c
index 6cf53f4a4c..3793dd7cb8 100644
--- a/net/eth.c
+++ b/net/eth.c
@@ -44,7 +44,6 @@ extern int mv6436x_eth_initialize(bd_t *);
extern int mv6446x_eth_initialize(bd_t *);
extern int ppc_4xx_eth_initialize(bd_t *);
extern int scc_initialize(bd_t*);
-extern int uec_initialize(int);
#ifdef CONFIG_API
extern void (*push_packet)(volatile void *, int);
@@ -165,24 +164,6 @@ int eth_initialize(bd_t *bis)
#if defined(CONFIG_MPC8220_FEC)
mpc8220_fec_initialize(bis);
#endif
-#if defined(CONFIG_UEC_ETH1)
- uec_initialize(0);
-#endif
-#if defined(CONFIG_UEC_ETH2)
- uec_initialize(1);
-#endif
-#if defined(CONFIG_UEC_ETH3)
- uec_initialize(2);
-#endif
-#if defined(CONFIG_UEC_ETH4)
- uec_initialize(3);
-#endif
-#if defined(CONFIG_UEC_ETH5)
- uec_initialize(4);
-#endif
-#if defined(CONFIG_UEC_ETH6)
- uec_initialize(5);
-#endif
if (!eth_devices) {
puts ("No ethernet found.\n");
show_boot_progress (-64);