[U-Boot] [PATCH 08/17] Moved initialization of PCNET Ethernet controller to board_eth_init()
Ben Warren
biggerbadderben at gmail.com
Sun Aug 31 10:46:42 CEST 2008
Affected boards:
PN62
sc520_cdp
Removed initialization of the driver from net/eth.c
Signed-off-by: Ben Warren <biggerbadderben at gmail.com>
---
board/pn62/pn62.c | 6 ++++++
board/sc520_cdp/sc520_cdp.c | 6 ++++++
include/netdev.h | 5 +++++
net/eth.c | 4 ----
4 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/board/pn62/pn62.c b/board/pn62/pn62.c
index d905b29..60fc431 100644
--- a/board/pn62/pn62.c
+++ b/board/pn62/pn62.c
@@ -23,6 +23,7 @@
#include <common.h>
#include <mpc824x.h>
#include <pci.h>
+#include <netdev.h>
#include "pn62.h"
@@ -186,3 +187,8 @@ static int get_mac_address (int id, u8 * mac, char *string, int size)
mac[0], mac[1], mac[2],
mac[3], mac[4], mac[5]);
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/sc520_cdp/sc520_cdp.c b/board/sc520_cdp/sc520_cdp.c
index 8050aa6..f21c730 100644
--- a/board/sc520_cdp/sc520_cdp.c
+++ b/board/sc520_cdp/sc520_cdp.c
@@ -29,6 +29,7 @@
#include <asm/ic/sc520.h>
#include <asm/ic/ali512x.h>
#include <spi.h>
+#include <netdev.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -629,3 +630,8 @@ ssize_t spi_write(uchar *addr, int alen, uchar *buffer, int len)
#endif
return res;
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/include/netdev.h b/include/netdev.h
index 3a51ae4..79d6e4d 100644
--- a/include/netdev.h
+++ b/include/netdev.h
@@ -48,6 +48,7 @@ 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 pcnet_initialize(bd_t *bis);
int rtl8139_initialize(bd_t *bis);
int rtl8169_initialize(bd_t *bis);
int skge_initialize(bd_t *bis);
@@ -62,6 +63,10 @@ int uli526x_initialize(bd_t *bis);
static int pci_eth_init(bd_t *bis)
{
int num = 0;
+
+#ifdef CONFIG_PCNET
+ num += pcnet_initialize(bis);
+#endif
#ifdef CONFIG_NATSEMI
num += natsemi_initialize(bis);
#endif
diff --git a/net/eth.c b/net/eth.c
index 65dd888..f23f27f 100644
--- a/net/eth.c
+++ b/net/eth.c
@@ -55,7 +55,6 @@ extern int mpc512x_fec_initialize(bd_t*);
extern int mpc8220_fec_initialize(bd_t*);
extern int mv6436x_eth_initialize(bd_t *);
extern int mv6446x_eth_initialize(bd_t *);
-extern int pcnet_initialize(bd_t*);
extern int plb2800_eth_initialize(bd_t*);
extern int ppc_4xx_eth_initialize(bd_t *);
extern int scc_initialize(bd_t*);
@@ -227,9 +226,6 @@ int eth_initialize(bd_t *bis)
#ifdef CONFIG_3COM
eth_3com_initialize(bis);
#endif
-#ifdef CONFIG_PCNET
- pcnet_initialize(bis);
-#endif
#ifdef CFG_GT_6426x
gt6426x_eth_initialize(bis);
#endif
--
1.5.4.3
More information about the U-Boot
mailing list