public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] mvgbe: remove setting of ethaddr within the driver
@ 2011-11-07 22:08 Michael Walle
  2011-11-08  7:18 ` Prafulla Wadaskar
  2011-11-08 13:57 ` Mike Frysinger
  0 siblings, 2 replies; 41+ messages in thread
From: Michael Walle @ 2011-11-07 22:08 UTC (permalink / raw)
  To: u-boot

A network driver should not touch the environment at all. This patch fixes
this behaviour by removing the code for setting a default/randomized MAC
address.

Instead a board should either set CONFIG_ETHADDR, CONFIG_ETH1ADDR etc. or
use some specific code within the board files, eg. if randomization is
needed.

All boards which have CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION set (actually its
only one board, edminiv2) are converted to use CONFIG_ETHADDR. Please check
your boards whether you really need randomization support or the
CONFIG_ETHADDR macro is enough.

Signed-off-by: Michael Walle <michael@walle.cc>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Valentin Longchamp <valentin.longchamp@keymile.com>
Cc: Eric Cooper <ecc@cmu.edu>
Cc: Jason Cooper <u-boot@lakedaemon.net>
Cc: Siddarth Gore <gores@marvell.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Simon Guinot <simon.guinot@sequanux.org>
---
 drivers/net/mvgbe.c        |   23 -----------------------
 include/configs/edminiv2.h |    2 +-
 2 files changed, 1 insertions(+), 24 deletions(-)

diff --git a/drivers/net/mvgbe.c b/drivers/net/mvgbe.c
index c7f7446..21be642 100644
--- a/drivers/net/mvgbe.c
+++ b/drivers/net/mvgbe.c
@@ -647,7 +647,6 @@ int mvgbe_initialize(bd_t *bis)
 	struct mvgbe_device *dmvgbe;
 	struct eth_device *dev;
 	int devnum;
-	char *s;
 	u8 used_ports[MAX_MVGBE_DEVS] = CONFIG_MVGBE_PORTS;
 
 	for (devnum = 0; devnum < MAX_MVGBE_DEVS; devnum++) {
@@ -702,16 +701,13 @@ error1:
 		/* must be less than NAMESIZE (16) */
 		sprintf(dev->name, "egiga%d", devnum);
 
-		/* Extract the MAC address from the environment */
 		switch (devnum) {
 		case 0:
 			dmvgbe->regs = (void *)MVGBE0_BASE;
-			s = "ethaddr";
 			break;
 #if defined(MVGBE1_BASE)
 		case 1:
 			dmvgbe->regs = (void *)MVGBE1_BASE;
-			s = "eth1addr";
 			break;
 #endif
 		default:	/* this should never happen */
@@ -720,25 +716,6 @@ error1:
 			return -1;
 		}
 
-		while (!eth_getenv_enetaddr(s, dev->enetaddr)) {
-			/* Generate Private MAC addr if not set */
-			dev->enetaddr[0] = 0x02;
-			dev->enetaddr[1] = 0x50;
-			dev->enetaddr[2] = 0x43;
-#if defined (CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION)
-			/* Generate fixed lower MAC half using devnum */
-			dev->enetaddr[3] = 0;
-			dev->enetaddr[4] = 0;
-			dev->enetaddr[5] = devnum;
-#else
-			/* Generate random lower MAC half */
-			dev->enetaddr[3] = get_random_hex();
-			dev->enetaddr[4] = get_random_hex();
-			dev->enetaddr[5] = get_random_hex();
-#endif
-			eth_setenv_enetaddr(s, dev->enetaddr);
-		}
-
 		dev->init = (void *)mvgbe_init;
 		dev->halt = (void *)mvgbe_halt;
 		dev->send = (void *)mvgbe_send;
diff --git a/include/configs/edminiv2.h b/include/configs/edminiv2.h
index 88d32b2..2b96cb3 100644
--- a/include/configs/edminiv2.h
+++ b/include/configs/edminiv2.h
@@ -142,7 +142,7 @@
 #ifdef CONFIG_CMD_NET
 #define CONFIG_MVGBE				/* Enable Marvell GbE Driver */
 #define CONFIG_MVGBE_PORTS	{1}		/* enable port 0 only */
-#define CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION	/* don't randomize MAC */
+#define CONFIG_ETH_ADDR 02:50:43:00:00:01
 #define CONFIG_PHY_BASE_ADR	0x8
 #define CONFIG_RESET_PHY_R	/* use reset_phy() to init mv8831116 PHY */
 #define CONFIG_NETCONSOLE	/* include NetConsole support   */
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 41+ messages in thread

end of thread, other threads:[~2011-12-20 21:57 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-07 22:08 [U-Boot] [PATCH] mvgbe: remove setting of ethaddr within the driver Michael Walle
2011-11-08  7:18 ` Prafulla Wadaskar
2011-11-08 13:58   ` Mike Frysinger
2011-11-08 14:10     ` Wolfgang Denk
2011-11-08 13:57 ` Mike Frysinger
2011-11-08 13:45   ` Michael Walle
2011-11-08 14:54     ` Mike Frysinger
2011-11-08 15:17     ` Wolfgang Denk
2011-11-08 17:34       ` Michael Walle
2011-11-08 19:28         ` Wolfgang Denk
2011-11-08 22:30           ` Michael Walle
2011-11-08 22:52             ` Wolfgang Denk
2011-11-08 23:26               ` Michael Walle
2011-11-08 23:38                 ` Wolfgang Denk
2011-11-09  8:31                 ` Michael Walle
2011-11-09 17:34                   ` Michael Walle
2011-11-09 19:27                     ` Wolfgang Denk
2011-11-10  9:15                       ` Michael Walle
2011-11-10 11:06                         ` Simon Guinot
2011-11-10 12:01                           ` Wolfgang Denk
2011-11-10 14:21                             ` Simon Guinot
2011-11-10 15:53                               ` Wolfgang Denk
2011-11-10 16:30                                 ` Valentin Longchamp
2011-11-10 17:00                                   ` Holger Brunck
2011-11-10 17:08                                   ` Mike Frysinger
2011-11-10 17:09                               ` Mike Frysinger
2011-11-10 17:54                                 ` Simon Guinot
2011-11-10 17:46                               ` Michael Walle
2011-11-10 11:44                         ` Wolfgang Denk
2011-11-16 20:15                           ` Michael Walle
2011-11-16 20:26                             ` Wolfgang Denk
2011-11-17  8:58                               ` Prafulla Wadaskar
2011-11-17 10:45                                 ` Wolfgang Denk
2011-11-17 22:52                                 ` [U-Boot] [PATCH v2] " Michael Walle
2011-11-19  3:58                                   ` Mike Frysinger
2011-11-21  4:39                                   ` Prafulla Wadaskar
2011-12-20 21:55                                   ` Wolfgang Denk
2011-12-20 21:57                                   ` Wolfgang Denk
2011-11-08 20:49         ` [U-Boot] [PATCH] " Mike Frysinger
2011-11-08 22:45           ` Michael Walle
2011-11-09  5:36             ` Mike Frysinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox