drivers/net/ethernet/mediatek/mtk_star_emac.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
The platform_ variant calls arch_get_platform_mac_address which is only
implemented under SPARC.
Switch to the of variant as of functions are used in the surrounding
code and to get EPROBE_DEFER support in order to handle NVMEM MAC
address specifications.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
drivers/net/ethernet/mediatek/mtk_star_emac.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/mediatek/mtk_star_emac.c b/drivers/net/ethernet/mediatek/mtk_star_emac.c
index b83886a41121..774ecc98ebe1 100644
--- a/drivers/net/ethernet/mediatek/mtk_star_emac.c
+++ b/drivers/net/ethernet/mediatek/mtk_star_emac.c
@@ -1640,7 +1640,9 @@ static int mtk_star_probe(struct platform_device *pdev)
if (ret)
return ret;
- ret = platform_get_ethdev_address(dev, ndev);
+ ret = of_get_ethdev_address(of_node, ndev);
+ if (ret == -EPROBE_DEFER)
+ return ret;
if (ret || !is_valid_ether_addr(ndev->dev_addr))
eth_hw_addr_random(ndev);
--
2.54.0
On Sun, May 03, 2026 at 08:10:19PM -0700, Rosen Penev wrote:
> The platform_ variant calls arch_get_platform_mac_address which is only
> implemented under SPARC.
platform_get_ethdev_address() calls eth_platform_get_mac_address().
int eth_platform_get_mac_address(struct device *dev, u8 *mac_addr)
{
unsigned char *addr;
int ret;
ret = of_get_mac_address(dev->of_node, mac_addr);
if (!ret)
return 0;
addr = arch_get_platform_mac_address();
if (!addr)
return -ENODEV;
ether_addr_copy(mac_addr, addr);
return 0;
}
> Switch to the of variant as of functions are used in the surrounding
> code and to get EPROBE_DEFER support in order to handle NVMEM MAC
> address specifications.
So there is a call to of_get_mac_address(). And it calls
arch_get_platform_mac_address() as well. If you only call
of_get_mac_address(), don't you break SPARC?
If EPROBE_DEFER is what you are trying to get, please change
eth_platform_get_mac_address() to actually return it, not break SPARC.
Andrew
---
pw-bot: cr
© 2016 - 2026 Red Hat, Inc.