]> www.infradead.org Git - users/jedix/linux-maple.git/commit
net: ethernet: ti: am65-cpsw: handle -EPROBE_DEFER
authorMichael Walle <mwalle@kernel.org>
Mon, 14 Apr 2025 08:43:36 +0000 (10:43 +0200)
committerJakub Kicinski <kuba@kernel.org>
Thu, 17 Apr 2025 00:51:33 +0000 (17:51 -0700)
commit09737cb80b8686ffca4ed1805fee745d5c85604d
tree466dbc7a0f864d354d5164019c2eada2ac48f39a
parent1a377f142e6e2faff51f965ed40633f70579ffe6
net: ethernet: ti: am65-cpsw: handle -EPROBE_DEFER

of_get_mac_address() might fetch the MAC address from NVMEM and that
driver might not have been loaded. In that case, -EPROBE_DEFER is
returned. Right now, this will trigger an immediate fallback to
am65_cpsw_am654_get_efuse_macid() possibly resulting in a random MAC
address although the MAC address is stored in the referenced NVMEM.

Fix it by handling the -EPROBE_DEFER return code correctly. This also
means that the creation of the MDIO device has to be moved to a later
stage as -EPROBE_DEFER must not be returned after child devices are
created.

Signed-off-by: Michael Walle <mwalle@kernel.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20250414084336.4017237-3-mwalle@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/ti/am65-cpsw-nuss.c