summaryrefslogtreecommitdiff
path: root/drivers/net/e1000.c
diff options
context:
space:
mode:
authorMarkus Klotzbuecher <mk@denx.de>2008-08-04 17:18:14 (GMT)
committerMarkus Klotzbuecher <mk@denx.de>2008-08-04 17:18:14 (GMT)
commit0f2b5d8ec0969a5b0992f5031bf3c61117a41d59 (patch)
treefc05bf5db93e5a9c1712d24a5efdff94685063c2 /drivers/net/e1000.c
parentab06bddb04ed4be50a8f9ad5f94fa23953a734e3 (diff)
parent81091f58f0c58ecd26c5b05de2ae20ca6cdb521c (diff)
downloadu-boot-0f2b5d8ec0969a5b0992f5031bf3c61117a41d59.tar.xz
Merge branch 'master' of git://www.denx.de/git/u-boot
Diffstat (limited to 'drivers/net/e1000.c')
-rw-r--r--drivers/net/e1000.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c
index 060b518..c8b4e98 100644
--- a/drivers/net/e1000.c
+++ b/drivers/net/e1000.c
@@ -513,9 +513,11 @@ e1000_read_mac_addr(struct eth_device *nic)
nic->enetaddr[5] += 1;
}
#ifdef CONFIG_E1000_FALLBACK_MAC
- if ( *(u32*)(nic->enetaddr) == 0 || *(u32*)(nic->enetaddr) == ~0 )
- for ( i=0; i < NODE_ADDRESS_SIZE; i++ )
- nic->enetaddr[i] = (CONFIG_E1000_FALLBACK_MAC >> (8*(5-i))) & 0xff;
+ if ( *(u32*)(nic->enetaddr) == 0 || *(u32*)(nic->enetaddr) == ~0 ) {
+ unsigned char fb_mac[NODE_ADDRESS_SIZE] = CONFIG_E1000_FALLBACK_MAC;
+
+ memcpy (nic->enetaddr, fb_mac, NODE_ADDRESS_SIZE);
+ }
#endif
#else
/*
@@ -531,10 +533,9 @@ e1000_read_mac_addr(struct eth_device *nic)
DEBUGFUNC();
s = getenv ("ethaddr");
- if (s == NULL){
+ if (s == NULL) {
return -E1000_ERR_EEPROM;
- }
- else{
+ } else {
for(ii = 0; ii < 6; ii++) {
nic->enetaddr[ii] = s ? simple_strtoul (s, &e, 16) : 0;
if (s){