[PATCH] board: ti: am64x: Parse MAC address from board EEPROM

Vignesh Raghavendra vigneshr at ti.com
Mon May 10 20:14:22 CEST 2021


Parse MAC addresses from EEPROM and set them in the env. This is needed
to get MAC address for additional ethernet ports on the EVM.

Signed-off-by: Vignesh Raghavendra <vigneshr at ti.com>
---
 board/ti/am64x/evm.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/board/ti/am64x/evm.c b/board/ti/am64x/evm.c
index a1ffcb929c..35cd9e027c 100644
--- a/board/ti/am64x/evm.c
+++ b/board/ti/am64x/evm.c
@@ -136,8 +136,17 @@ static void setup_serial(void)
 int board_late_init(void)
 {
 	if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT)) {
+		struct ti_am6_eeprom *ep = TI_AM6_EEPROM_DATA;
+
 		setup_board_eeprom_env();
 		setup_serial();
+		/*
+		 * The first MAC address for ethernet a.k.a. ethernet0 comes from
+		 * efuse populated via the am654 gigabit eth switch subsystem driver.
+		 * All the other ones are populated via EEPROM, hence continue with
+		 * an index of 1.
+		 */
+		board_ti_am6_set_ethaddr(1, ep->mac_addr_cnt);
 	}
 
 	return 0;
-- 
2.31.1



More information about the U-Boot mailing list