summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Warren <biggerbadderben@gmail.com>2008-08-31 20:37:00 -0700
committerBen Warren <biggerbadderben@gmail.com>2008-09-02 21:18:19 -0700
commit10efa024b8ffd9e6aaca63da8bddfdffdc672274 (patch)
tree77af62cc6ff60d614d605a5bdaa5015d4e710c35
parent8ca0b3f99c4fce7a599dcaf92ae095496dc8c8e0 (diff)
downloadu-boot-10efa024b8ffd9e6aaca63da8bddfdffdc672274.tar.gz
u-boot-10efa024b8ffd9e6aaca63da8bddfdffdc672274.tar.bz2
u-boot-10efa024b8ffd9e6aaca63da8bddfdffdc672274.zip
Moved initialization of EEPRO100 Ethernet controller to board_eth_init()
Affected boards: db64360 db64460 katmai taihu taishan yucca cpc45 cpu87 eXalion elppc debris kvme080 mpc8315erdb integratorap ixdp425 oxc pm826 pm828 pm854 pm856 ppmc7xx sc3 sc520_spunk sorcery tqm8272 tqm85xx utx8245 Removed initialization of the driver from net/eth.c Also, wrapped contents of pci_eth_init() by CONFIG_PCI. Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
-rw-r--r--board/Marvell/db64360/db64360.c6
-rw-r--r--board/Marvell/db64460/db64460.c6
-rw-r--r--board/amcc/katmai/katmai.c6
-rw-r--r--board/amcc/taihu/taihu.c6
-rw-r--r--board/amcc/taishan/taishan.c6
-rw-r--r--board/amcc/yucca/yucca.c6
-rw-r--r--board/cpc45/cpc45.c6
-rw-r--r--board/cpu87/cpu87.c6
-rw-r--r--board/eXalion/eXalion.c6
-rw-r--r--board/eltec/elppc/elppc.c6
-rw-r--r--board/etin/debris/debris.c6
-rw-r--r--board/etin/kvme080/kvme080.c6
-rw-r--r--board/freescale/mpc8315erdb/mpc8315erdb.c7
-rw-r--r--board/integratorap/integratorap.c7
-rw-r--r--board/ixdp425/ixdp425.c6
-rw-r--r--board/oxc/oxc.c6
-rw-r--r--board/pm826/pm826.c6
-rw-r--r--board/pm828/pm828.c6
-rw-r--r--board/pm854/pm854.c1
-rw-r--r--board/pm856/pm856.c7
-rw-r--r--board/ppmc7xx/ppmc7xx.c6
-rw-r--r--board/sc3/sc3.c6
-rw-r--r--board/sc520_spunk/sc520_spunk.c6
-rw-r--r--board/sorcery/sorcery.c6
-rw-r--r--board/tqc/tqm8272/tqm8272.c6
-rw-r--r--board/tqc/tqm85xx/tqm85xx.c7
-rw-r--r--board/utx8245/utx8245.c6
-rw-r--r--drivers/net/eepro100.c1
-rw-r--r--include/netdev.h8
-rw-r--r--net/eth.c4
30 files changed, 170 insertions, 4 deletions
diff --git a/board/Marvell/db64360/db64360.c b/board/Marvell/db64360/db64360.c
index 2a810a618b..c03d03d387 100644
--- a/board/Marvell/db64360/db64360.c
+++ b/board/Marvell/db64360/db64360.c
@@ -33,6 +33,7 @@
#include "../include/pci.h"
#include "../include/mv_gen_reg.h"
#include <net.h>
+#include <netdev.h>
#include "eth.h"
#include "mpsc.h"
@@ -929,3 +930,8 @@ void board_prebootm_init ()
icache_disable ();
dcache_disable ();
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/Marvell/db64460/db64460.c b/board/Marvell/db64460/db64460.c
index 1ae898d1ee..8a05cd2098 100644
--- a/board/Marvell/db64460/db64460.c
+++ b/board/Marvell/db64460/db64460.c
@@ -33,6 +33,7 @@
#include "../include/pci.h"
#include "../include/mv_gen_reg.h"
#include <net.h>
+#include <netdev.h>
#include "eth.h"
#include "mpsc.h"
@@ -929,3 +930,8 @@ void board_prebootm_init ()
icache_disable ();
dcache_disable ();
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/amcc/katmai/katmai.c b/board/amcc/katmai/katmai.c
index 08d89d7791..172b5811e3 100644
--- a/board/amcc/katmai/katmai.c
+++ b/board/amcc/katmai/katmai.c
@@ -27,6 +27,7 @@
#include <i2c.h>
#include <libfdt.h>
#include <fdt_support.h>
+#include <netdev.h>
#include <asm/processor.h>
#include <asm/io.h>
#include <asm/gpio.h>
@@ -447,3 +448,8 @@ int post_hotkeys_pressed(void)
return (ctrlc());
}
#endif
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/amcc/taihu/taihu.c b/board/amcc/taihu/taihu.c
index 254e3eb837..266f2601c5 100644
--- a/board/amcc/taihu/taihu.c
+++ b/board/amcc/taihu/taihu.c
@@ -28,6 +28,7 @@
#include <asm/processor.h>
#include <asm/io.h>
#include <spi.h>
+#include <netdev.h>
#include <asm/gpio.h>
extern int lcd_init(void);
@@ -200,3 +201,8 @@ int pci_pre_init(struct pci_controller *hose)
return 1;
}
#endif /* CONFIG_PCI */
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/amcc/taishan/taishan.c b/board/amcc/taishan/taishan.c
index fdd82e7cca..cd432cb98b 100644
--- a/board/amcc/taishan/taishan.c
+++ b/board/amcc/taishan/taishan.c
@@ -27,6 +27,7 @@
#include <asm/processor.h>
#include <spd_sdram.h>
#include <ppc4xx_enet.h>
+#include <netdev.h>
#ifdef CFG_INIT_SHOW_RESET_REG
void show_reset_reg(void);
@@ -311,3 +312,8 @@ int post_hotkeys_pressed(void)
return (ctrlc());
}
#endif
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/amcc/yucca/yucca.c b/board/amcc/yucca/yucca.c
index 84c3938d7d..e0c12687d3 100644
--- a/board/amcc/yucca/yucca.c
+++ b/board/amcc/yucca/yucca.c
@@ -28,6 +28,7 @@
#include <common.h>
#include <ppc4xx.h>
#include <i2c.h>
+#include <netdev.h>
#include <asm/processor.h>
#include <asm/io.h>
#include <asm/4xx_pcie.h>
@@ -952,3 +953,8 @@ int onboard_pci_arbiter_selected(int core_pci)
#endif
return (BOARD_OPTION_NOT_SELECTED);
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/cpc45/cpc45.c b/board/cpc45/cpc45.c
index f4e867ce7d..16ead75def 100644
--- a/board/cpc45/cpc45.c
+++ b/board/cpc45/cpc45.c
@@ -27,6 +27,7 @@
#include <asm/io.h>
#include <pci.h>
#include <i2c.h>
+#include <netdev.h>
int sysControlDisplay(int digit, uchar ascii_code);
extern void Plx9030Init(void);
@@ -273,3 +274,8 @@ void ide_led (uchar led, uchar status)
writeb(val, BCSR_BASE + 0x04);
}
# endif
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/cpu87/cpu87.c b/board/cpu87/cpu87.c
index f5a5de5d82..454987cff2 100644
--- a/board/cpu87/cpu87.c
+++ b/board/cpu87/cpu87.c
@@ -26,6 +26,7 @@
#include <mpc8260.h>
#include "cpu87.h"
#include <pci.h>
+#include <netdev.h>
/*
* I/O Port configuration table
@@ -339,3 +340,8 @@ void pci_init_board(void)
pci_mpc8250_init(&hose);
}
#endif
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/eXalion/eXalion.c b/board/eXalion/eXalion.c
index 385b498d09..c5dff24f05 100644
--- a/board/eXalion/eXalion.c
+++ b/board/eXalion/eXalion.c
@@ -30,6 +30,7 @@
#include <asm/io.h>
#include <pci.h>
#include <ide.h>
+#include <netdev.h>
#include "piix_pci.h"
#include "eXalion.h"
@@ -290,3 +291,8 @@ void pci_init_board (void)
{
pci_mpc824x_init (&hose);
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/eltec/elppc/elppc.c b/board/eltec/elppc/elppc.c
index 1b70605e28..d3ac2784ac 100644
--- a/board/eltec/elppc/elppc.c
+++ b/board/eltec/elppc/elppc.c
@@ -25,6 +25,7 @@
#include <command.h>
#include <mpc106.h>
#include <video_fb.h>
+#include <netdev.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -172,3 +173,8 @@ void video_get_info_str (int line_number, char *info)
return;
}
#endif
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/etin/debris/debris.c b/board/etin/debris/debris.c
index 763760fd23..3fcf78ecfd 100644
--- a/board/etin/debris/debris.c
+++ b/board/etin/debris/debris.c
@@ -25,6 +25,7 @@
#include <mpc824x.h>
#include <pci.h>
#include <i2c.h>
+#include <netdev.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -177,3 +178,8 @@ int misc_init_r(void)
(char*)&gd->bd->bi_enetaddr[0], 6);
return 0;
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/etin/kvme080/kvme080.c b/board/etin/kvme080/kvme080.c
index bfd6854c5d..be6924d15a 100644
--- a/board/etin/kvme080/kvme080.c
+++ b/board/etin/kvme080/kvme080.c
@@ -25,6 +25,7 @@
#include <mpc824x.h>
#include <pci.h>
#include <i2c.h>
+#include <netdev.h>
#include <asm/processor.h>
int checkboard(void)
@@ -191,3 +192,8 @@ void nvram_write(long dest, const void *src, size_t count)
asm volatile("sync");
}
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/freescale/mpc8315erdb/mpc8315erdb.c b/board/freescale/mpc8315erdb/mpc8315erdb.c
index 3eecee2519..0330218769 100644
--- a/board/freescale/mpc8315erdb/mpc8315erdb.c
+++ b/board/freescale/mpc8315erdb/mpc8315erdb.c
@@ -29,6 +29,7 @@
#include <fdt_support.h>
#include <pci.h>
#include <mpc83xx.h>
+#include <netdev.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -165,3 +166,9 @@ void ft_board_setup(void *blob, bd_t *bd)
fdt_tsec1_fixup(blob, bd);
}
#endif
+
+int board_eth_init(bd_t *bis)
+{
+ cpu_eth_init(bis); /* Initialize TSECs first */
+ return pci_eth_init(bis);
+}
diff --git a/board/integratorap/integratorap.c b/board/integratorap/integratorap.c
index e659907567..687c486c82 100644
--- a/board/integratorap/integratorap.c
+++ b/board/integratorap/integratorap.c
@@ -39,6 +39,8 @@
#include <pci.h>
#endif
+#include <netdev.h>
+
DECLARE_GLOBAL_DATA_PTR;
void flash__init (void);
@@ -647,3 +649,8 @@ ulong get_tbclk (void)
{
return CFG_HZ_CLOCK/div_clock;
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/ixdp425/ixdp425.c b/board/ixdp425/ixdp425.c
index e0d763780e..b379c7535f 100644
--- a/board/ixdp425/ixdp425.c
+++ b/board/ixdp425/ixdp425.c
@@ -31,6 +31,7 @@
#include <common.h>
#include <command.h>
#include <malloc.h>
+#include <netdev.h>
#include <asm/arch/ixp425.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -118,3 +119,8 @@ void pci_init_board(void)
pci_ixp_init(&hose);
}
#endif
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/oxc/oxc.c b/board/oxc/oxc.c
index b61d399512..eb7eeb8c28 100644
--- a/board/oxc/oxc.c
+++ b/board/oxc/oxc.c
@@ -25,6 +25,7 @@
#include <mpc824x.h>
#include <pci.h>
#include <i2c.h>
+#include <netdev.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -215,3 +216,8 @@ int misc_init_r (void)
#endif
return (0);
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/pm826/pm826.c b/board/pm826/pm826.c
index 7ee3ab65c0..d8b0929cf4 100644
--- a/board/pm826/pm826.c
+++ b/board/pm826/pm826.c
@@ -25,6 +25,7 @@
#include <ioports.h>
#include <mpc8260.h>
#include <pci.h>
+#include <netdev.h>
/*
* I/O Port configuration table
@@ -328,3 +329,8 @@ void pci_init_board(void)
pci_mpc8250_init(&hose);
}
#endif
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/pm828/pm828.c b/board/pm828/pm828.c
index 6038e9758d..b163d5b35d 100644
--- a/board/pm828/pm828.c
+++ b/board/pm828/pm828.c
@@ -25,6 +25,7 @@
#include <ioports.h>
#include <mpc8260.h>
#include <pci.h>
+#include <netdev.h>
/*
* I/O Port configuration table
@@ -361,3 +362,8 @@ void pci_init_board(void)
pci_mpc8250_init(&hose);
}
#endif
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/pm854/pm854.c b/board/pm854/pm854.c
index f366814618..90523bda53 100644
--- a/board/pm854/pm854.c
+++ b/board/pm854/pm854.c
@@ -293,5 +293,6 @@ pci_init_board(void)
int board_eth_init(bd_t *bis)
{
+ cpu_eth_init(bis); /* Intialize TSECs first */
return pci_eth_init(bis);
}
diff --git a/board/pm856/pm856.c b/board/pm856/pm856.c
index bd4c0651ae..ee33286aca 100644
--- a/board/pm856/pm856.c
+++ b/board/pm856/pm856.c
@@ -34,6 +34,7 @@
#include <ioports.h>
#include <spd_sdram.h>
#include <miiphy.h>
+#include <netdev.h>
#if defined(CONFIG_DDR_ECC)
extern void ddr_enable_ecc(unsigned int dram_size);
@@ -444,3 +445,9 @@ pci_init_board(void)
pci_mpc85xx_init(&hose);
#endif /* CONFIG_PCI */
}
+
+int board_eth_init(bd_t *bis)
+{
+ cpu_eth_init(bis); /* Intialize TSECs first */
+ return pci_eth_init(bis);
+}
diff --git a/board/ppmc7xx/ppmc7xx.c b/board/ppmc7xx/ppmc7xx.c
index 061e01ec4f..9c87c1078c 100644
--- a/board/ppmc7xx/ppmc7xx.c
+++ b/board/ppmc7xx/ppmc7xx.c
@@ -10,6 +10,7 @@
#include <common.h>
#include <command.h>
+#include <netdev.h>
/* Define some MPC107 (memory controller) registers */
@@ -102,3 +103,8 @@ void do_reset( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[] )
/* Should never get here */
while(1);
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/sc3/sc3.c b/board/sc3/sc3.c
index 3d1a6542dc..6c82fe7e99 100644
--- a/board/sc3/sc3.c
+++ b/board/sc3/sc3.c
@@ -37,6 +37,7 @@
#include <pci.h>
#include <i2c.h>
#include <malloc.h>
+#include <netdev.h>
#undef writel
#undef writeb
@@ -779,3 +780,8 @@ void pci_init_board(void)
hose.config_table = pci_solidcard3_config_table;
pci_405gp_init(&hose);
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/sc520_spunk/sc520_spunk.c b/board/sc520_spunk/sc520_spunk.c
index 038d479953..0b11caaae2 100644
--- a/board/sc520_spunk/sc520_spunk.c
+++ b/board/sc520_spunk/sc520_spunk.c
@@ -25,6 +25,7 @@
#include <common.h>
#include <pci.h>
#include <ssi.h>
+#include <netdev.h>
#include <asm/io.h>
#include <asm/pci.h>
#include <asm/ic/sc520.h>
@@ -676,3 +677,8 @@ ssize_t spi_write(uchar *addr, int alen, uchar *buffer, int len)
spi_eeprom_write(1, offset, buffer, len) :
mw_eeprom_write(1, offset, buffer, len);
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/sorcery/sorcery.c b/board/sorcery/sorcery.c
index 2b789d4741..e4fb1465fa 100644
--- a/board/sorcery/sorcery.c
+++ b/board/sorcery/sorcery.c
@@ -26,6 +26,7 @@
#include <asm/processor.h>
#include <asm/mmu.h>
#include <pci.h>
+#include <netdev.h>
phys_size_t initdram (int board_type)
{
@@ -58,3 +59,8 @@ void pci_init_board (void)
pci_mpc8220_init (&hose);
#endif /* CONFIG_PCI */
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/tqc/tqm8272/tqm8272.c b/board/tqc/tqm8272/tqm8272.c
index a0ec254ced..3a2376c3f9 100644
--- a/board/tqc/tqm8272/tqm8272.c
+++ b/board/tqc/tqm8272/tqm8272.c
@@ -26,6 +26,7 @@
#include <mpc8260.h>
#include <command.h>
+#include <netdev.h>
#ifdef CONFIG_PCI
#include <pci.h>
#include <asm/m8260_pci.h>
@@ -1226,3 +1227,8 @@ void pci_init_board(void)
pci_mpc8250_init(&hose);
}
#endif
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/board/tqc/tqm85xx/tqm85xx.c b/board/tqc/tqm85xx/tqm85xx.c
index ae3c2456fb..0e5bc2f730 100644
--- a/board/tqc/tqm85xx/tqm85xx.c
+++ b/board/tqc/tqm85xx/tqm85xx.c
@@ -42,6 +42,7 @@
#include <flash.h>
#include <libfdt.h>
#include <fdt_support.h>
+#include <netdev.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -743,3 +744,9 @@ int board_early_init_r (void)
return (0);
}
#endif /* CONFIG_BOARD_EARLY_INIT_R */
+
+int board_eth_init(bd_t *bis)
+{
+ cpu_eth_init(bis); /* Intialize TSECs first */
+ return pci_eth_init(bis);
+}
diff --git a/board/utx8245/utx8245.c b/board/utx8245/utx8245.c
index e2a961a3a3..e7ca669c14 100644
--- a/board/utx8245/utx8245.c
+++ b/board/utx8245/utx8245.c
@@ -32,6 +32,7 @@
#include <asm/io.h>
#include <asm/mmu.h>
#include <pci.h>
+#include <netdev.h>
#define SAVE_SZ 32
@@ -127,3 +128,8 @@ void pci_init_board (void)
icache_enable();
}
+
+int board_eth_init(bd_t *bis)
+{
+ return pci_eth_init(bis);
+}
diff --git a/drivers/net/eepro100.c b/drivers/net/eepro100.c
index 9de0fb5e46..d6539c01aa 100644
--- a/drivers/net/eepro100.c
+++ b/drivers/net/eepro100.c
@@ -24,6 +24,7 @@
#include <common.h>
#include <malloc.h>
#include <net.h>
+#include <netdev.h>
#include <asm/io.h>
#include <pci.h>
#include <miiphy.h>
diff --git a/include/netdev.h b/include/netdev.h
index d8d1209dff..8b181f77e1 100644
--- a/include/netdev.h
+++ b/include/netdev.h
@@ -44,6 +44,7 @@ int cpu_eth_init(bd_t *bis);
int bfin_EMAC_initialize(bd_t *bis);
int dc21x4x_initialize(bd_t *bis);
int e1000_initialize(bd_t *bis);
+int eepro100_initialize(bd_t *bis);
int eth_3com_initialize (bd_t * bis);
int greth_initialize(bd_t *bis);
void gt6426x_eth_initialize(bd_t *bis);
@@ -71,6 +72,11 @@ static inline int pci_eth_init(bd_t *bis)
{
int num = 0;
+#ifdef CONFIG_PCI
+
+#ifdef CONFIG_EEPRO100
+ num += eepro100_initialize(bis);
+#endif
#ifdef CONFIG_TULIP
num += dc21x4x_initialize(bis);
#endif
@@ -95,6 +101,8 @@ static inline int pci_eth_init(bd_t *bis)
#if defined(CONFIG_ULI526)
num += uli526x_initialize(bis);
#endif
+
+#endif /* CONFIG_PCI */
return num;
}
diff --git a/net/eth.c b/net/eth.c
index ab37bc233a..432dd60bdc 100644
--- a/net/eth.c
+++ b/net/eth.c
@@ -40,7 +40,6 @@ 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 au1x00_enet_initialize(bd_t*);
-extern int eepro100_initialize(bd_t*);
extern int fec_initialize(bd_t*);
extern int mpc8220_fec_initialize(bd_t*);
extern int mv6436x_eth_initialize(bd_t *);
@@ -191,9 +190,6 @@ int eth_initialize(bd_t *bis)
#if defined(CONFIG_IXP4XX_NPE)
npe_initialize(bis);
#endif
-#ifdef CONFIG_EEPRO100
- eepro100_initialize(bis);
-#endif
if (!eth_devices) {
puts ("No ethernet found.\n");
show_boot_progress (-64);