diff mbox series

mx7dsabresd: Retrieve the second MAC address from fuses

Message ID 20230711215757.647707-1-festevam@gmail.com
State Accepted
Commit cdbef023e2538da12b3ca4a2b8a5b7bd1c3ada02
Delegated to: Stefano Babic
Headers show
Series mx7dsabresd: Retrieve the second MAC address from fuses | expand

Commit Message

Fabio Estevam July 11, 2023, 9:57 p.m. UTC
From: Fabio Estevam <festevam@denx.de>

Currently, a random MAC address is assigned to eth1 in Linux.

Fix this behavor by retrieving the second MAC address from the fuses.

Signed-off-by: Fabio Estevam <festevam@denx.de>
---
 board/freescale/mx7dsabresd/mx7dsabresd.c | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Stefano Babic July 13, 2023, 9:58 a.m. UTC | #1
> From: Fabio Estevam <festevam@denx.de>
> Currently, a random MAC address is assigned to eth1 in Linux.
> Fix this behavor by retrieving the second MAC address from the fuses.
> Signed-off-by: Fabio Estevam <festevam@denx.de>
Applied to u-boot-imx, master, thanks !

Best regards,
Stefano Babic
diff mbox series

Patch

diff --git a/board/freescale/mx7dsabresd/mx7dsabresd.c b/board/freescale/mx7dsabresd/mx7dsabresd.c
index 2777ae13bce0..cff2e6a87171 100644
--- a/board/freescale/mx7dsabresd/mx7dsabresd.c
+++ b/board/freescale/mx7dsabresd/mx7dsabresd.c
@@ -292,6 +292,7 @@  int power_init_board(void)
 int board_late_init(void)
 {
 	struct wdog_regs *wdog = (struct wdog_regs *)WDOG1_BASE_ADDR;
+	unsigned char eth1addr[6];
 
 	imx_iomux_v3_setup_multiple_pads(wdog_pads, ARRAY_SIZE(wdog_pads));
 
@@ -303,6 +304,11 @@  int board_late_init(void)
 	 */
 	clrsetbits_le16(&wdog->wcr, 0, 0x10);
 
+	/* Get the second MAC address */
+	imx_get_mac_from_fuse(1, eth1addr);
+	if (!env_get("eth1addr") && is_valid_ethaddr(eth1addr))
+		eth_env_set_enetaddr("eth1addr", eth1addr);
+
 	return 0;
 }