|
|
|
@ -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){ |
|
|
|
|