
From: Nagabhushana Netagunte nagabhushana.netagunte@ti.com
The AM18xx EVM contains MAC address in I2C EEPROM compared da850/omap-l138 Logic PD EVM which maintains in SPI flash. So this patch tries to read MAC address from I2C EEPROM, in failure case reads from SPI flash assuming board to be da850/omap-l138 Logic PDS EVM.
Signed-off-by: Manjunathappa, Prakash prakash.pm@ti.com Signed-off-by: Nagabhushana Netagunte nagabhushana.netagunte@ti.com --- board/davinci/da8xxevm/da850evm.c | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/board/davinci/da8xxevm/da850evm.c b/board/davinci/da8xxevm/da850evm.c index d99f1a0..fd05703 100644 --- a/board/davinci/da8xxevm/da850evm.c +++ b/board/davinci/da8xxevm/da850evm.c @@ -489,10 +489,16 @@ int misc_init_r(void) printf("ARM Clock : %d Hz\n", clk_get(DAVINCI_ARM_CLKID));
if (getenv("ethaddr") == NULL) { - /* Set Ethernet MAC address from EEPROM */ - ret = get_mac_addr(addr); - if (ret != 0) - return -EINVAL; + /* Read Ethernet MAC address from EEPROM */ + if (dvevm_read_mac_address(addr)) { + /* Set Ethernet MAC address from EEPROM */ + davinci_sync_env_enetaddr(addr); + } else { + /* Set Ethernet MAC address from SPI flash */ + ret = get_mac_addr(addr); + if (ret != 0) + return -EINVAL; + }
if (is_multicast_ether_addr(addr) || is_zero_ether_addr(addr)) { printf("Invalid MAC address read.\n");