From 6bacfa6a8e9b264d37c1262fc1f3e948d1feab81 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Wed, 11 Feb 2009 19:18:41 -0500 Subject: cpu/: get mac address from environment The environment is the canonical storage location of the mac address, so we're killing off the global data location and moving everything to querying the env directly. The cpus that get converted here: at91rm9200 mpc512x mpc5xxx mpc8260 mpc8xx ppc4xx Signed-off-by: Mike Frysinger CC: Ben Warren CC: John Rigby CC: Stefan Roese --- cpu/ppc4xx/cpu_init.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'cpu/ppc4xx') diff --git a/cpu/ppc4xx/cpu_init.c b/cpu/ppc4xx/cpu_init.c index b5d81f2..a8f589a 100644 --- a/cpu/ppc4xx/cpu_init.c +++ b/cpu/ppc4xx/cpu_init.c @@ -324,6 +324,7 @@ int cpu_init_r (void) #if defined(CONFIG_405GP) || defined(CONFIG_405EP) bd_t *bd = gd->bd; unsigned long reg; + uchar enetaddr[6]; #if defined(CONFIG_405GP) uint pvr = get_pvr(); #endif @@ -332,19 +333,20 @@ int cpu_init_r (void) * Write Ethernetaddress into on-chip register */ reg = 0x00000000; - reg |= bd->bi_enetaddr[0]; /* set high address */ + eth_getenv_enetaddr("ethaddr", enetaddr); + reg |= enetaddr[0]; /* set high address */ reg = reg << 8; - reg |= bd->bi_enetaddr[1]; + reg |= enetaddr[1]; out32 (EMAC_IAH, reg); reg = 0x00000000; - reg |= bd->bi_enetaddr[2]; /* set low address */ + reg |= enetaddr[2]; /* set low address */ reg = reg << 8; - reg |= bd->bi_enetaddr[3]; + reg |= enetaddr[3]; reg = reg << 8; - reg |= bd->bi_enetaddr[4]; + reg |= enetaddr[4]; reg = reg << 8; - reg |= bd->bi_enetaddr[5]; + reg |= enetaddr[5]; out32 (EMAC_IAL, reg); #if defined(CONFIG_405GP) -- cgit v1.1