summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2012-04-04 18:53:41 +0000
committerJoe Hershberger <joe.hershberger@ni.com>2012-05-15 17:32:33 -0500
commitde30122bb58fee7b0f94bcfabab595b6ad757336 (patch)
treee109b8799a2fe97e49424bec56cbe448154d1dd4
parent50a47d0523e8efebe912bef539a77ffd42116451 (diff)
downloadu-boot-imx-de30122bb58fee7b0f94bcfabab595b6ad757336.zip
u-boot-imx-de30122bb58fee7b0f94bcfabab595b6ad757336.tar.gz
u-boot-imx-de30122bb58fee7b0f94bcfabab595b6ad757336.tar.bz2
net: move bootfile init into eth_initialize
All arches init this the same way, so move the logic into the core net code to avoid duplicating it everywhere else. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
-rw-r--r--arch/arm/lib/board.c8
-rw-r--r--arch/avr32/lib/board.c3
-rw-r--r--arch/blackfin/lib/board.c7
-rw-r--r--arch/m68k/lib/board.c5
-rw-r--r--arch/microblaze/lib/board.c4
-rw-r--r--arch/mips/lib/board.c8
-rw-r--r--arch/nds32/lib/board.c6
-rw-r--r--arch/powerpc/lib/board.c8
-rw-r--r--arch/sh/lib/board.c11
-rw-r--r--arch/sparc/lib/board.c5
-rw-r--r--arch/x86/include/asm/init_helpers.h1
-rw-r--r--arch/x86/lib/board.c3
-rw-r--r--arch/x86/lib/init_helpers.c12
-rw-r--r--net/eth.c10
14 files changed, 13 insertions, 78 deletions
diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c
index 66dfb13..024646c 100644
--- a/arch/arm/lib/board.c
+++ b/arch/arm/lib/board.c
@@ -592,14 +592,6 @@ void board_init_r(gd_t *id, ulong dest_addr)
/* Initialize from environment */
load_addr = getenv_ulong("loadaddr", 16, load_addr);
-#if defined(CONFIG_CMD_NET)
- {
- char *s = getenv("bootfile");
-
- if (s != NULL)
- copy_filename(BootFile, s, sizeof(BootFile));
- }
-#endif
#ifdef CONFIG_BOARD_LATE_INIT
board_late_init();
diff --git a/arch/avr32/lib/board.c b/arch/avr32/lib/board.c
index 3c2d0fb..b390a6c 100644
--- a/arch/avr32/lib/board.c
+++ b/arch/avr32/lib/board.c
@@ -327,9 +327,6 @@ void board_init_r(gd_t *new_gd, ulong dest_addr)
bb_miiphy_init();
#endif
#if defined(CONFIG_CMD_NET)
- s = getenv("bootfile");
- if (s)
- copy_filename(BootFile, s, sizeof(BootFile));
puts("Net: ");
eth_initialize(gd->bd);
#endif
diff --git a/arch/blackfin/lib/board.c b/arch/blackfin/lib/board.c
index 373b934..c380d27 100644
--- a/arch/blackfin/lib/board.c
+++ b/arch/blackfin/lib/board.c
@@ -319,13 +319,8 @@ static void board_net_init_r(bd_t *bd)
bb_miiphy_init();
#endif
#ifdef CONFIG_CMD_NET
- char *s;
-
- if ((s = getenv("bootfile")) != NULL)
- copy_filename(BootFile, s, sizeof(BootFile));
-
printf("Net: ");
- eth_initialize(gd->bd);
+ eth_initialize(bd);
#endif
}
diff --git a/arch/m68k/lib/board.c b/arch/m68k/lib/board.c
index ffd91a8..65a8595 100644
--- a/arch/m68k/lib/board.c
+++ b/arch/m68k/lib/board.c
@@ -559,11 +559,6 @@ void board_init_r (gd_t *id, ulong dest_addr)
/* Initialize from environment */
load_addr = getenv_ulong("loadaddr", 16, load_addr);
-#if defined(CONFIG_CMD_NET)
- if ((s = getenv ("bootfile")) != NULL) {
- copy_filename (BootFile, s, sizeof (BootFile));
- }
-#endif
WATCHDOG_RESET ();
diff --git a/arch/microblaze/lib/board.c b/arch/microblaze/lib/board.c
index beb406d..f3679d5 100644
--- a/arch/microblaze/lib/board.c
+++ b/arch/microblaze/lib/board.c
@@ -182,10 +182,6 @@ void board_init (void)
uchar enetaddr[6];
eth_getenv_enetaddr("ethaddr", enetaddr);
printf("MAC: %pM\n", enetaddr);
-
- s = getenv("bootfile");
- if (s != NULL)
- copy_filename(BootFile, s, sizeof(BootFile));
#endif
/* main_loop */
diff --git a/arch/mips/lib/board.c b/arch/mips/lib/board.c
index 84e55f2..59a8001 100644
--- a/arch/mips/lib/board.c
+++ b/arch/mips/lib/board.c
@@ -339,14 +339,6 @@ void board_init_r(gd_t *id, ulong dest_addr)
/* Initialize from environment */
load_addr = getenv_ulong("loadaddr", 16, load_addr);
-#if defined(CONFIG_CMD_NET)
- {
- char *s = getenv("bootfile");
-
- if (s != NULL)
- copy_filename(BootFile, s, sizeof(BootFile));
- }
-#endif
#ifdef CONFIG_CMD_SPI
puts("SPI: ");
diff --git a/arch/nds32/lib/board.c b/arch/nds32/lib/board.c
index 50ea30d..7121313 100644
--- a/arch/nds32/lib/board.c
+++ b/arch/nds32/lib/board.c
@@ -399,12 +399,6 @@ void board_init_r(gd_t *id, ulong dest_addr)
/* Initialize from environment */
load_addr = getenv_ulong("loadaddr", 16, load_addr);
-#if defined(CONFIG_CMD_NET)
- s = getenv("bootfile");
- if (s != NULL)
- copy_filename(BootFile, s, sizeof(BootFile));
-#endif
-
#ifdef BOARD_LATE_INIT
board_late_init();
#endif
diff --git a/arch/powerpc/lib/board.c b/arch/powerpc/lib/board.c
index 7daffce..fea310e 100644
--- a/arch/powerpc/lib/board.c
+++ b/arch/powerpc/lib/board.c
@@ -932,14 +932,6 @@ void board_init_r(gd_t *id, ulong dest_addr)
/* Initialize from environment */
load_addr = getenv_ulong("loadaddr", 16, load_addr);
-#if defined(CONFIG_CMD_NET)
- {
- char *s = getenv("bootfile");
-
- if (s != NULL)
- copy_filename(BootFile, s, sizeof(BootFile));
- }
-#endif
WATCHDOG_RESET();
diff --git a/arch/sh/lib/board.c b/arch/sh/lib/board.c
index d71cca4..34d7881 100644
--- a/arch/sh/lib/board.c
+++ b/arch/sh/lib/board.c
@@ -190,15 +190,8 @@ void sh_generic_init(void)
bb_miiphy_init();
#endif
#if defined(CONFIG_CMD_NET)
- {
- char *s;
- puts("Net: ");
- eth_initialize(gd->bd);
-
- s = getenv("bootfile");
- if (s != NULL)
- copy_filename(BootFile, s, sizeof(BootFile));
- }
+ puts("Net: ");
+ eth_initialize(gd->bd);
#endif /* CONFIG_CMD_NET */
while (1) {
diff --git a/arch/sparc/lib/board.c b/arch/sparc/lib/board.c
index 9faf88b..7e48775 100644
--- a/arch/sparc/lib/board.c
+++ b/arch/sparc/lib/board.c
@@ -357,11 +357,6 @@ void board_init_f(ulong bootflag)
/* Initialize from environment */
load_addr = getenv_ulong("loadaddr", 16, load_addr);
-#if defined(CONFIG_CMD_NET)
- if ((s = getenv("bootfile")) != NULL) {
- copy_filename(BootFile, s, sizeof(BootFile));
- }
-#endif /* CONFIG_CMD_NET */
WATCHDOG_RESET();
diff --git a/arch/x86/include/asm/init_helpers.h b/arch/x86/include/asm/init_helpers.h
index 8d2e0ba..8afb443 100644
--- a/arch/x86/include/asm/init_helpers.h
+++ b/arch/x86/include/asm/init_helpers.h
@@ -37,7 +37,6 @@ int mem_malloc_init_r(void);
int init_bd_struct_r(void);
int flash_init_r(void);
int status_led_set_r(void);
-int set_bootfile_r(void);
int set_load_addr_r(void);
#endif /* !_INIT_HELPERS_H_ */
diff --git a/arch/x86/lib/board.c b/arch/x86/lib/board.c
index 15b4ae2..90cf7fc 100644
--- a/arch/x86/lib/board.c
+++ b/arch/x86/lib/board.c
@@ -177,9 +177,6 @@ init_fnc_t *init_sequence_r[] = {
status_led_set_r,
#endif
set_load_addr_r,
-#if defined(CONFIG_CMD_NET)
- set_bootfile_r,
-#endif
#if defined(CONFIG_CMD_IDE)
ide_init_r,
#endif
diff --git a/arch/x86/lib/init_helpers.c b/arch/x86/lib/init_helpers.c
index a8741d0..9ec34ff 100644
--- a/arch/x86/lib/init_helpers.c
+++ b/arch/x86/lib/init_helpers.c
@@ -188,18 +188,6 @@ int status_led_set_r(void)
}
#endif
-int set_bootfile_r(void)
-{
- char *s;
-
- s = getenv("bootfile");
-
- if (s != NULL)
- copy_filename(BootFile, s, sizeof(BootFile));
-
- return 0;
-}
-
int set_load_addr_r(void)
{
/* Initialize from environment */
diff --git a/net/eth.c b/net/eth.c
index 35e0de6..d9a6430 100644
--- a/net/eth.c
+++ b/net/eth.c
@@ -245,6 +245,14 @@ int eth_unregister(struct eth_device *dev)
return 0;
}
+static void eth_env_init(bd_t *bis)
+{
+ const char *s;
+
+ if ((s = getenv("bootfile")) != NULL)
+ copy_filename(BootFile, s, sizeof(BootFile));
+}
+
int eth_initialize(bd_t *bis)
{
int num_devices = 0;
@@ -260,6 +268,8 @@ int eth_initialize(bd_t *bis)
phy_init();
#endif
+ eth_env_init(bis);
+
/*
* If board-specific initialization exists, call it.
* If not, call a CPU-specific one