|
@@ -602,6 +602,21 @@ int board_eth_init(bd_t *bis)
|
|
|
}
|
|
|
|
|
|
#ifdef CONFIG_DRIVER_TI_CPSW
|
|
|
+
|
|
|
+ mac_lo = readl(&cdev->macid1l);
|
|
|
+ mac_hi = readl(&cdev->macid1h);
|
|
|
+ mac_addr[0] = mac_hi & 0xFF;
|
|
|
+ mac_addr[1] = (mac_hi & 0xFF00) >> 8;
|
|
|
+ mac_addr[2] = (mac_hi & 0xFF0000) >> 16;
|
|
|
+ mac_addr[3] = (mac_hi & 0xFF000000) >> 24;
|
|
|
+ mac_addr[4] = mac_lo & 0xFF;
|
|
|
+ mac_addr[5] = (mac_lo & 0xFF00) >> 8;
|
|
|
+
|
|
|
+ if (!getenv("eth1addr")) {
|
|
|
+ if (is_valid_ether_addr(mac_addr))
|
|
|
+ eth_setenv_enetaddr("eth1addr", mac_addr);
|
|
|
+ }
|
|
|
+
|
|
|
if (read_eeprom(&header) < 0)
|
|
|
puts("Could not get board ID.\n");
|
|
|
|