Browse Source

Moved initialization of IXP4XX_NPE Ethernet controller to cpu_eth_init()

Also, removed the driver initialization from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Ben Warren 16 năm trước cách đây
mục cha
commit
cc94074eca
3 tập tin đã thay đổi với 10 bổ sung4 xóa
  1. 9 0
      cpu/ixp/cpu.c
  2. 1 0
      include/netdev.h
  3. 0 4
      net/eth.c

+ 9 - 0
cpu/ixp/cpu.c

@@ -32,6 +32,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <netdev.h>
 #include <asm/arch/ixp425.h>
 
 ulong loops_per_jiffy;
@@ -215,3 +216,11 @@ ulong bootcount_load (void)
 }
 
 #endif /* CONFIG_BOOTCOUNT_LIMIT */
+
+int cpu_eth_init(bd_t *bis)
+{
+#ifdef CONFIG_IXP4XX_NPE
+	npe_initialize(bis);
+#endif
+	return 0;
+}

+ 1 - 0
include/netdev.h

@@ -55,6 +55,7 @@ int mcffec_initialize(bd_t *bis);
 int mpc512x_fec_initialize(bd_t *bis);
 int mpc5xxx_fec_initialize(bd_t *bis);
 int natsemi_initialize(bd_t *bis);
+int npe_initialize(bd_t *bis);
 int ns8382x_initialize(bd_t *bis);
 int pcnet_initialize(bd_t *bis);
 int plb2800_eth_initialize(bd_t *bis);

+ 0 - 4
net/eth.c

@@ -46,7 +46,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 npe_initialize(bd_t *);
 extern int uec_initialize(int);
 
 #ifdef CONFIG_API
@@ -192,9 +191,6 @@ int eth_initialize(bd_t *bis)
 #endif
 #if defined(CONFIG_AU1X00)
 	au1x00_enet_initialize(bis);
-#endif
-#if defined(CONFIG_IXP4XX_NPE)
-	npe_initialize(bis);
 #endif
 	if (!eth_devices) {
 		puts ("No ethernet found.\n");